Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations cowski on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

I'm looking for algorithms to determine an orbit.

Status
Not open for further replies.

wolverine

New member
Jun 26, 1999
1
Given a point and a velocity vector, I want to be able to determine the orbit. What I really need is a polar coordinate formula for an ellipse, and a realationship between time and position in orbit.<br>
<br>
I'm trying to write a basic program to determine orbits from launch profiles. I've already written a preliminary version, but when it calculates the position in time incrementals, it loses a few miles of altitude each orbit (ie a 298miX196mi initial orbit decays in days, rather than years).<br>
<br>
Tony
 
Replies continue below

Recommended for you

Hey,<br>
I am not sure if I can be of a lot of assistance, but there are two books I can direct you to:<br>
Introduction to Space Dynamics by Willian Tyrell Thomson and Space Propulsion Analysis and Design byR. Humble, G. Henry, and W. Larson. Let me know how your project turns out and if these books helped.
 
Wolverine,<br>
<br>
I too have made attempts at calculating orbits using time steps. I did so using a finite differencing routine and they decayed much faster than they should have. <br>
<br>
You might consider using a Runge-Kutta approach. The vector summ of forces = derivative with respect to time of momentum. Momentum is mass multiplied by the vecor velocity. The vector summ of forces consists of the spacecraft tangential and radial gravitational forces and any added propulsion force.<br>
<br>
Good luck,<br>
<br>
MikeVV
 
Do you want to determine the orbit analytically or numerically?<br><br>Analytically, you can simply take your spacecraft state (i.e. pos and vel) and convert this to keplerian elements. However, you say that you're interested in plotting this as a function of time...<br><br>so, I would probably propagate the orbit numerically:<br>&nbsp;<br>You have an initial position and velocity vector (state)<br>If your orbit is near circular (low eccentricity) then I would suggest a 4th order Runge-Kutta scheme as the best &quot;bang for your buck&quot;<br><br>Your derivatives of your state would be as follows:<br>for position at any time step, you have the velocity<br>for velocity at any time step, you can find an equation for the acceleration (i.e. acceleration = gravitational parameter times position vector, divided by the magnitude of position cubed). Obviously, this doesn't take Earth oblateness or atmospheric drag into account, but adding in J2 and drag is pretty trivial.<br><br>I recommend the Astrodynamics book by David Vallado as a good reference book.<br><br>If you need a Matlab script that can do this, I have several coded up. Good luck...
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor