|
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 239 of file fourierCovariance.hpp.
#include <ao/analysis/fourierCovariance.hpp>
Public Member Functions | |
| fourierCovariance () | |
| Constructor. | |
| ~fourierCovariance () | |
| Destructor. | |
| realT | getVariance (realT &error) |
| Calculate the covariance between the two modes. | |
Public Attributes | |
| aosysT * | aosys { nullptr } |
| Pointer to an AO system, which contains the relevant spatial PSD of turbulence. | |
| bool | useBasic { false } |
| int | p |
| p-index of the unprimed mode. +/-1 for modified modes. If basic, then +1==>cosine, -1==>sine. | |
| realT | m |
| The m-index of the unprimed mode, corresponding to the \( k_u = m/D \) component of spatial frequency. | |
| realT | n |
| The n-indexof the unprimed mode, corresponding to the \( k_v = n/D \) component of spatial frequency. | |
| int | pp |
| p-index of the primed mode. +/-1 for modified modes. If basic, then +1==>cosine, -1==>sine. | |
| realT | mp |
| The m-index of the primed mode, corresponding to the \( k_u = m/D \) component of spatial frequency. | |
| realT | np |
| The n-indexof the primed mode, corresponding to the \( k_v = n/D \) component of spatial frequency. | |
| realT | k |
| Spatial frequency being calculated, passed for use in the integrand worker functions. | |
| realT | mnCon { 0 } |
| The maximum controlled value of spatial frequency (k*D). If < 0 then not controlled. | |
| realT | absTol { 1e-7 } |
| Absolute tolerance for the radial integral. Default is 1e-7. | |
| realT | relTol { 1e-7 } |
| Relative tolerance for the radial integral. Default is 1e-7. | |
| gsl_integration_workspace * | phi_w |
| Working memory for the azimuthal integral. | |
| gsl_integration_workspace * | k_w |
| Working memory for the radial integral. | |
|
inline |
Constructor.
Definition at line 285 of file fourierCovariance.hpp.
References mx::AO::analysis::fourierCovariance< realT, aosysT >::k_w, mx::AO::analysis::fourierCovariance< realT, aosysT >::phi_w, and WSZ.
|
inline |
Destructor.
Definition at line 292 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 302 of file fourierCovariance.hpp.
References mx::AO::analysis::fourierCovariance< realT, aosysT >::absTol, mx::error, mx::AO::analysis::fourierCovariance< realT, aosysT >::k_w, mx::AO::analysis::fourierCovariance< realT, aosysT >::relTol, and WSZ.
Referenced by mx::AO::analysis::fourierCovarMap(), and 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 273 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 242 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 267 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 282 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 252 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 270 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 261 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 255 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 264 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 249 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 279 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 258 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 276 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), 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 246 of file fourierCovariance.hpp.
Referenced by mx::AO::analysis::fourierCovarMap(), and mx::AO::analysis::kInt().