public class BalminoGravityModel extends AbstractHarmonicGravityModel
The algorithm implemented in this class has been designed by Balmino Georges (Observatoire Midi-Pyrénées/ Groupe de Recherche de Géodésie Spatiale (GRGS) / Centre National d’Etudes Spatiales (CNES), France) in his 1990 paper: Non-singular formulation of the gravity vector and gravity gradient tensor in spherical harmonics. (Manuscr. Geod., Vol. 15, No. 1, p. 11 - 16, 02/1990). It uses normalized C and S coefficients for greater accuracy.
Warning: using a 0x0 Earth potential model is equivalent to a simple Newtonian attraction. However computation times will be much slower since this case is not particularized and hence conversion from body frame (often ITRF) to integration frame is necessary.
| Modifier and Type | Field and Description |
|---|---|
static String |
RADIUS
Parameter name for equatorial radius.
|
MU| Constructor and Description |
|---|
BalminoGravityModel(Frame frame,
double ae,
double mu,
double[][] cCoefs,
double[][] sCoefs)
Create an instance of a normalized gravity computation model using normalized coefficients.
|
BalminoGravityModel(Frame frame,
double ae,
double mu,
double[][] cCoefs,
double[][] sCoefs,
int degreePD,
int orderPD)
Create an instance of a normalized gravity computation model using normalized coefficients.
|
BalminoGravityModel(Frame frame,
Parameter ae,
Parameter mu,
double[][] cCoefs,
double[][] sCoefs)
Create an instance of a normalized gravity computation model using normalized coefficients.
|
BalminoGravityModel(Frame frame,
Parameter ae,
Parameter mu,
double[][] cCoefs,
double[][] sCoefs,
int degreePD,
int orderPD)
Create an instance of a normalized gravity computation model using normalized coefficients.
|
BalminoGravityModel(Frame frame,
Parameter ae,
Parameter mu,
double[][] cCoefs,
double[][] sCoefs,
int degreePD,
int orderPD,
boolean centralTermContributionIn)
Create an instance of a normalized gravity computation model using normalized coefficients.
|
| Modifier and Type | Method and Description |
|---|---|
Vector3D |
computeNonCentralTermsAcceleration(Vector3D positionInBodyFrame,
AbsoluteDate date)
Compute the acceleration due to the non-central terms of the gravitational attraction.
|
double[][] |
computeNonCentralTermsDAccDPos(Vector3D positionInBodyFrame,
AbsoluteDate date)
Compute acceleration derivatives with respect to the state parameters for the non-central terms.
|
double |
getAe()
Get the equatorial radius.
|
double[][] |
getC() |
double[][] |
getS() |
void |
setAe(double aeIn)
Set the equatorial radius.
|
computeAcceleration, computeCentralTermAcceleration, computeCentralTermDAccDPos, computeDAccDPos, isCentralTermContributionApplied, setCentralTermContributiongetBodyFrame, getMu, getMuParameter, setMupublic static final String RADIUS
public BalminoGravityModel(Frame frame, double ae, double mu, double[][] cCoefs, double[][] sCoefs)
frame - central body frameae - equatorial radius constantmu - standard gravitational constantcCoefs - Normalized c coefficientssCoefs - Normalized s coefficientspublic BalminoGravityModel(Frame frame, double ae, double mu, double[][] cCoefs, double[][] sCoefs, int degreePD, int orderPD)
frame - central body frameae - equatorial radius constantmu - standard gravitational constantcCoefs - Normalized c coefficients for acceleration computationsCoefs - Normalized s coefficients for acceleration computationdegreePD - degree for partial derivativesorderPD - order for partial derivativespublic BalminoGravityModel(Frame frame, Parameter ae, Parameter mu, double[][] cCoefs, double[][] sCoefs)
frame - central body frameae - parameter storing equatorial radiusmu - parameter storing standard gravitationalcCoefs - Normalized c coefficientssCoefs - Normalized s coefficientspublic BalminoGravityModel(Frame frame, Parameter ae, Parameter mu, double[][] cCoefs, double[][] sCoefs, int degreePD, int orderPD)
frame - central body frameae - parameter storing equatorial radiusmu - parameter storing standard gravitationalcCoefs - Normalized c coefficients for acceleration computationsCoefs - Normalized s coefficients for acceleration computationdegreePD - degree for partial derivativesorderPD - order for partial derivativespublic BalminoGravityModel(Frame frame, Parameter ae, Parameter mu, double[][] cCoefs, double[][] sCoefs, int degreePD, int orderPD, boolean centralTermContributionIn)
frame - central body frameae - parameter storing equatorial radiusmu - parameter storing standard gravitationalcCoefs - Normalized c coefficients for acceleration computationsCoefs - Normalized s coefficients for acceleration computationdegreePD - degree for partial derivativesorderPD - order for partial derivativescentralTermContributionIn - true if central term contribution should be considered (by default), false if
notpublic Vector3D computeNonCentralTermsAcceleration(Vector3D positionInBodyFrame, AbsoluteDate date) throws PatriusException
computeNonCentralTermsAcceleration in class AbstractHarmonicGravityModelpositionInBodyFrame - the position expressed in the body framedate - the datePatriusException - if some specific error occurspublic final double[][] computeNonCentralTermsDAccDPos(Vector3D positionInBodyFrame, AbsoluteDate date) throws PatriusException
computeNonCentralTermsDAccDPos in class AbstractHarmonicGravityModelpositionInBodyFrame - position of the spacecraft in the body framedate - datePatriusException - if derivatives cannot be computedpublic double getAe()
public void setAe(double aeIn)
aeIn - the equatorial radius.public double[][] getC()
public double[][] getS()
Copyright © 2024 CNES. All rights reserved.