public class SimpleExponentialAtmosphere extends Object implements Atmosphere
This model represents a simple atmosphere with an exponential density and rigidly bound to the underlying rotating body.
This class is restricted to be used with EllipsoidBodyShape
.
Constructor and Description |
---|
SimpleExponentialAtmosphere(EllipsoidBodyShape shapeIn,
double rho0In,
double h0In,
double hscaleIn)
Create an exponential atmosphere.
|
Modifier and Type | Method and Description |
---|---|
void |
checkSolarActivityData(AbsoluteDate start,
AbsoluteDate end)
This methods throws an exception if the user did not provide solar activity on the provided interval [start,
end].
|
Atmosphere |
copy()
A copy of the atmosphere.
|
double |
getDensity(AbsoluteDate date,
Vector3D position,
Frame frame)
Get the local density.
|
double |
getH0()
Getter for the Altitude of reference (m).
|
double |
getHscale()
Getter for the Scale factor (m).
|
double |
getRho0()
Getter for the Density at the altitude h0.
|
BodyShape |
getShape()
Getter for the Body shape model.
|
double |
getSpeedOfSound(AbsoluteDate date,
Vector3D position,
Frame frame)
Get the local speed of sound.
|
Vector3D |
getVelocity(AbsoluteDate date,
Vector3D position,
Frame frame)
Get the spacecraft velocity relative to the atmosphere.
|
public SimpleExponentialAtmosphere(EllipsoidBodyShape shapeIn, double rho0In, double h0In, double hscaleIn)
shapeIn
- body shape modelrho0In
- Density at the altitude h0h0In
- Altitude of reference (m)hscaleIn
- Scale factor (m)public double getDensity(AbsoluteDate date, Vector3D position, Frame frame) throws PatriusException
getDensity
in interface Atmosphere
date
- current dateposition
- current position in frameframe
- the frame in which is defined the positionPatriusException
- if date is out of range of solar activity model or if some frame
conversion cannot be performedpublic Vector3D getVelocity(AbsoluteDate date, Vector3D position, Frame frame) throws PatriusException
getVelocity
in interface Atmosphere
date
- current dateposition
- current position in frameframe
- the frame in which is defined the positionPatriusException
- if some conversion cannot be performedpublic double getSpeedOfSound(AbsoluteDate date, Vector3D position, Frame frame)
getSpeedOfSound
in interface Atmosphere
date
- current dateposition
- current position in frameframe
- the frame in which is defined the positionpublic BodyShape getShape()
public double getRho0()
public double getH0()
public double getHscale()
public Atmosphere copy()
The following attributes are not deeply copied:
BodyShape
copy
in interface Atmosphere
public void checkSolarActivityData(AbsoluteDate start, AbsoluteDate end)
checkSolarActivityData
in interface Atmosphere
start
- range start dateend
- range end dateCopyright © 2023 CNES. All rights reserved.