org.orekit.forces.atmospheres
Class MSISE2000

java.lang.Object
  extended by org.orekit.forces.atmospheres.MSISE2000
All Implemented Interfaces:
Serializable, Atmosphere, ExtendedAtmosphere

public class MSISE2000
extends Object
implements ExtendedAtmosphere

This class implements the MSIS00 atmospheric model.
It is an interface layer between the NRLMSISE00 class - adapted from Fortran - and the SIRIUS data structures.

Since:
1.2
Version:
$Id: MSISE2000.java 16441 2016-08-23 08:43:04Z bignon $
Author:
Vincent Ruch, Rami Houdroge
See Also:
Serialized Form
Concurrency :
thread-hostile
Concurrency comment :
The direct use of thread hostile objects makes this class thread hostile itself.

Constructor Summary
MSISE2000(MSISE2000InputParameters data, BodyShape earthBody, CelestialBody sunBody)
          Simple constructor for class MSIS00Adapter.
 
Method Summary
 AtmosphereData getData(AbsoluteDate date, Vector3D position, Frame frame)
          Get detailed atmospheric data.
 double getDensity(AbsoluteDate date, Vector3D position, Frame frame)
          Get the local density.
 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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MSISE2000

public MSISE2000(MSISE2000InputParameters data,
                 BodyShape earthBody,
                 CelestialBody sunBody)
Simple constructor for class MSIS00Adapter.

Parameters:
data - solar data
earthBody - earth body
sunBody - the sun
Method Detail

getDensity

public double getDensity(AbsoluteDate date,
                         Vector3D position,
                         Frame frame)
                  throws OrekitException
Get the local density.

Specified by:
getDensity in interface Atmosphere
Parameters:
date - current date
position - current position in frame
frame - the frame in which is defined the position
Returns:
local density (kg/m3)
Throws:
OrekitException - if date is out of range of solar activity model or if some frame conversion cannot be performed

getVelocity

public Vector3D getVelocity(AbsoluteDate date,
                            Vector3D position,
                            Frame frame)
                     throws OrekitException
Get the spacecraft velocity relative to the atmosphere.

Specified by:
getVelocity in interface Atmosphere
Parameters:
date - current date
position - current position in frame
frame - the frame in which is defined the position
Returns:
velocity (m/s) (defined in the same frame as the position)
Throws:
OrekitException - if some conversion cannot be performed

getSpeedOfSound

public double getSpeedOfSound(AbsoluteDate date,
                              Vector3D position,
                              Frame frame)
                       throws OrekitException
Get the local speed of sound.

Specified by:
getSpeedOfSound in interface Atmosphere
Parameters:
date - current date
position - current position in frame
frame - the frame in which is defined the position
Returns:
speed of sound (m/s)
Throws:
OrekitException - if some conversion cannot be performed

getData

public AtmosphereData getData(AbsoluteDate date,
                              Vector3D position,
                              Frame frame)
                       throws OrekitException
Get detailed atmospheric data.

MSISE2000 provides all data mentioned in AtmosphereData.

Specified by:
getData in interface ExtendedAtmosphere
Parameters:
date - current date
position - current position in frame
frame - the frame in which is defined the position
Returns:
detailed atmospheric data
Throws:
OrekitException - if some atmospheric data cannot be retrieved (because date is out of range of solar activity model or if some frame conversion cannot be performed)


Copyright © 2016 CNES. All Rights Reserved.