Gravity Engine 12.0
Unity Asset for Gravity
|
Hohmann transfer or rendezvous between any two circular orbits. Handles diffences in radius, inclination and RAAN (Omega). More...
Public Member Functions | |
HohmannGeneral (OrbitData fromOrbit, OrbitData toOrbit, bool rendezvous) | |
void | CircularInclinationAndAN (OrbitData fromOrbit, OrbitData toOrbit, bool rendezvous) |
Public Member Functions inherited from OrbitTransfer | |
OrbitTransfer (OrbitData fromOrbit, OrbitData toOrbit) | |
OrbitTransfer (OrbitData fromOrbit) | |
float | GetDeltaV () |
float | GetDeltaT () |
List< Maneuver > | GetManeuvers () |
override string | ToString () |
Static Public Member Functions | |
static void | FindClosestNode (OrbitData fromData, OrbitData toData, ref double u_initial, ref double u_final, ref double phase_to_node) |
Determine the closest node of the fromOrbit with respect to the to orbit i.e. the point at which the planes of the orbits cross. The result is the phase from the current position in the from orbit to the nearest node. | |
Additional Inherited Members | |
Protected Attributes inherited from OrbitTransfer | |
string | name = "base (error)" |
Name of the transfer (will be over-riden by implementing class. | |
List< Maneuver > | maneuvers |
Maneuvers required to execute the transfer. | |
float | deltaV |
total cost of the manuevers | |
float | deltaT |
OrbitData | fromOrbit |
OrbitData | toOrbit |
NBody | centerBody |
Hohmann transfer or rendezvous between any two circular orbits. Handles diffences in radius, inclination and RAAN (Omega).
Rendezvous in general requires an intermediate transfer orbit to adjust the phasing of the chasing ship in order that it arrives at the common node with the correct phase relationship for rendezvous. This intermediate orbit is "free" in dV (since the velocity will help it get to the target).
The general case follows Vallado Algorithm 46 (p368) with additional code to handle the case of outer orbit to inner orbit.
Coplanar transfer/rdvs is handled by the same code that was used in the original HohmannXfer class.
|
static |
Determine the closest node of the fromOrbit with respect to the to orbit i.e. the point at which the planes of the orbits cross. The result is the phase from the current position in the from orbit to the nearest node.
fromData | Orbit data of fromOrbit, including phase |
toData | Orbit data of to orbit (including phase) |
u_initial | absolute phase angle of nearest node in fromOrbit (radians) |
u_final | absolute phase angle to nearest node in toOrbit (radians) |
phase_to_node | Phase delta from current position in from orbit to node (radians) |