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


Definition at line 51 of file SphericalHarmonicGravity.hpp.
Public Member Functions | |
| SphericalHarmonicGravity (int n, int m) | |
| Constructor. | |
| virtual | ~SphericalHarmonicGravity () |
| Default destructor. | |
| virtual void | initialize ()=0 |
| We declare a pure virtual function. | |
| Vector< double > | gravity (Vector< double > r, Matrix< double > E) |
| Computes the acceleration due to gravity in m/s^2. | |
| Matrix< double > | gravityGradient (Vector< double > r, Matrix< double > E) |
| Computes the partial derivative of gravity with respect to position. | |
| virtual void | doCompute (UTCTime utc, EarthBody &rb, Spacecraft &sc) |
| Call the relevant methods to compute the acceleration. | |
| SphericalHarmonicGravity & | setDesiredDegree (const int &n, const int &m) |
| SphericalHarmonicGravity & | enableSolidTide (bool b=true) |
| Methods to enable earth tide correction. | |
| SphericalHarmonicGravity & | enableOceanTide (bool b=true) |
| SphericalHarmonicGravity & | enablePoleTide (bool b=true) |
| virtual std::string | modelName () const |
| Return force model name. | |
| virtual int | forceIndex () const |
| return the force model index | |
| virtual void | test () |
Protected Member Functions | |
| void | computeVW (Vector< double > r, Matrix< double > E) |
| Evaluates the two harmonic functions V and W. | |
| void | correctCSTides (UTCTime t, bool solidFlag=false, bool oceanFlag=false, bool poleFlag=false) |
| Add tides to coefficients. | |
| double | normFactor (int n, int m) |
| normalized coefficient | |
Protected Attributes | |
| gpstk::SphericalHarmonicGravity::GravityModelData | gmData |
| Matrix< double > | V |
| V W (nmax+3)*(nmax+3) Harmonic function V and W. | |
| Matrix< double > | W |
| V W (nmax+3)*(nmax+3) Harmonic function V and W. | |
| int | desiredDegree |
| Degree and Order of gravity model desired. | |
| int | desiredOrder |
| Degree and Order of gravity model desired. | |
| bool | correctSolidTide |
| Flags to indicate earth tides correction. | |
| bool | correctPoleTide |
| bool | correctOceanTide |
| EarthSolidTide | solidTide |
| Objects to do earth tides correction. | |
| EarthPoleTide | poleTide |
| EarthOceanTide | oceanTide |
|
||||||||||||
|
Constructor.
Definition at line 45 of file SphericalHarmonicGravity.cpp. References Matrix::resize(), SphericalHarmonicGravity::V, and SphericalHarmonicGravity::W. |
|
|
Default destructor.
Definition at line 63 of file SphericalHarmonicGravity.hpp. |
|
||||||||||||
|
Evaluates the two harmonic functions V and W.
Definition at line 66 of file SphericalHarmonicGravity.cpp. References Matrix::cols(), SphericalHarmonicGravity::desiredDegree, SphericalHarmonicGravity::desiredOrder, gpstk::dot(), SphericalHarmonicGravity::gmData, GPSTK_THROW, SphericalHarmonicGravity::GravityModelData::refDistance, Matrix::rows(), Vector::size(), gpstk::sqrt(), SphericalHarmonicGravity::V, and SphericalHarmonicGravity::W. Referenced by SphericalHarmonicGravity::doCompute(), and SphericalHarmonicGravity::test(). |
|
||||||||||||||||||||
|
||||||||||||||||
|
Call the relevant methods to compute the acceleration.
Reimplemented from ForceModel. Definition at line 313 of file SphericalHarmonicGravity.cpp. References SphericalHarmonicGravity::computeVW(), SphericalHarmonicGravity::correctCSTides(), SphericalHarmonicGravity::correctOceanTide, SphericalHarmonicGravity::correctPoleTide, SphericalHarmonicGravity::correctSolidTide, SphericalHarmonicGravity::gravity(), SphericalHarmonicGravity::gravityGradient(), gpstk::J2kToECEFMatrix(), Spacecraft::R(), and Matrix::resize(). |
|
|
Definition at line 104 of file SphericalHarmonicGravity.hpp. Referenced by SatOrbit::createFMObjects(). |
|
|
Definition at line 107 of file SphericalHarmonicGravity.hpp. Referenced by SatOrbit::createFMObjects(). |
|
|
Methods to enable earth tide correction.
Definition at line 101 of file SphericalHarmonicGravity.hpp. Referenced by SatOrbit::createFMObjects(). |
|
|
return the force model index
Reimplemented from ForceModel. Definition at line 115 of file SphericalHarmonicGravity.hpp. |
|
||||||||||||
|
Computes the acceleration due to gravity in m/s^2.
Definition at line 142 of file SphericalHarmonicGravity.cpp. References Matrix::cols(), SphericalHarmonicGravity::GravityModelData::GM, SphericalHarmonicGravity::gmData, GPSTK_THROW, SphericalHarmonicGravity::GravityModelData::refDistance, Matrix::rows(), Vector::size(), gpstk::transpose(), SphericalHarmonicGravity::GravityModelData::unnormalizedCS, SphericalHarmonicGravity::V, and SphericalHarmonicGravity::W. Referenced by SphericalHarmonicGravity::doCompute(), and SphericalHarmonicGravity::test(). |
|
||||||||||||
|
Computes the partial derivative of gravity with respect to position.
Definition at line 207 of file SphericalHarmonicGravity.cpp. References Matrix::cols(), SphericalHarmonicGravity::GravityModelData::GM, SphericalHarmonicGravity::gmData, GPSTK_THROW, SphericalHarmonicGravity::GravityModelData::refDistance, Matrix::rows(), Vector::size(), gpstk::transpose(), SphericalHarmonicGravity::GravityModelData::unnormalizedCS, SphericalHarmonicGravity::V, and SphericalHarmonicGravity::W. Referenced by SphericalHarmonicGravity::doCompute(), and SphericalHarmonicGravity::test(). |
|
|
We declare a pure virtual function.
Implemented in EGM96GravityModel, and JGM3GravityModel. |
|
|
Return force model name.
Reimplemented from ForceModel. Definition at line 111 of file SphericalHarmonicGravity.hpp. |
|
||||||||||||
|
normalized coefficient
Definition at line 460 of file SphericalHarmonicGravity.cpp. References gpstk::sqrt(). Referenced by SphericalHarmonicGravity::correctCSTides(). |
|
||||||||||||
|
Definition at line 95 of file SphericalHarmonicGravity.hpp. Referenced by SatOrbit::createFMObjects(). |
|
|
Reimplemented from ForceModel. Definition at line 482 of file SphericalHarmonicGravity.cpp. References SphericalHarmonicGravity::computeVW(), SphericalHarmonicGravity::gravity(), and SphericalHarmonicGravity::gravityGradient(). |
|
|
Definition at line 169 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::doCompute(). |
|
|
Definition at line 168 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::doCompute(). |
|
|
Flags to indicate earth tides correction.
Definition at line 167 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::doCompute(). |
|
|
Degree and Order of gravity model desired.
Definition at line 164 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::computeVW(). |
|
|
Degree and Order of gravity model desired.
Definition at line 164 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::computeVW(). |
|
|
Referenced by SphericalHarmonicGravity::computeVW(), SphericalHarmonicGravity::correctCSTides(), SphericalHarmonicGravity::gravity(), and SphericalHarmonicGravity::gravityGradient(). |
|
|
Definition at line 174 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::correctCSTides(). |
|
|
Definition at line 173 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::correctCSTides(). |
|
|
Objects to do earth tides correction.
Definition at line 172 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::correctCSTides(). |
|
|
V W (nmax+3)*(nmax+3) Harmonic function V and W.
Definition at line 161 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::computeVW(), SphericalHarmonicGravity::gravity(), SphericalHarmonicGravity::gravityGradient(), and SphericalHarmonicGravity::SphericalHarmonicGravity(). |
|
|
V W (nmax+3)*(nmax+3) Harmonic function V and W.
Definition at line 161 of file SphericalHarmonicGravity.hpp. Referenced by SphericalHarmonicGravity::computeVW(), SphericalHarmonicGravity::gravity(), SphericalHarmonicGravity::gravityGradient(), and SphericalHarmonicGravity::SphericalHarmonicGravity(). |
1.3.9.1