Class DTM2000
- java.lang.Object
-
- org.orekit.models.earth.atmosphere.DTM2000
-
- All Implemented Interfaces:
Serializable
,Atmosphere
public class DTM2000 extends Object implements Atmosphere
This atmosphere model is the realization of the DTM-2000 model.It is described in the paper:
The DTM-2000 empirical thermosphere model with new data assimilation and constraints at lower boundary: accuracy and properties
S. Bruinsma, G. Thuillier and F. Barlier
Journal of Atmospheric and Solar-Terrestrial Physics 65 (2003) 1053–1070
This model provides dense output for altitudes beyond 120 km.
The model needs geographical and time information to compute general values, but also needs space weather data : mean and instantaneous solar flux and geomagnetic indices.
Mean solar flux is (for the moment) represented by the F10.7 indices. Instantaneous flux can be set to the mean value if the data is not available. Geomagnetic activity is represented by the Kp indice, which goes from 1 (very low activity) to 9 (high activity).
All these data can be found on the NOAA (National Oceanic and Atmospheric Administration) website.
- Author:
- R. Biancale, S. Bruinsma: original fortran routine, Fabien Maussion (java translation)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description DTM2000(DTM2000InputParameters parameters, PVCoordinatesProvider sun, BodyShape earth)
Simple constructor for independent computation.DTM2000(DTM2000InputParameters parameters, PVCoordinatesProvider sun, BodyShape earth, TimeScale utc)
Simple constructor for independent computation.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
getDensity(int day, double alti, double lon, double lat, double hl, double f, double fbar, double akp3, double akp24)
Get the local density with initial entries.<T extends CalculusFieldElement<T>>
TgetDensity(int day, T alti, T lon, T lat, T hl, double f, double fbar, double akp3, double akp24)
Get the local density with initial entries.double
getDensity(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.Frame
getFrame()
Get the frame of the central body.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.models.earth.atmosphere.Atmosphere
getVelocity, getVelocity
-
-
-
-
Constructor Detail
-
DTM2000
@DefaultDataContext public DTM2000(DTM2000InputParameters parameters, PVCoordinatesProvider sun, BodyShape earth)
Simple constructor for independent computation.This constructor uses the
default data context
.- Parameters:
parameters
- the solar and magnetic activity datasun
- the sun positionearth
- the earth body shape- See Also:
DTM2000(DTM2000InputParameters, PVCoordinatesProvider, BodyShape, TimeScale)
-
DTM2000
public DTM2000(DTM2000InputParameters parameters, PVCoordinatesProvider sun, BodyShape earth, TimeScale utc)
Simple constructor for independent computation.- Parameters:
parameters
- the solar and magnetic activity datasun
- the sun positionearth
- the earth body shapeutc
- UTC time scale.- Since:
- 10.1
-
-
Method Detail
-
getFrame
public Frame getFrame()
Get the frame of the central body.- Specified by:
getFrame
in interfaceAtmosphere
- Returns:
- frame of the central body.
-
getDensity
public double getDensity(int day, double alti, double lon, double lat, double hl, double f, double fbar, double akp3, double akp24)
Get the local density with initial entries.- Parameters:
day
- day of yearalti
- altitude in meterslon
- local longitude (rad)lat
- local latitude (rad)hl
- local solar time in rad (O hr = 0 rad)f
- instantaneous solar flux (F10.7)fbar
- mean solar flux (F10.7)akp3
- 3 hrs geomagnetic activity index (1-9)akp24
- Mean of last 24 hrs geomagnetic activity index (1-9)- Returns:
- the local density (kg/m³)
-
getDensity
public <T extends CalculusFieldElement<T>> T getDensity(int day, T alti, T lon, T lat, T hl, double f, double fbar, double akp3, double akp24)
Get the local density with initial entries.- Type Parameters:
T
- type of the field elements- Parameters:
day
- day of yearalti
- altitude in meterslon
- local longitude (rad)lat
- local latitude (rad)hl
- local solar time in rad (O hr = 0 rad)f
- instantaneous solar flux (F10.7)fbar
- mean solar flux (F10.7)akp3
- 3 hrs geomagnetic activity index (1-9)akp24
- Mean of last 24 hrs geomagnetic activity index (1-9)- Returns:
- the local density (kg/m³)
- Since:
- 9.0
-
getDensity
public double getDensity(AbsoluteDate date, Vector3D position, Frame frame)
Get the local density.- Specified by:
getDensity
in interfaceAtmosphere
- 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.- Specified by:
getDensity
in interfaceAtmosphere
- 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³)
-
-