WSF
wsf::space::PiecewiseExponentialAtmosphere Class Reference

#include <WsfPiecewiseExponentialAtmosphere.hpp>

Inheritance diagram for wsf::space::PiecewiseExponentialAtmosphere:
Collaboration diagram for wsf::space::PiecewiseExponentialAtmosphere:

Public Member Functions

 PiecewiseExponentialAtmosphere ()
 PiecewiseExponentialAtmosphere (const PiecewiseExponentialAtmosphere &aOther)=default
 ~PiecewiseExponentialAtmosphere () override=default
PiecewiseExponentialAtmosphereClone () const override
const char * GetScriptClassName () const override
double GetDensity (const UtCalendar &aEpoch, const UtLLAPos &aLLA) const override
Public Member Functions inherited from wsf::space::Atmosphere
 Atmosphere ()
 Atmosphere (const Atmosphere &aOther)=default
virtual ~Atmosphere ()=default
bool ProcessInput (UtInput &aInput) override
const ut::CentralBody & GetCentralBody () const
const char * GetScriptClassName () const override
Public Member Functions inherited from WsfObject
 WsfObject ()
 This is the constructor for the WsfObject class.
 ~WsfObject () override
 This is the destructor for the WsfObject class.
const char * GetScriptClassName () const override
const std::string & GetType () const
WsfStringId GetTypeId () const
 Get the string ID of the 'type' of the object.
void SetType (WsfStringId aType)
const std::string & GetBaseType () const
WsfStringId GetBaseTypeId () const
const TypeListGetTypeList () const
bool IsA_TypeOf (WsfStringId aType) const
WsfObjectoperator= (const WsfObject &aRhs)
 Assignment operator.
template<typename T>
void Serialize (T &aBuff)
 For XIO (de)serialization.
const std::string & GetName () const
WsfStringId GetNameId () const
void SetName (WsfStringId aName)

Static Public Attributes

static constexpr const char * cTYPE {"WSF_PIECEWISE_EXPONENTIAL_ATMOSPHERE"}

Additional Inherited Members

Public Types inherited from WsfObject
typedef std::vector< WsfStringIdTypeList
 The list of types returned by GetTypeList.
 WsfObject (const WsfObject &aSrc)
 Copy constructor (for Clone()).
Protected Attributes inherited from wsf::space::Atmosphere
ut::CloneablePtr< ut::CentralBody > mCentralBodyPtr

Detailed Description

A simple exponential atmosphere, defined on piecewise segments of altitude.

This model uses a simple exponential profile in one of a number of segments in altitude. This models does not depend on latitude or longitude, and only provides the density. Details about the model can be found in Fundamentals of Astrodynamics and Applications, Fourth Edition, by David A. Vallado, on pages 565-568.

Constructor & Destructor Documentation

◆ PiecewiseExponentialAtmosphere() [1/2]

wsf::space::PiecewiseExponentialAtmosphere::PiecewiseExponentialAtmosphere ( )

◆ PiecewiseExponentialAtmosphere() [2/2]

wsf::space::PiecewiseExponentialAtmosphere::PiecewiseExponentialAtmosphere ( const PiecewiseExponentialAtmosphere & aOther)
default

◆ ~PiecewiseExponentialAtmosphere()

wsf::space::PiecewiseExponentialAtmosphere::~PiecewiseExponentialAtmosphere ( )
overridedefault

Member Function Documentation

◆ Clone()

PiecewiseExponentialAtmosphere * wsf::space::PiecewiseExponentialAtmosphere::Clone ( ) const
inlineoverridevirtual

Return a copy of this object. Must be implemented by all derived types. If cloning is impossible, a WsfUncloneableException should be thrown.

Implements wsf::space::Atmosphere.

References PiecewiseExponentialAtmosphere().

◆ GetDensity()

double wsf::space::PiecewiseExponentialAtmosphere::GetDensity ( const UtCalendar & aEpoch,
const UtLLAPos & aLLA ) const
overridevirtual

Return the model density for a given time and location.

This will return the density of the atmosphere (in kg / m^3) at the given aEpoch and given body-centric latitude, longitude and altitude, aLLA. This is the only state variable that subclasses of this class are required to implement.

Parameters
aEpochThe date and time at which the density is being queried.
aLLAThe body-centric latitude, longitude and altitude at which the density is being queried.
Returns
The density (in kg / m^3).

Implements wsf::space::Atmosphere.

◆ GetScriptClassName()

const char * wsf::space::PiecewiseExponentialAtmosphere::GetScriptClassName ( ) const
inlineoverride

Member Data Documentation

◆ cTYPE

const char* wsf::space::PiecewiseExponentialAtmosphere::cTYPE {"WSF_PIECEWISE_EXPONENTIAL_ATMOSPHERE"}
staticconstexpr

The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved