WSF
WsfStandardAntennaPattern::StandardData Class Reference

#include <WsfStandardAntennaPattern.hpp>

Inheritance diagram for WsfStandardAntennaPattern::StandardData:
Collaboration diagram for WsfStandardAntennaPattern::StandardData:

Public Member Functions

 StandardData ()
 ~StandardData () override
bool ProcessInput (WsfAntennaPattern &aPattern, UtInput &aInput) override
bool Initialize (WsfAntennaPattern &aAntennaPattern) override
double GetGain (double aFrequency, double aTargetAz, double aTargetEl, double aEBS_Az, double aEBS_El) override
void ResetPatternType ()
Public Member Functions inherited from WsfAntennaPattern::BaseData
 BaseData ()
 BaseData (const BaseData &aSrc)=default
 ~BaseData () override=default
virtual double PerformGainAdjustment (double aFrequency, double aGain)
virtual void InitializeAverageGain (double aFrequency)
 Initialize the average gain table if not already initialized.

Static Public Member Functions

static double BesselJ1 (double aX)
 Calculate Bessel function J1(x).

Public Attributes

PatternType mPatternType
UtAzElTable * mTablePtr
double mPeakGain
double mInputAzBeamwidth
double mInputElBeamwidth
double mAzBeamwidth
double mElBeamwidth
Public Attributes inherited from WsfAntennaPattern::BaseData
double mMinimumGain
 The minimum gain that should be returned by any antenna pattern.
double mGainAdjustment
 A simple gain adjustment.
GainAdjustmentTable mGainAdjustmentTable
 Frequency-dependent gain adjustment table.
bool mInitialized
bool mAvgGainInitialized
bool mShowAvgGain
std::recursive_mutex mAvgGainMutex
std::vector< double > mAvgGain
double mSampledPeakGain
 The peak gain of the sample. This SHOULD be the peak gain of the pattern.

addition input values for the 'sine' parameters

double mSineAngleModificationFactor
int mSineFunctionType

Additional input values for the 'cosecant_squared' pattern.

double mCscMinElForPeakGain
double mCscElOfPeakCsc2Boundary
double mCscMaxElForCsc2

Derived values for the 'cosecant_squared' pattern that are computed when it is first used.

double mCscMinimumGainAdjusted
double mCscPeakGainAdjusted
double mCscK_Az
double mCscK_El
double mCscWithinCsc2Factor
double mCscAboveCsc2Factor
bool mFirstTime
static double CircularPattern (double aAzimuth, double aElevation, double aPeakGain, double aBeamwidth)
static double SinePattern (double aAzimuth, double aElevation, double aPeakGain, double aAzimuthBeamwidth, double aElevationBeamwidth, double aOffset, double aFact, int aType)
 From the routine GENANT.
double CosecantSquaredPattern (double aAzimuth, double aElevation)
void ProcessCircularInput (WsfAntennaPattern &aPattern, UtInput &aInput)
void ProcessCosecantSquaredInput (WsfAntennaPattern &aPattern, UtInput &aInput)
void ProcessPatternTableInput (WsfAntennaPattern &aPattern, UtInput &aInput)
void ProcessSineInput (WsfAntennaPattern &aPattern, UtInput &aInput)
void ProcessUniformInput (WsfAntennaPattern &aPattern, UtInput &aInput)

Constructor & Destructor Documentation

◆ StandardData()

◆ ~StandardData()

WsfStandardAntennaPattern::StandardData::~StandardData ( )
override

References mTablePtr.

Member Function Documentation

◆ BesselJ1()

double WsfStandardAntennaPattern::StandardData::BesselJ1 ( double aX)
static

Calculate Bessel function J1(x).

Referenced by CircularPattern(), and SinePattern().

◆ CircularPattern()

double WsfStandardAntennaPattern::StandardData::CircularPattern ( double aAzimuth,
double aElevation,
double aPeakGain,
double aBeamwidth )
staticprotected

Get gain from a uniformly illuminated circular aperture.

Parameters
aAzimuthAzimuth angle for lookup.
aElevationElevation angle for lookup.
aBeamwidthBeamwidth of the mainbeam (radians????)
aPeakGainThe peak gain in the pattern.
Returns
Absolute gain (NOT in dB).

This is a direct conversion of the routine GENCIR. (Author: A GUENDEL 27 MAR 1984)

References BesselJ1().

Referenced by GetGain().

◆ CosecantSquaredPattern()

double WsfStandardAntennaPattern::StandardData::CosecantSquaredPattern ( double aAzimuth,
double aElevation )
protected

Calculate the gain in a cosecant squared pattern

This is a direct conversion of the routine COSEC2. (Author: W RING /A GUENDEL MAR 1984)

References mAzBeamwidth, mCscAboveCsc2Factor, mCscElOfPeakCsc2Boundary, mCscK_Az, mCscK_El, mCscMaxElForCsc2, mCscMinElForPeakGain, mCscMinimumGainAdjusted, mCscPeakGainAdjusted, mCscWithinCsc2Factor, mElBeamwidth, mFirstTime, WsfAntennaPattern::BaseData::mMinimumGain, and mPeakGain.

Referenced by GetGain().

◆ GetGain()

◆ Initialize()

bool WsfStandardAntennaPattern::StandardData::Initialize ( WsfAntennaPattern & aAntennaPattern)
overridevirtual

◆ ProcessCircularInput()

void WsfStandardAntennaPattern::StandardData::ProcessCircularInput ( WsfAntennaPattern & aPattern,
UtInput & aInput )
protected

◆ ProcessCosecantSquaredInput()

void WsfStandardAntennaPattern::StandardData::ProcessCosecantSquaredInput ( WsfAntennaPattern & aPattern,
UtInput & aInput )
protected

◆ ProcessInput()

◆ ProcessPatternTableInput()

void WsfStandardAntennaPattern::StandardData::ProcessPatternTableInput ( WsfAntennaPattern & aPattern,
UtInput & aInput )
protected

◆ ProcessSineInput()

void WsfStandardAntennaPattern::StandardData::ProcessSineInput ( WsfAntennaPattern & aPattern,
UtInput & aInput )
protected

◆ ProcessUniformInput()

void WsfStandardAntennaPattern::StandardData::ProcessUniformInput ( WsfAntennaPattern & aPattern,
UtInput & aInput )
protected

◆ ResetPatternType()

void WsfStandardAntennaPattern::StandardData::ResetPatternType ( )

◆ SinePattern()

double WsfStandardAntennaPattern::StandardData::SinePattern ( double aAzimuth,
double aElevation,
double aPeakGain,
double aAzimuthBeamwidth,
double aElevationBeamwidth,
double aOffset,
double aFact,
int aType )
staticprotected

From the routine GENANT.

References BesselJ1().

Referenced by GetGain().

Member Data Documentation

◆ mAzBeamwidth

◆ mCscAboveCsc2Factor

double WsfStandardAntennaPattern::StandardData::mCscAboveCsc2Factor

◆ mCscElOfPeakCsc2Boundary

double WsfStandardAntennaPattern::StandardData::mCscElOfPeakCsc2Boundary

◆ mCscK_Az

double WsfStandardAntennaPattern::StandardData::mCscK_Az

◆ mCscK_El

double WsfStandardAntennaPattern::StandardData::mCscK_El

◆ mCscMaxElForCsc2

double WsfStandardAntennaPattern::StandardData::mCscMaxElForCsc2

◆ mCscMinElForPeakGain

double WsfStandardAntennaPattern::StandardData::mCscMinElForPeakGain

◆ mCscMinimumGainAdjusted

double WsfStandardAntennaPattern::StandardData::mCscMinimumGainAdjusted

◆ mCscPeakGainAdjusted

double WsfStandardAntennaPattern::StandardData::mCscPeakGainAdjusted

◆ mCscWithinCsc2Factor

double WsfStandardAntennaPattern::StandardData::mCscWithinCsc2Factor

◆ mElBeamwidth

◆ mFirstTime

bool WsfStandardAntennaPattern::StandardData::mFirstTime

◆ mInputAzBeamwidth

double WsfStandardAntennaPattern::StandardData::mInputAzBeamwidth

◆ mInputElBeamwidth

double WsfStandardAntennaPattern::StandardData::mInputElBeamwidth

◆ mPatternType

PatternType WsfStandardAntennaPattern::StandardData::mPatternType

◆ mPeakGain

◆ mSineAngleModificationFactor

double WsfStandardAntennaPattern::StandardData::mSineAngleModificationFactor

◆ mSineFunctionType

int WsfStandardAntennaPattern::StandardData::mSineFunctionType

◆ mTablePtr

UtAzElTable* WsfStandardAntennaPattern::StandardData::mTablePtr

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