#include <SatOrbit.hpp>
Inheritance diagram for SatOrbit:


Definition at line 56 of file SatOrbit.hpp.
Public Types | |
| enum | GravityModel { GM_JGM3, GM_EGM96 } |
| Valid gravity models. More... | |
| enum | AtmosphericModel { AM_HarrisPriester, AM_MSISE00, AM_CIRA } |
| Valid atmospheric models. More... | |
Public Member Functions | |
| SatOrbit () | |
| Default constructor. | |
| virtual | ~SatOrbit () |
| Default destructor. | |
| virtual Vector< double > | getDerivatives (const double &t, const Vector< double > &y) |
| Compute the derivatives. | |
| SatOrbit & | reset () |
| Restore the default setting. | |
| SatOrbit & | setRefEpoch (UTCTime utc) |
| set reference epoch | |
| UTCTime | getRefEpoch () const |
| get reference epoch | |
| SatOrbit & | setSpacecraftData (std::string name="sc-test01", const double &mass=1000.0, const double &area=20.0, const double &areaSRP=20.0, const double &Cr=1.0, const double &Cd=2.2) |
| set spacecraft physical parameters | |
| SatOrbit & | setSpaceData (double dayF107=150.0, double aveF107=150.0, double dayKp=3.0) |
| set space data | |
| SatOrbit & | enableGeopotential (SatOrbit::GravityModel model=SatOrbit::GM_JGM3, const int &maxDegree=1, const int &maxOrder=1, const bool &solidTide=false, const bool &oceanTide=false, const bool &poleTide=false) |
| SatOrbit & | enableThirdBodyPerturbation (const bool &bsun=false, const bool &bmoon=false) |
| SatOrbit & | enableAtmosphericDrag (SatOrbit::AtmosphericModel model=SatOrbit::AM_HarrisPriester, const bool &bdrag=false) |
| SatOrbit & | enableSolarRadiationPressure (bool bsrp=false) |
| SatOrbit & | enableRelativeEffect (const bool &brel=false) |
| void | setForceModelType (std::set< ForceModel::ForceModelType > fmt) |
| For POD , and it's will be improved later. | |
Protected Member Functions | |
| virtual void | init () |
| void | createFMObjects (FMCData &fmc) |
| void | deleteFMObjects (FMCData &fmc) |
| void | addForce (ForceModel *pForce) |
| Adds a generic force to the list. | |
Protected Attributes | |
| UTCTime | utc0 |
| Reference epoch. | |
| Spacecraft | sc |
| Spacecraft object. | |
| EarthBody | earthBody |
| Earth Body. | |
| FMCData | forceConfig |
| Object holding force model consiguration. | |
| bool | fmlPrepared |
| Flag indicate if the ForceModelList has been prepared 'forceConfig' can't be change when 'fmlPrepared' is true. | |
| ForceModelList | forceList |
| Force Model List. | |
|
|
Valid atmospheric models.
Definition at line 67 of file SatOrbit.hpp. |
|
|
Valid gravity models.
Definition at line 60 of file SatOrbit.hpp. |
|
|
Default constructor.
Definition at line 145 of file SatOrbit.hpp. |
|
|
Default destructor.
Definition at line 149 of file SatOrbit.hpp. |
|
|
Adds a generic force to the list.
Definition at line 224 of file SatOrbit.hpp. |
|
|
|
Definition at line 261 of file SatOrbit.cpp. References SatOrbit::FMCData::atmModel, SatOrbit::fmlPrepared, SatOrbit::FMCData::grvModel, SatOrbit::FMCData::pAtmDrag, SatOrbit::FMCData::pGeoEarth, SatOrbit::FMCData::pGeoMoon, SatOrbit::FMCData::pGeoSun, SatOrbit::FMCData::pRelEffect, and SatOrbit::FMCData::pSolarPressure. Referenced by SatOrbit::createFMObjects(). |
|
||||||||||||
|
Definition at line 138 of file SatOrbit.cpp. References SatOrbit::FMCData::atmDrag, SatOrbit::FMCData::atmModel, and SatOrbit::forceConfig. Referenced by SatOrbit::init(). |
|
||||||||||||||||||||||||||||
|
Definition at line 99 of file SatOrbit.cpp. References SatOrbit::forceConfig, SatOrbit::FMCData::geoEarth, SatOrbit::FMCData::grvDegree, SatOrbit::FMCData::grvModel, SatOrbit::FMCData::grvOrder, SatOrbit::FMCData::oceanTide, SatOrbit::FMCData::poleTide, and SatOrbit::FMCData::solidTide. Referenced by SatOrbit::init(), and SatOrbitPropagator::test(). |
|
|
Definition at line 164 of file SatOrbit.cpp. References SatOrbit::forceConfig, and SatOrbit::FMCData::relEffect. Referenced by SatOrbit::init(). |
|
|
Definition at line 152 of file SatOrbit.cpp. References SatOrbit::forceConfig, and SatOrbit::FMCData::solarPressure. Referenced by SatOrbit::init(). |
|
||||||||||||
|
Definition at line 124 of file SatOrbit.cpp. References SatOrbit::forceConfig, SatOrbit::FMCData::geoMoon, and SatOrbit::FMCData::geoSun. Referenced by SatOrbit::init(). |
|
||||||||||||
|
Compute the derivatives. t time or the independent variable. y the required data.
Implements EquationOfMotion. Reimplemented in LEOSatOrbit, and NavSatOrbit. Definition at line 41 of file SatOrbit.cpp. References SatOrbit::createFMObjects(), SatOrbit::earthBody, SatOrbit::fmlPrepared, SatOrbit::forceConfig, SatOrbit::forceList, ForceModelList::getDerivatives(), SatOrbit::sc, and Spacecraft::setStateVector(). |
|
|
get reference epoch
Definition at line 165 of file SatOrbit.hpp. Referenced by SatOrbitPropagator::getCurTime(), and SatOrbitPropagator::writeToFile(). |
|
|
|
Restore the default setting.
Definition at line 157 of file SatOrbit.hpp. |
|
|
For POD , and it's will be improved later.
Definition at line 209 of file SatOrbit.hpp. Referenced by SatOrbitPropagator::SatOrbitPropagator(). |
|
|
set reference epoch
Definition at line 161 of file SatOrbit.hpp. |
|
||||||||||||||||||||||||||||
|
set spacecraft physical parameters
Definition at line 70 of file SatOrbit.cpp. References SatOrbit::sc, Spacecraft::setDragArea(), Spacecraft::setDragCoeff(), Spacecraft::setDryMass(), Spacecraft::setName(), Spacecraft::setReflectCoeff(), and Spacecraft::setSRPArea(). Referenced by SatOrbit::init(). |
|
||||||||||||||||
|
set space data
Definition at line 88 of file SatOrbit.cpp. References SatOrbit::FMCData::averageF107, SatOrbit::FMCData::dailyF107, SatOrbit::FMCData::dailyKp, and SatOrbit::forceConfig. |
|
|
Earth Body.
Definition at line 234 of file SatOrbit.hpp. Referenced by SatOrbit::getDerivatives(). |
|
|
Flag indicate if the ForceModelList has been prepared 'forceConfig' can't be change when 'fmlPrepared' is true.
Definition at line 241 of file SatOrbit.hpp. Referenced by SatOrbit::createFMObjects(), SatOrbit::deleteFMObjects(), and SatOrbit::getDerivatives(). |
|
|
Object holding force model consiguration.
Definition at line 237 of file SatOrbit.hpp. Referenced by SatOrbit::enableAtmosphericDrag(), SatOrbit::enableGeopotential(), SatOrbit::enableRelativeEffect(), SatOrbit::enableSolarRadiationPressure(), SatOrbit::enableThirdBodyPerturbation(), SatOrbit::getDerivatives(), and SatOrbit::setSpaceData(). |
|
|
Force Model List.
Definition at line 244 of file SatOrbit.hpp. Referenced by SatOrbit::createFMObjects(), and SatOrbit::getDerivatives(). |
|
|
Spacecraft object.
Definition at line 231 of file SatOrbit.hpp. Referenced by SatOrbit::getDerivatives(), and SatOrbit::setSpacecraftData(). |
|
|
Reference epoch.
Definition at line 228 of file SatOrbit.hpp. |
1.3.9.1