|
WSF
|
#include <WsfNORAD_OrbitalPropagator.hpp>


Public Member Functions | |
| WsfNORAD_OrbitalPropagator () | |
| WsfNORAD_OrbitalPropagator (const WsfNORAD_OrbitalPropagator &aSrc) | |
| WsfNORAD_OrbitalPropagator & | operator= (const WsfNORAD_OrbitalPropagator &)=delete |
| ~WsfNORAD_OrbitalPropagator () override=default | |
| WsfNORAD_OrbitalPropagator * | Clone () const override |
| Public Member Functions inherited from WsfNonClassicalOrbitalPropagator | |
| WsfNonClassicalOrbitalPropagator (std::unique_ptr< ut::OrbitalState > aInitialOrbitalStatePtr) | |
| WsfNonClassicalOrbitalPropagator (const WsfNonClassicalOrbitalPropagator &aOther)=default | |
| ~WsfNonClassicalOrbitalPropagator () override=default | |
| WsfNonClassicalOrbitalPropagator & | operator= (const WsfNonClassicalOrbitalPropagator &aOther)=delete |
| std::unique_ptr< UtOrbitalPropagatorBase > | GetManeuveringPropagator () const override |
| UtLambertProblem::Result | SolveLambertProblem (const ut::CentralBody &aCentralBody, const UtVec3d &aLocationECI_1, const UtVec3d &aLocationECI_2, double aDt, bool aShortWay, bool aAllowHitsEarth, double aConvergenceTolerance=1.0e-12) const override |
| Public Member Functions inherited from wsf::space::OrbitalPropagator | |
| OrbitalPropagator (std::unique_ptr< ut::OrbitalState > aInitialOrbitalState) | |
| OrbitalPropagator (const OrbitalPropagator &aOther) | |
| ~OrbitalPropagator () override=default | |
| OrbitalPropagator & | operator= (const OrbitalPropagator &aOther)=delete |
| WsfSpaceMoverBase * | GetSpaceMover () const |
| virtual void | SetSpaceMover (WsfSpaceMoverBase *aMoverPtr) |
Static Public Member Functions | |
| static WsfOrbitalPropagatorTypes::FactoryPtr | ObjectFactory (WsfScenario &aScenario) |
Common framework methods. | |
| enum | EphemerisType { cSGP = 0 , cSGP4 = 1 , cSGP8 = 2 , cSDP4 = 3 , cSDP8 = 4 } |
| bool | Initialize (const UtCalendar &aInitialTime) override |
| int | GetEphemerisType () const |
| double | GetTimeToNorthernIntersection (double aTargetRAAN, double aTargetInclination, unsigned aOrbitNum=0) const override |
| double | GetTimeToSouthernIntersection (double aTargetRAAN, double aTargetInclination, unsigned aOrbitNum=0) const override |
| bool | SetInitialOrbitalState (const ut::OrbitalState &aState) override |
| void | Propagate (const UtCalendar &aTime) override |
| void | UpdateOrbitalState () override |
| bool | HyperbolicPropagationAllowed () const override |
| void | PostPropagate () override |
WsfNORAD_OrbitalPropagator is a specialization of WsfMover for earth-orbiting satellites.
This mover incorporates the SG* and SD* propagators for "near-earth" (orbits > 6.4 revs / day) and "deep-space" (orbits < 6.4 revs / day) satellites. These are published in the "SpaceTrack 3" report: http://celestrak.com/NORAD/documentation/spacetrk.pdf. They take into account perturbation effects from the sun and moon. This code is based upon a public domain c-based adaptation of the algorithms. This adaptation can be found at http://www.projectpluto.com/sat_code.htm .
| WsfNORAD_OrbitalPropagator::WsfNORAD_OrbitalPropagator | ( | ) |
References WsfNonClassicalOrbitalPropagator::WsfNonClassicalOrbitalPropagator().
Referenced by Clone(), operator=(), and WsfNORAD_OrbitalPropagator().
| WsfNORAD_OrbitalPropagator::WsfNORAD_OrbitalPropagator | ( | const WsfNORAD_OrbitalPropagator & | aSrc | ) |
|
overridedefault |
|
inlineoverride |
References WsfNORAD_OrbitalPropagator().
|
inline |
Get the ephemeris type. The return value corresponds with the above enumeration for ephemeris type.
|
override |
|
override |
|
inlineoverrideprotected |
|
override |
References ok.
|
static |
Referenced by WsfSpaceExtension::AddedToScenario().
|
delete |
References WsfNORAD_OrbitalPropagator().
|
overrideprotected |
|
overrideprotected |
|
override |
|
overrideprotected |