SatDump 2.0.0-alpha-520736c72
Loading...
Searching...
No Matches
AtmosphericGasesITU Class Reference
Inheritance diagram for AtmosphericGasesITU:
GenericAttenuation

Public Types

enum  atmo_element { OXYGEN = 1 , WATER_VAPOUR = 2 }
typedef enum AtmosphericGasesITU::atmo_element atmo_element_t

Public Member Functions

 AtmosphericGasesITU (double surface_watervap_density)
double get_attenuation ()
 Get the estimated attenuation. This pure virtual function MUST be implemented by every derived class.
Public Member Functions inherited from GenericAttenuation
void set_frequency (double freq)
 Set frequency static variable.
void set_slant_range (double range)
 Set slant range static variable.
void set_polarization (uint8_t polar)
 Set polarization static variable.
void set_elevation_angle (double elev_angle)
 Set elevation angle static variable.

Additional Inherited Members

Protected Attributes inherited from GenericAttenuation
double frequency = 0
double elevation_angle = 0
double slant_range = 0
uint8_t polarization = 0

Member Function Documentation

◆ get_attenuation()

double AtmosphericGasesITU::get_attenuation ( )
virtual

Get the estimated attenuation. This pure virtual function MUST be implemented by every derived class.

Returns
the attenuation in dB.

Method is only valid for elevation angles above 1 degree

Iterate through all atmoshpere layers up to 100km. Each layer has height that exponentially grows from 10cm to 1km TODO: Initial altitude should be related to Ground Station altitude

Estimate temperature and pressure for the current atmospheric layer.

Ignore some NaN TODO: Investigate this issue

Implements GenericAttenuation.


The documentation for this class was generated from the following files:
  • src-core/dsp/channel_model/model/attenuation/atmospheric_gases_itu.h
  • src-core/dsp/channel_model/model/attenuation/atmospheric_gases_itu.cpp