mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
mx::AO::analysis::wfs< realT, iosT > Struct Template Reference

template<typename realT, typename iosT = std::ostream>
struct mx::AO::analysis::wfs< realT, iosT >

The ideal wavefront sensor sensitivity function.

Provides the \( \beta_p \) parameter of Guyon, 2005 [9] for the ideal WFS.

This is the base class for all WFS.

Template Parameters
realTis the floating point type used for calculations
iosTis an output stream type with operator << defined (default is std::ostream)

Definition at line 38 of file aoWFS.hpp.

#include <ao/analysis/aoWFS.hpp>

Public Member Functions

 wfs ()
 Constructor. More...
 
virtual ~wfs ()
 Destructor. More...
 
virtual realT beta_p (int m, int n, realT D, realT d, realT r0)
 Get the photon noise sensitivity at a spatial frequency. More...
 
virtual realT beta_r (int m, int n, realT D, realT d, realT r0)
 Get the read noise sensitivity at a spatial frequency. More...
 
virtual iosT & dumpWFS (iosT &ios)
 Dump the details of the WFS to an io stream. More...
 

Constructor & Destructor Documentation

◆ wfs()

template<typename realT , typename iosT = std::ostream>
mx::AO::analysis::wfs< realT, iosT >::wfs ( )
inline

Constructor.

Only sets the value of _id.

Definition at line 45 of file aoWFS.hpp.

◆ ~wfs()

template<typename realT , typename iosT = std::ostream>
virtual mx::AO::analysis::wfs< realT, iosT >::~wfs ( )
inlinevirtual

Destructor.

Declared virtual so more complicated derived types can be created.

Definition at line 53 of file aoWFS.hpp.

Member Function Documentation

◆ beta_p()

template<typename realT , typename iosT = std::ostream>
virtual realT mx::AO::analysis::wfs< realT, iosT >::beta_p ( int  m,
int  n,
realT  D,
realT  d,
realT  r0 
)
inlinevirtual

Get the photon noise sensitivity at a spatial frequency.

The sensitivity of the ideal WFS is 1 at all k [9].

Returns
the sensitivity to photon noise parameter
Parameters
[in]mthe spatial frequency index for u (not used by this WFS)
[in]nthe spatial frequency index for v (not used by this WFS)
[in]Dthe telescope diameter (not used by this WFS)
[in]dthe sub-ap spacing (not used by this WFS)
[in]r0Fried's parameter (not used by this WFS)

Reimplemented in mx::AO::analysis::calculatedWFS< realT, iosT >, mx::AO::analysis::shwfs< realT, iosT >, mx::AO::analysis::pywfsModAsymptotic< realT, iosT >, and mx::AO::analysis::pywfsUnmod< realT, iosT >.

Definition at line 63 of file aoWFS.hpp.

Referenced by mx::AO::analysis::wfs< realT, iosT >::beta_r().

◆ beta_r()

template<typename realT , typename iosT = std::ostream>
virtual realT mx::AO::analysis::wfs< realT, iosT >::beta_r ( int  m,
int  n,
realT  D,
realT  d,
realT  r0 
)
inlinevirtual

Get the read noise sensitivity at a spatial frequency.

Here we assume beta_r is the same as beta_p.

Returns
the sensitivity to read noise parameter
Parameters
[in]mthe spatial frequency index for u (not used by this WFS)
[in]nthe spatial frequency index for v (not used by this WFS)
[in]Dthe telescope diameter (not used by this WFS)
[in]dthe sub-ap spacing (not used by this WFS)
[in]r0Fried's parameter (not used by this WFS)

Reimplemented in mx::AO::analysis::calculatedWFS< realT, iosT >, mx::AO::analysis::shwfs< realT, iosT >, mx::AO::analysis::pywfsModAsymptotic< realT, iosT >, and mx::AO::analysis::pywfsUnmod< realT, iosT >.

Definition at line 85 of file aoWFS.hpp.

References mx::AO::analysis::wfs< realT, iosT >::beta_p().

◆ dumpWFS()

template<typename realT , typename iosT = std::ostream>
virtual iosT& mx::AO::analysis::wfs< realT, iosT >::dumpWFS ( iosT &  ios)
inlinevirtual

Dump the details of the WFS to an io stream.

Is virtual so that derived types can add parameters.

Definition at line 98 of file aoWFS.hpp.

Referenced by mx::AO::analysis::calculatedWFS< realT, iosT >::dumpWFS().


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