SatDump 2.0.0-alpha-520736c72
Loading...
Searching...
No Matches
GenericAttenuation Class Referenceabstract

Parent class for attenuation objects. More...

#include <generic.h>

Inheritance diagram for GenericAttenuation:
AtmosphericGasesITU AtmosphericGasesRegression FreeSpacePathLossAttenuation

Public Member Functions

virtual double get_attenuation ()=0
 Get the estimated attenuation. This pure virtual function MUST be implemented by every derived class.
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.

Protected Attributes

double frequency = 0
double elevation_angle = 0
double slant_range = 0
uint8_t polarization = 0

Detailed Description

Parent class for attenuation objects.

This is an abstract class that must be derived by other classes in order to simulate a specific type of attenuation. Holds information, in the form of static variables, about the operating frequency, the elevation angle, the slant range and the polarization of the tracker at a specific time instance.

Each derived class must implement the pure virtual function get_attenuation according to the attenuation it describes, using the static variables of the parent class.

Member Function Documentation

◆ get_attenuation()

virtual double GenericAttenuation::get_attenuation ( )
pure virtual

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

Returns
the attenuation in dB.

Implemented in AtmosphericGasesITU, AtmosphericGasesRegression, and FreeSpacePathLossAttenuation.

◆ set_elevation_angle()

void GenericAttenuation::set_elevation_angle ( double elev_angle)

Set elevation angle static variable.

Parameters
elev_angleThe elevation angle in radians

◆ set_frequency()

void GenericAttenuation::set_frequency ( double freq)

Set frequency static variable.

Parameters
freqThe frequency in Hz

◆ set_polarization()

void GenericAttenuation::set_polarization ( uint8_t polar)

Set polarization static variable.

Parameters
polarThe polarization enumeration

◆ set_slant_range()

void GenericAttenuation::set_slant_range ( double range)

Set slant range static variable.

Parameters
rangeThe range in km

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