mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
|
Structure to manage the Fourier mode covariance calculation, passed to integration functions.
realT | a floating point type used for all calculations. As of Nov 2016 must be double due to gsl_integration. |
aosysT | the type of the AO system structure |
Definition at line 249 of file fourierCovariance.hpp.
#include <ao/analysis/fourierCovariance.hpp>
Public Member Functions | |
fourierCovariance () | |
Constructor. More... | |
~fourierCovariance () | |
Destructor. More... | |
realT | getVariance (realT &error) |
Calculate the covariance between the two modes. More... | |
Public Attributes | |
aosysT * | aosys {nullptr} |
Pointer to an AO system, which contains the relevant spatial PSD of turbulence. More... | |
bool | useBasic {false} |
Flag controlling use of basic or modified Fourier modes. If true, the basic sin/cos modes are used. If false (default), the modified modes are u sed. More... | |
int | p |
p-index of the unprimed mode. +/-1 for modified modes. If basic, then +1==>cosine, -1==>sine. More... | |
realT | m |
The m-index of the unprimed mode, corresponding to the \( k_u = m/D \) component of spatial frequency. More... | |
realT | n |
The n-indexof the unprimed mode, corresponding to the \( k_v = n/D \) component of spatial frequency. More... | |
int | pp |
p-index of the primed mode. +/-1 for modified modes. If basic, then +1==>cosine, -1==>sine. More... | |
realT | mp |
The m-index of the primed mode, corresponding to the \( k_u = m/D \) component of spatial frequency. More... | |
realT | np |
The n-indexof the primed mode, corresponding to the \( k_v = n/D \) component of spatial frequency. More... | |
realT | k |
Spatial frequency being calculated, passed for use in the integrand worker functions. More... | |
realT | mnCon {0} |
The maximum controlled value of spatial frequency (k*D). If < 0 then not controlled. More... | |
realT | absTol {1e-7} |
Absolute tolerance for the radial integral. Default is 1e-7. More... | |
realT | relTol {1e-7} |
Relative tolerance for the radial integral. Default is 1e-7. More... | |
gsl_integration_workspace * | phi_w |
Working memory for the azimuthal integral. More... | |
gsl_integration_workspace * | k_w |
Working memory for the radial integral. More... | |
|
inline |
Constructor.
Definition at line 294 of file fourierCovariance.hpp.
References mx::AO::analysis::fourierCovariance< realT, aosysT >::k_w, and mx::AO::analysis::fourierCovariance< realT, aosysT >::phi_w.
|
inline |
Destructor.
Definition at line 301 of file fourierCovariance.hpp.
References mx::AO::analysis::fourierCovariance< realT, aosysT >::k_w, and mx::AO::analysis::fourierCovariance< realT, aosysT >::phi_w.
|
inline |
Calculate the covariance between the two modes.
document me
handle gsl errors
Definition at line 311 of file fourierCovariance.hpp.
References mx::AO::analysis::fourierCovariance< realT, aosysT >::absTol, mx::AO::analysis::fourierCovariance< realT, aosysT >::k_w, and mx::AO::analysis::fourierCovariance< realT, aosysT >::relTol.
Referenced by mx::AO::analysis::fourierVarVec().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::absTol {1e-7} |
Absolute tolerance for the radial integral. Default is 1e-7.
Definition at line 282 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), and mx::AO::analysis::fourierCovariance< realT, aosysT >::getVariance().
aosysT* mx::AO::analysis::fourierCovariance< realT, aosysT >::aosys {nullptr} |
Pointer to an AO system, which contains the relevant spatial PSD of turbulence.
Definition at line 252 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::k |
Spatial frequency being calculated, passed for use in the integrand worker functions.
Definition at line 276 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::kInt(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
gsl_integration_workspace* mx::AO::analysis::fourierCovariance< realT, aosysT >::k_w |
Working memory for the radial integral.
Definition at line 291 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovariance< realT, aosysT >::fourierCovariance(), mx::AO::analysis::fourierCovariance< realT, aosysT >::~fourierCovariance(), and mx::AO::analysis::fourierCovariance< realT, aosysT >::getVariance().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::m |
The m-index of the unprimed mode, corresponding to the \( k_u = m/D \) component of spatial frequency.
Definition at line 261 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::mnCon {0} |
The maximum controlled value of spatial frequency (k*D). If < 0 then not controlled.
Definition at line 279 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), and mx::AO::analysis::phiInt_mod().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::mp |
The m-index of the primed mode, corresponding to the \( k_u = m/D \) component of spatial frequency.
Definition at line 270 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::n |
The n-indexof the unprimed mode, corresponding to the \( k_v = n/D \) component of spatial frequency.
Definition at line 264 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::np |
The n-indexof the primed mode, corresponding to the \( k_v = n/D \) component of spatial frequency.
Definition at line 273 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
int mx::AO::analysis::fourierCovariance< realT, aosysT >::p |
p-index of the unprimed mode. +/-1 for modified modes. If basic, then +1==>cosine, -1==>sine.
Definition at line 258 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
gsl_integration_workspace* mx::AO::analysis::fourierCovariance< realT, aosysT >::phi_w |
Working memory for the azimuthal integral.
Definition at line 288 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovariance< realT, aosysT >::fourierCovariance(), mx::AO::analysis::fourierCovariance< realT, aosysT >::~fourierCovariance(), and mx::AO::analysis::kInt().
int mx::AO::analysis::fourierCovariance< realT, aosysT >::pp |
p-index of the primed mode. +/-1 for modified modes. If basic, then +1==>cosine, -1==>sine.
Definition at line 267 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), mx::AO::analysis::phiInt_basic(), and mx::AO::analysis::phiInt_mod().
realT mx::AO::analysis::fourierCovariance< realT, aosysT >::relTol {1e-7} |
Relative tolerance for the radial integral. Default is 1e-7.
Definition at line 285 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierVarVec(), and mx::AO::analysis::fourierCovariance< realT, aosysT >::getVariance().
bool mx::AO::analysis::fourierCovariance< realT, aosysT >::useBasic {false} |
Flag controlling use of basic or modified Fourier modes. If true, the basic sin/cos modes are used. If false (default), the modified modes are u sed.
Definition at line 255 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::kInt().