Gravity Engine 2 3.0
Loading...
Searching...
No Matches
GravityEngine2.GEManeuverStruct Struct Reference

Struct of types that are Burst/Job compatible to describe maneuvers for the IJob propagators. More...

Public Member Functions

 GEManeuverStruct (GEManeuver m, int id, GBUnits.GEScaler geScaler, int centerIndex=-1, double timeOffsetGE=0)
 
 GEManeuverStruct (GEManeuverStruct m, int newIndex, int newCenterIndex)
 Generate a maneuver with a new body index. Used when there is a shuffle in an integrator array because cannot assign to a field in IJob struct.
 
double3 ApplyManeuver (double3 v, double3 centerV)
 
string LogString ()
 

Public Attributes

int centerIndex
 
double3 dVActual
 
int id
 the index into the internal integrator reference (coupled to bodyType)
 
ManeuverInfo info
 descriptive enum to indicate how maneuver was generated (strings are not allowed in IJob code)
 
double t
 relative time of maneuver at time of planning. Used during maneuver sequence construction.
 
ManeuverType type
 
int uniqueId
 
double3 velocityParam
 velocity vector. Usage depnds on the type of the manuever. In some case only the first entry in the vector is used.
 

Detailed Description

Struct of types that are Burst/Job compatible to describe maneuvers for the IJob propagators.

Constructor & Destructor Documentation

◆ GEManeuverStruct()

GravityEngine2.GEManeuverStruct.GEManeuverStruct ( GEManeuverStruct m,
int newIndex,
int newCenterIndex )

Generate a maneuver with a new body index. Used when there is a shuffle in an integrator array because cannot assign to a field in IJob struct.

Parameters
m
newIndex

Member Data Documentation

◆ centerIndex

int GravityEngine2.GEManeuverStruct.centerIndex

RelativeTo information. Vel change can be relative to some center body (which may be in motion) This is used to avoid keeping track of the overall motion of the center when e.g. doing an orbit transfer around it.


The documentation for this struct was generated from the following file: