##

AdiabaticAtmosphere Class Reference
Physics

Adiabatic atmosphere model based on the troposphere model in the Manual of the ICAO Standard Atmosphere. More...

`#include <AdiabaticAtmosphere.hh>`

Inherits Atmosphere.

## Public Member Functions

| AdiabaticAtmosphere (physics::World &_world)
| Constructor. More...
virtual | ~AdiabaticAtmosphere ()
| Destructor. More...
virtual void | Load (sdf::ElementPtr _sdf)
| Load the atmosphere model. More...
double | MassDensity (const double _altitude=0.0) const
| Get the density in kg/m^3 at a given altitude. More...
virtual double | Pressure (const double _altitude=0.0) const
| Get the pressure at a specified altitude in pascals. More...
virtual void | Reset ()
| Reset the atmosphere model. More...
sdf::ElementPtr | SDF () const
| Get a pointer to the SDF element for this atmosphere model. More...
virtual void | SetPressure (const double _pressure)
| Set the sea level pressure. More...
virtual void | SetTemperature (const double _t)
| Set the sea level temperature. More...
virtual void | SetTemperatureGradient (const double _gradient)
| Set the temperature gradient dT/dZ with respect to increasing altitude around sea level. More...
virtual double | Temperature (const double _altitude=0.0) const
| Get the actual modeled temperature in kelvins at a given altitude. More...
double | TemperatureGradient () const
| Get the sea level temperature gradient with respect to increasing altitude. More...
virtual std::string | Type () const
| Return the atmosphere model type (such as "adiabatic"). More...

## Static Public Attributes

static const double | IDEAL_GAS_CONSTANT_R
| Universal ideal gas constant in J/(mol.K) More...
static const double | MOLAR_MASS
| Molar mass of the air in kg/mol. More...

## Protected Member Functions

virtual void | OnAtmosphereMsg (ConstAtmospherePtr &_msg)
| Virtual callback for gztopic "~/atmosphere". More...
virtual void | OnRequest (ConstRequestPtr &_msg)
| Virtual callback for gztopic "~/request". More...
void | Publish (const msgs::Response &_msg) const
| Publish response to a request. More...
void | UpdateMassDensity ()
| Update the mass density of the air at sea level using the ideal gas law. More...
physics::World & | World () const
| Return the world. More...

## Protected Attributes

std::unique_ptr< AdiabaticAtmospherePrivate > | dataPtr

## Detailed Description

Adiabatic atmosphere model based on the troposphere model in the Manual of the ICAO Standard Atmosphere.

http://ntrs.nasa.gov/search.jsp?R=19930083952 This model assumes a specific composition of gases, the ideal gas law, hydrostatic equilibrium, and constant gradients of gravity and temperature with respect to altitude. The troposphere model is recommended for altitudes below 11 km.

## Constructor & Destructor Documentation

## AdiabaticAtmosphere()

AdiabaticAtmosphere | ( | physics::World & | _world | ) |

explicit

Constructor.

Parameters

  [in] | _world | The World that uses this atmosphere model.

## ~AdiabaticAtmosphere()

virtual ~AdiabaticAtmosphere | ( |  | ) |

virtual

Destructor.

## Member Function Documentation

## Load()

virtual void Load | ( | sdf::ElementPtr | _sdf | ) |

virtual

Load the atmosphere model.

Parameters

  [in] | _sdf | Pointer to the SDF parameters.

Reimplemented from Atmosphere.

## MassDensity()

double MassDensity | ( | const double | _altitude = `0.0` | ) | const

virtual

Get the density in kg/m^3 at a given altitude.

Parameters

  [in] | _altitude | Altitude above sea level in meters.

Returns
  Density in kg/m^3 at the specified altitude.

Reimplemented from Atmosphere.

## OnAtmosphereMsg()

virtual void OnAtmosphereMsg | ( | ConstAtmospherePtr & | _msg | ) |

protected virtual

Virtual callback for gztopic "~/atmosphere".

Parameters

  [in] | _msg | Atmosphere message.

Reimplemented from Atmosphere.

## OnRequest()

virtual void OnRequest | ( | ConstRequestPtr & | _msg | ) |

protected virtual

Virtual callback for gztopic "~/request".

Parameters

  [in] | _msg | Request message.

Reimplemented from Atmosphere.

## Pressure()

virtual double Pressure | ( | const double | _altitude = `0.0` | ) | const

virtual

Get the pressure at a specified altitude in pascals.

Parameters

  [in] | _altitude | Altitude above sea level in meters.

Returns
  Pressure in pascals at the specified altitude.

Reimplemented from Atmosphere.

## Publish()

void Publish | ( | const msgs::Response & | _msg | ) | const

protected inherited

Publish response to a request.

Parameters

  [in] | _msg | Message to be published.

## Reset()

virtual void Reset | ( |  | ) |

virtual inherited

Reset the atmosphere model.

## SDF()

sdf::ElementPtr SDF | ( |  | ) | const

inherited

Get a pointer to the SDF element for this atmosphere model.

Returns
  Pointer to the atmosphere SDF element.

## SetPressure()

virtual void SetPressure | ( | const double | _pressure | ) |

virtual inherited

Set the sea level pressure.

Parameters

  [in] | _pressure | Pressure in pascals.

## SetTemperature()

virtual void SetTemperature | ( | const double | _t | ) |

virtual inherited

Set the sea level temperature.

Parameters

  [in] | _t | Temperature value in kelvins.

## SetTemperatureGradient()

virtual void SetTemperatureGradient | ( | const double | _gradient | ) |

virtual

Set the temperature gradient dT/dZ with respect to increasing altitude around sea level.

Parameters

  [in] | _gradient | Value of the temperature gradient dT/dZ around sea level in K/m.

Implements Atmosphere.

## Temperature()

virtual double Temperature | ( | const double | _altitude = `0.0` | ) | const

virtual

Get the actual modeled temperature in kelvins at a given altitude.

Parameters

  [in] | _altitude | Altitude above sea level in meters.

Returns
  Modeled temperature in kelvin at the specified altitude.

Reimplemented from Atmosphere.

## TemperatureGradient()

double TemperatureGradient | ( |  | ) | const

inherited

Get the sea level temperature gradient with respect to increasing altitude.

Returns
  Temperature gradient at sea level in K/m.

## Type()

virtual std::string Type | ( |  | ) | const

virtual

Return the atmosphere model type (such as "adiabatic").

Returns
  Type of the atmosphere model.

Implements Atmosphere.

## UpdateMassDensity()

void UpdateMassDensity | ( |  | ) |

protected inherited

Update the mass density of the air at sea level using the ideal gas law.

See https://en.wikipedia.org/wiki/Ideal_gas_law

## World()

physics::World& World | ( |  | ) | const

protected inherited

Return the world.

Returns
  Reference to the world.

## Member Data Documentation

## dataPtr

std::unique_ptr<AdiabaticAtmospherePrivate> dataPtr

protected

## IDEAL_GAS_CONSTANT_R

const double IDEAL_GAS_CONSTANT_R

static inherited

Universal ideal gas constant in J/(mol.K)

## MOLAR_MASS

const double MOLAR_MASS

static inherited

Molar mass of the air in kg/mol.

The documentation for this class was generated from the following file:

- AdiabaticAtmosphere.hh