Class AbstractJacchiaBowmanModel
java.lang.Object
org.orekit.models.earth.atmosphere.AbstractSunInfluencedAtmosphere
org.orekit.models.earth.atmosphere.AbstractJacchiaBowmanModel
- All Implemented Interfaces:
Atmosphere
Base class for Jacchia-Bowman atmospheric models.
- Since:
- 13.1
- Author:
- Bruce R Bowman (HQ AFSPC, Space Analysis Division), Feb 2006: FORTRAN routine, Fabien Maussion (java translation), Bryan Cazabonne (field elements translation)
- See Also:
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractJacchiaBowmanModel(ExtendedPositionProvider sun, TimeScale utc, BodyShape earth, AbsoluteDate minDataEpoch, AbsoluteDate maxDataEpoch) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected doublecomputeDensity(AbsoluteDate date, double sunRA, double sunDecli, double satLon, double satLat, double satAlt) Computes the local density with initial entries.protected <T extends CalculusFieldElement<T>>
TcomputeDensity(FieldAbsoluteDate<T> date, T sunRA, T sunDecli, T satLon, T satLat, T satAlt) Computes the local density with initial entries.protected abstract doublecomputeTc(AbsoluteDate date) Computes the temperature equation.protected abstract doublecomputeTInf(AbsoluteDate date, double tsubl, double dtclst) Computes the local exospheric temperature.protected abstract <T extends CalculusFieldElement<T>>
TcomputeTInf(AbsoluteDate date, T tsubl, T dtclst) Computes the local exospheric temperature.doublegetDensity(AbsoluteDate date, Vector3D position, Frame frame) Get the local density.<T extends CalculusFieldElement<T>>
TgetDensity(FieldAbsoluteDate<T> date, FieldVector3D<T> position, Frame frame) Get the local density.getEarth()Get the Earth body shape.protected abstract doublegetF10(AbsoluteDate date) Get the 10.7-cm Solar flux (1e-22*Watt/(m²*Hertz))
(Tabular time 1.0 day earlier).protected abstract doublegetF10B(AbsoluteDate date) Get the 10.7-cm Solar Flux, averaged 81-day centered on the input time
(Tabular time 1.0 day earlier).getFrame()Get the frame of the central body.getUtc()Get the UTC time scale.protected abstract doublesemian(AbsoluteDate date, double day, double altKm) Computes the semi-annual variation (delta log(rho)).protected abstract <T extends CalculusFieldElement<T>>
Tsemian(AbsoluteDate date, T day, T altKm) Computes the semi-annual variation (delta log(rho)).Methods inherited from class org.orekit.models.earth.atmosphere.AbstractSunInfluencedAtmosphere
getSun, getSunPosition, getSunPositionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.models.earth.atmosphere.Atmosphere
getVelocity, getVelocity
-
Constructor Details
-
AbstractJacchiaBowmanModel
protected AbstractJacchiaBowmanModel(ExtendedPositionProvider sun, TimeScale utc, BodyShape earth, AbsoluteDate minDataEpoch, AbsoluteDate maxDataEpoch) Constructor.- Parameters:
sun- position provider.utc- UTC time scale. Used to computed the day fraction.earth- the earth body shapeminDataEpoch- earliest epoch of solar activity datamaxDataEpoch- latest epoch of solar activity data
-
-
Method Details
-
getUtc
Get the UTC time scale.- Returns:
- UTC time scale
-
getEarth
Get the Earth body shape.- Returns:
- the Earth body shape
-
getDensity
Get the local density.- Parameters:
date- current dateposition- current position in frameframe- the frame in which is defined the position- Returns:
- local density (kg/m³)
-
getDensity
public <T extends CalculusFieldElement<T>> T getDensity(FieldAbsoluteDate<T> date, FieldVector3D<T> position, Frame frame) Get the local density.- Type Parameters:
T- instance of CalculusFieldElement- Parameters:
date- current dateposition- current position in frameframe- the frame in which is defined the position- Returns:
- local density (kg/m³)
-
getFrame
Get the frame of the central body.- Returns:
- frame of the central body.
-
computeDensity
protected double computeDensity(AbsoluteDate date, double sunRA, double sunDecli, double satLon, double satLat, double satAlt) Computes the local density with initial entries.- Parameters:
date- computation epochsunRA- Right Ascension of Sun (radians)sunDecli- Declination of Sun (radians)satLon- Right Ascension of position (radians)satLat- Geocentric latitude of position (radians)satAlt- Height of position (m)- Returns:
- total mass-Density at input position (kg/m³)
-
computeDensity
protected <T extends CalculusFieldElement<T>> T computeDensity(FieldAbsoluteDate<T> date, T sunRA, T sunDecli, T satLon, T satLat, T satAlt) Computes the local density with initial entries.- Type Parameters:
T- type of the elements- Parameters:
date- computation epochsunRA- Right Ascension of Sun (radians)sunDecli- Declination of Sun (radians)satLon- Right Ascension of position (radians)satLat- Geocentric latitude of position (radians)satAlt- Height of position (m)- Returns:
- total mass-Density at input position (kg/m³)
-
semian
Computes the semi-annual variation (delta log(rho)).- Parameters:
date- computation epochday- day of yearaltKm- height (km)- Returns:
- semi-annual variation
-
computeTInf
Computes the local exospheric temperature.- Parameters:
date- computation epochtsubl- exospheric temperature ("tsubl" term), given by Equation (17)dtclst- correction to dTc for local solar time and lat correction- Returns:
- the local exospheric temperature
-
computeTc
Computes the temperature equation.- Parameters:
date- computation epoch- Returns:
- the temperature equation
-
getF10
Get the 10.7-cm Solar flux (1e-22*Watt/(m²*Hertz))
(Tabular time 1.0 day earlier).- Parameters:
date- computation epoch- Returns:
- the 10.7-cm Solar flux from model input parameters
-
getF10B
Get the 10.7-cm Solar Flux, averaged 81-day centered on the input time
(Tabular time 1.0 day earlier).- Parameters:
date- computation epoch- Returns:
- the 10.7-cm Solar Flux, averaged 81-day centered on the input time
-
semian
Computes the semi-annual variation (delta log(rho)).- Type Parameters:
T- type of the elements- Parameters:
date- computation epochday- day of yearaltKm- height (km)- Returns:
- semi-annual variation
-
computeTInf
protected abstract <T extends CalculusFieldElement<T>> T computeTInf(AbsoluteDate date, T tsubl, T dtclst) Computes the local exospheric temperature.- Type Parameters:
T- type of the elements- Parameters:
date- computation epochtsubl- exospheric temperature ("tsubl" term), given by Equation (17)dtclst- correction to dTc for local solar time and lat correction- Returns:
- the local exospheric temperature
-