WSF
wsf::MarcumSwerling Class Reference

Computation of probability of detection using the Marcum-Swerling algorithm. More...

#include <WsfMarcumSwerling.hpp>

Inheritance diagram for wsf::MarcumSwerling:
Collaboration diagram for wsf::MarcumSwerling:

Public Types

enum  DetectorLaw { cDL_LINEAR , cDL_SQUARE , cDL_LOG }

Public Member Functions

 MarcumSwerling ()
 ~MarcumSwerling () override=default
MarcumSwerlingClone () const override
bool Initialize (double aSimTime, WsfSensorMode *aModePtr, size_t aBeamIndex=0) override
bool ProcessInput (UtInput &aInput) override
double ComputeProbabilityOfDetection (double aSignalToNoise, double aDetectionThreshold=UtMath::DB_ToLinear(3.0)) override
void SetCase (int aCase)
int GetCase () const
void SetDetectorLaw (DetectorLaw aDetectorLaw)
DetectorLaw GetDetectorLaw () const
void SetNumberOfPulsesIntegrated (int aNumberOfPulsesIntegrated)
int GetNumberOfPulsesIntegrated () const
void SetProbabilityOfFalseAlarm (double aProbabilityOfFalseAlarm)
double GetProbabilityOfFalseAlarm () const
Public Member Functions inherited from wsf::SensorDetector
 SensorDetector ()
virtual ~SensorDetector ()=default
void SetDebugEnabled (bool aDebugEnabled)
 Set the debug flag for the detector.
bool DebugEnabled () const
 Returns 'true' if debugging is enabled for the detector.

Static Public Member Functions

static SensorDetectorObjectFactory (const std::string &aTypeName)
 The object factory for the Marcum-Swerling Detector type.

Additional Inherited Members

Protected Attributes inherited from wsf::SensorDetector
bool mDebugEnabled
 'true' if 'debug_detector' was specified.

Detailed Description

Computation of probability of detection using the Marcum-Swerling algorithm.

Member Enumeration Documentation

◆ DetectorLaw

Enumerator
cDL_LINEAR 
cDL_SQUARE 
cDL_LOG 

Constructor & Destructor Documentation

◆ MarcumSwerling()

wsf::MarcumSwerling::MarcumSwerling ( )

◆ ~MarcumSwerling()

wsf::MarcumSwerling::~MarcumSwerling ( )
overridedefault

Member Function Documentation

◆ Clone()

MarcumSwerling * wsf::MarcumSwerling::Clone ( ) const
overridevirtual

Implements wsf::SensorDetector.

References MarcumSwerling().

Referenced by ~MarcumSwerling().

◆ ComputeProbabilityOfDetection()

double wsf::MarcumSwerling::ComputeProbabilityOfDetection ( double aSignalToNoise,
double aDetectionThreshold = UtMath::DB_ToLinear(3.0) )
overridevirtual

Compute the probability of detection using Marcum-Swerling curves

Parameters
aSignalToNoise[input] Absolute signal-to-noise ratio
aDetectionThreshold[input] Absolute detection threshold (optional)
Returns
The probability of detection [0..1]

Implements wsf::SensorDetector.

Referenced by Initialize(), and ~MarcumSwerling().

◆ GetCase()

int wsf::MarcumSwerling::GetCase ( ) const
inline

◆ GetDetectorLaw()

DetectorLaw wsf::MarcumSwerling::GetDetectorLaw ( ) const
inline

◆ GetNumberOfPulsesIntegrated()

int wsf::MarcumSwerling::GetNumberOfPulsesIntegrated ( ) const
inline

◆ GetProbabilityOfFalseAlarm()

double wsf::MarcumSwerling::GetProbabilityOfFalseAlarm ( ) const
inline

◆ Initialize()

bool wsf::MarcumSwerling::Initialize ( double aSimTime,
WsfSensorMode * aModePtr,
size_t aBeamIndex = 0 )
overridevirtual

◆ ObjectFactory()

wsf::SensorDetector * wsf::MarcumSwerling::ObjectFactory ( const std::string & aTypeName)
static

The object factory for the Marcum-Swerling Detector type.

References MarcumSwerling().

Referenced by WsfSensorTypes::WsfSensorTypes().

◆ ProcessInput()

bool wsf::MarcumSwerling::ProcessInput ( UtInput & aInput)
overridevirtual

◆ SetCase()

void wsf::MarcumSwerling::SetCase ( int aCase)

Referenced by ProcessInput(), and ~MarcumSwerling().

◆ SetDetectorLaw()

void wsf::MarcumSwerling::SetDetectorLaw ( DetectorLaw aDetectorLaw)

Referenced by ProcessInput().

◆ SetNumberOfPulsesIntegrated()

void wsf::MarcumSwerling::SetNumberOfPulsesIntegrated ( int aNumberOfPulsesIntegrated)

Referenced by Initialize().

◆ SetProbabilityOfFalseAlarm()

void wsf::MarcumSwerling::SetProbabilityOfFalseAlarm ( double aProbabilityOfFalseAlarm)

Referenced by ProcessInput().


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