Second order(?) ODE + Runge-Kutta method question

Click For Summary

Homework Help Overview

The discussion revolves around a second-order ordinary differential equation (ODE) related to the motion of a rocket, which experiences changing mass due to fuel consumption and drag forces. Participants are exploring how to set up and solve the equation using numerical methods, specifically the Runge-Kutta method.

Discussion Character

  • Exploratory, Conceptual clarification, Mathematical reasoning, Problem interpretation

Approaches and Questions Raised

  • Participants discuss breaking the second-order equation into two first-order equations by defining velocity as the derivative of height. There are questions about the correct formulation of the differential equation, particularly regarding the inclusion of thrust and exhaust velocity. Some participants express uncertainty about how to derive a velocity function from the given information.

Discussion Status

Some guidance has been offered on how to approach the problem by reformulating the second-order ODE into a system of first-order equations. However, there is still a lack of consensus on the correct formulation of the differential equation, with multiple interpretations being explored regarding the thrust and drag components.

Contextual Notes

Participants note that the problem is part of a programming assignment, and the values for thrust, fuel mass, and drag coefficient are intended to be inputs. There is also mention of the original poster's unfamiliarity with differential equations, which adds to the complexity of the discussion.

cscott0001
Messages
6
Reaction score
1

Homework Statement


When a rocket launches, it burns fuel at a constant rate of (kg/s) as it accelerates, maintaining a constant thrust of T. The weight of the rocket, including fuel is 1200 kg (including 900 kg of fuel). So, the mass of the rocket changes as it accelerates:

m(t) = 1200 - m_ft

We’ll assume that the rocket experiences a drag force proportional to the square of velocity. Using Newton’s Second Law of Motion, we can write down the equation of the height of the rocket y(t) as a function of time, t. Namely,

m(t)(\frac{d^2y}{dt^2})=T-m(t)g-c_d(\frac{dy}{dt})^2

Assume an initial height of y(0)=0 and an initial velocity of dy/dt(0)=0. g = 9.81. Return a vector of t-values and a vector of y values.

It's a programming assignment, so the values for T, mf, and cd, along with the range of t to solve for, are meant to be inputs.

I have never taken a differential equations class, so I'm having difficulties figuring out what I have and where to go from here to get the the point where I can use numerical methods to solve for position. I believe I have an equation for acceleration and mass, and I need to find the positions. I'm given an initial velocity of a velocity function, but I am not given a velocity function, am I to find that first?

Homework Equations



Besides what's given above, I have the Runga-Kutta equations.

The Attempt at a Solution



I haven't gotten far in any attempts, mostly because I'm completely stuck in the differential equation step, of which I'm not familiar with any formulas or processes. My only attempt involved setting the second equation to a function of (t,y) for (t,dy/dt) and used RK to find dy/dt, but that went to negative infinity immediately.
 
Physics news on Phys.org
It has been awhile since I tackled one of these, but the idea is to break the second order equation into 2 equations which are linked.
Let velocity v = y' where the prime (' mark) indicates derivative with respect to time. Now when you see y'' (or d2y/dt2), replace that with v', since acceleration is the dv/dt.
Then you use your Runge Kutta formula to numerically evaluate for v(t) and y(t), in steps, getting the next y and v values for each time step. Then keep going.
 
That makes sense, I'll start with this. Thank you!
 
  • Like
Likes   Reactions: scottdave
cscott0001 said:

Homework Statement


When a rocket launches, it burns fuel at a constant rate of (kg/s) as it accelerates, maintaining a constant thrust of T. The weight of the rocket, including fuel is 1200 kg (including 900 kg of fuel). So, the mass of the rocket changes as it accelerates:

m(t) = 1200 - m_ft

We’ll assume that the rocket experiences a drag force proportional to the square of velocity. Using Newton’s Second Law of Motion, we can write down the equation of the height of the rocket y(t) as a function of time, t. Namely,

m(t)(\frac{d^2y}{dt^2})=T-m(t)g-c_d(\frac{dy}{dt})^2

Your differential equation is incorrect: you need to include a thrust term, related to the rate of backward momentum transfer of the exhaust gasses (causing a forward push on the rocket body itself, via Newton's third law). That requires a value for the velocity of the exhaust gasses relative to the rocket engine's exhaust nozzle. Nowadays, some of that data is unclassified and so is publicly available for various types of rocket engines; see, eg., http://earthweb.ess.washington.edu/space/ess472/Lecture_RocketDynamics.pdf ,
which contains a small table of such values on page 5. I do not much like the treatment of rocket dynamics in that article, but much prefer
https://ocw.mit.edu/courses/aeronau...fall-2009/lecture-notes/MIT16_07F09_Lec14.pdf .
That article has on pages 8-9 an example that includes worked examples that use some data on exhaust velocities.
 
Ray Vickson said:
Your differential equation is incorrect: you need to include a thrust term, related to the rate of backward momentum transfer of the exhaust gasses (causing a forward push on the rocket body itself, via Newton's third law). That requires a value for the velocity of the exhaust gasses ...
I agree with what you're saying. It looks like the T value is intended to be thrust. From what I gathered in the problem statement, it seems that this is more of an exercise to take a formula and get it into a workable computer program, rather than actual thrust rocket values. The problem states that T will be input at the beginning of running the program, and it runs for a specific timeframe, so I guess they are just inputting values to see how the program responds.
 

Similar threads

  • · Replies 14 ·
Replies
14
Views
3K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 14 ·
Replies
14
Views
4K
  • · Replies 1 ·
Replies
1
Views
4K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 3 ·
Replies
3
Views
5K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
Replies
7
Views
2K