mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
Loading...
Searching...
No Matches
aoSystemT Struct Reference

AO-system test type that forces local template instantiation under sanitizers.

Definition at line 26 of file fourierTemporalPSD_test.cpp.

Inheritance diagram for aoSystemT:

Additional Inherited Members

Public Member Functions inherited from mx::AO::analysis::aoSystem< double, mx::AO::analysis::vonKarmanSpectrum< double > >
 aoSystem ()
 Default c'tor.
 ~aoSystem ()
 Destructor.
void loadGuyon2005 ()
 Load the default parameters from Guyon, 2005 [14].
void loadMagAOX ()
 Load parameters corresponding to the MagAO-X system.
void loadGMagAOX ()
 Load parameters corresponding to the G-MagAO-X system.
void D (realT nD)
 Set the value of the primary mirror diameter.
realT D ()
 Get the value of the primary mirror diamter.
void d_min (const std::vector< realT > &nd)
 Set the minimum subaperture sampling for each WFS mode.
void d_min (int idx, realT nd)
 Set the minimum subaperture sampling for a given WFS mode.
realT d_min (size_t idx)
 Get the minimum subaperture sampling for a given WFS mode.
std::vector< realT > d_min ()
 Get the minimum subaperture sampling for all WFS modes.
void optd (bool od)
 Set whether or not the value of d is optimized or just set to m_d_min.
bool optd ()
 Get the value of m_optd.
void optd_delta (realT odd)
 Set the fractional change in actuator spacing for optimization.
realT optd_delta ()
 Get the value of the fractional change in actuator spacing for optimization..
void wfsBeta (const wfsT &w)
 Set the WFS Beta pointer.
void wfsBeta (const wfsT *w)
 Set the WFS Beta pointer.
wfs< realT, std::ostream > * wfsBeta ()
 Get the WFS Beta pointer.
realT beta_p (realT m, realT n)
 Get the value of beta_p for a spatial frequency.
realT beta_r (realT m, realT n)
 Get the value of beta_r for a spatial frequency.
void opticalGain (realT og)
 Set the value of the Optical Gain.
realT opticalGain ()
 Get the value of the optical gain.
void lam_wfs (realT nlam)
 Set the value of the WFS wavelength.
realT lam_wfs ()
 Get the value of the WFS wavelength.
void npix_wfs (const std::vector< realT > &npix)
 Set the number of pixels in the WFS for each WFS mode.
void npix_wfs (int idx, realT npix)
 Set the number of pixels in the WFS for a given WFS mode.
realT npix_wfs (size_t idx)
 Get the number of pixels in the WFS for a given WFS mode.
std::vector< realT > npix_wfs ()
 Get the number of pixels in the WFS for all WFS modes.
void ron_wfs (const std::vector< realT > &nron)
 Set the value of the WFS readout noise for each WFS mode.
void ron_wfs (int idx, realT nron)
 Set the value of the WFS readout noise for a given bining mode.
realT ron_wfs (size_t idx)
 Get the value of the WFS readout noise for a given WFS mode.
std::vector< realT > ron_wfs ()
 Get the value of the WFS readout noise for all WFS modes.
void Fbg (const std::vector< realT > &fbg)
 Set the value of the background fluxes.
void Fbg (int idx, realT fbg)
 Set a single value of the background flux for a given WFS mode.
realT Fbg (size_t idx)
 Get the value of the background flux for a given WFS mode.
std::vector< realT > Fbg ()
 Get the value of the background flux for all WFS modes.
void minTauWFS (const std::vector< realT > &ntau)
 Set the value of the minimum WFS exposure times.
void minTauWFS (size_t idx, realT ntau)
 Set a single value of the minimum WFS exposure time for a given WFS mode.
realT minTauWFS (size_t idx)
 Get the value of the minimum WFS exposure time for a given binning.
std::vector< realT > minTauWFS ()
 Get the values of the minimum WFS exposure time.
void bin_npix (bool bnp)
 Set the value of the pixel binning flag.
bool bin_npix ()
 Get the value of the pixel binngin flag.
int bin_opt ()
 Get the value of the optimum binning factor/index.
void tauWFS (realT ntau)
 Set the value of the WFS exposure time.
realT tauWFS ()
 Get the value of the minimum WFS exposure time.
void deltaTau (realT ndel)
 Set the value of m_deltaTau.
realT deltaTau ()
 Get the value of m_deltaTau.
void optTau (bool ot)
 Set the value of m_optTau.
bool optTau ()
 Get the value of m_optTau.
void lam_sci (realT nlam)
 Set the science wavelength.
realT lam_sci ()
 Get the science wavelength.
void zeta (realT nz)
 Set the zenith angle, and its secant.
realT zeta ()
 Get the zenith angle.
realT secZeta ()
 Get the zecant of the zenith angle.
void fit_mn_max (int mnm)
 Set the value of m_fit_mn_max.
int fit_mn_max ()
 Get the value of m_fit_mn_max.
void circularLimit (bool cl)
 Set the value of the circularLimit flag.
bool circularLimit ()
 Get the value of the circularLimit flag.
void spatialFilter_ku (realT ku)
 Set the value of spatialFilter_ku.
realT spatialFilter_ku ()
 Get the value of spatialFilter_ku.
void spatialFilter_kv (realT kv)
 Set the value of spatialFilter_kv.
realT spatialFilter_kv ()
 Get the value of spatialFilter_kv.
void ncp_wfe (realT nwfe)
 Set the value of the non-common path WFE.
realT ncp_wfe ()
 Get the value of the non-common path WFE.
void ncp_alpha (realT alpha)
 Set the value of the non-common path WFE PSD index.
realT ncp_alpha ()
 Get the value of the non-common path WFE PSD index.
void F0 (realT nF0)
 Set the value of the 0 magnitude photon rate.
realT F0 ()
 Get the value of the 0 magnitude photon rate.
void starMag (realT nmag)
 Set the value of the Star's magnitude.
realT starMag ()
 Get the value of the Star's magnitude.
realT Fg (realT mag)
 The photon flux at a given star magnitude.
realT Fg ()
 Get the photon rate at the current Star magnitude.
const Eigen::Array< int, -1, -1 > & controlledModes ()
 Access the array of controlledModes.
realT ncpError (int m, int n)
 Calculate the NCP variance at a spatial frequency.
realT ncpError ()
 Calculate the total NCP variance in rad^2.
std::ostream & dumpAOSystem (std::ostream &ios)
 Output current parameters to a stream.
void setupConfig (app::appConfigurator &config)
 Setup the configurator to configure this class.
error_t loadConfig (app::appConfigurator &config)
 Load the configuration of this class from a configurator.
realT signal2Noise2 (realT &Nph, realT tau_wfs, realT d, int b)
 Calculate the terms of the signal to noise ratio squared (S/N)^2 for the WFS measurement.
realT measurementError (realT m, realT n, realT d, int b)
 Calculate the measurement noise at a spatial frequency and specified actuator spacing.
realT measurementErrorTotal ()
 Calculate the total measurement error over all corrected spatial frequencies.
realT timeDelayError (realT m, realT n, realT d, int b)
 Calculate the time delay at a spatial frequency at the optimum exposure time and the specified actuator spacing.
realT timeDelayErrorTotal ()
 Calculate the time delay error over all corrected spatial frequencies.
realT fittingError (realT m, realT n)
 Calculate the fitting error at a specific spatial frequency.
realT fittingErrorTotal ()
 Calculate the total fitting error over all uncorrected spatial frequencies.
realT chromScintOPDError (int m, int n)
 Calculate the wavefront error due to scintillation chromaticity in the OPD at a spatial frequency.
realT chromScintOPDErrorTotal ()
 Calculate the wavefront error due to scintillation chromaticity in the OPD over all spatial frequencies.
realT chromScintAmpError (int m, int n)
 Calculate the wavefront error due to scintillation chromaticity in amplitude for a given spatial frequency.
realT chromScintAmpError ()
 Calculate the wavefront error due to scintillation chromaticity in amplitude over all spatial frequencies.
realT chromIndexError (int m, int n)
 Calculate the wavefront error due to chromaticity in the index of refraction at a given spatial frequency.
realT chromIndexErrorTotal ()
 Calculate the wavefront error due to chromaticity in the index of refraction at a specific spatial frequency.
realT dispAnisoOPDError (int m, int n)
 Calculate the wavefront error due to dispersive anisoplanatism in the OPD at a given spatial frequency.
realT dispAnisoOPDErrorTotal ()
 Calculate the wavefront error due to dispersive anisoplanatism in the OPD over all specific spatial frequencies.
realT dispAnisoAmpError ()
 Calculate the wavefront error due to dispersive anisoplanatism in the amplitude at a specific spatial frequency.
realT optimumTauWFS (realT m, realT n, realT d, int b)
 Calculate the optimum exposure time for a given spatial frequency at a specified actuator spacing.
realT optimumTauWFS (realT m, realT n)
 Calculate the optimum exposure time for a given spatial frequency at the optimum actuator spacing.
realT d_opt ()
 Calculate the optimum actuator spacing.
realT C_ (int m, int n, bool normStrehl, varFuncT varFunc, int doFittingError)
 Worker function for raw contrast fuctions.
void C_Map (imageT &im, CfuncT Cfunc, bool normStrehl)
 Worker function for the contrast-map functions.
realT C0var (realT m, realT n)
 Calculate the residual variance due to uncorrected phase at a spatial frequency.
realT C0 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to uncorrected phase, C0.
void C0Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C0.
realT C1var (realT m, realT n)
 Calculate the residual variance due to uncorrected amplitude at a spatial frequency.
realT C1 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to uncorrected amplitude, C1.
void C1Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C1.
realT C2var (realT m, realT n)
 Calculate the residual variance due to measurement and time delay errors in phase/OPD at a spatial frequency.
realT C2 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to measurement and time delay errors in phase/OPD at a spatial frequency.
void C2Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C2().
realT C3var (realT m, realT n)
 Calculate the residual variance due to measurement and time delay errors in amplitude at a spatial frequency.
realT C3 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to measurement and time delay errors in amplitude at a spatial frequency.
void C3Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C3.
realT C4var (realT m, realT n)
 Calculate the residual variance due to scintilation-OPD chromaticity.
realT C4 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to scintilation-OPD chromaticity.
void C4Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C4.
realT C5var (realT m, realT n)
 Calculate the residual variance due to to scintilation-amplitude chromaticity.
realT C5 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to scintilation-amplitude chromaticity.
void C5Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C5.
realT C6var (realT m, realT n)
 Calculate the residual variance due to chromaticity of the index of refraction of air.
realT C6 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to chromaticity of the index of refraction of air.
void C6Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C6.
realT C7var (realT m, realT n)
 Calculate the residual variance due to dispersive anisoplanatism.
realT C7 (realT m, realT n, bool normStrehl=true)
 Calculate the contrast due to dispersive anisoplanatism.
void C7Map (imageT &map, bool normStrehl)
 Calculate a 2D map of contrast C7.
realT wfeVar ()
 Get the current value of the total WFE variance.
realT strehl (realT d, int b)
 Get the Strehl ratio for a given actuator pitch and WFS WFS mode.
realT strehl ()
 Get the current Strehl ratio.
void calcStrehl ()
 Calculate the component WFE, total WFE, and Strehl ratio.
Protected Attributes inherited from mx::AO::analysis::aoSystem< double, mx::AO::analysis::vonKarmanSpectrum< double > >
realT m_D
 Telescope diameter [m].
std::vector< realT > m_d_min
 Minimum AO system actuator pitch [m]. One per WFS mode.
realT m_d_opt
 Current optimum AO system actuator pitch [m].
bool m_optd
realT m_optd_delta
wfs< realT, std::ostream > * m_wfsBeta
 The WFS beta_p class.
bool m_ownWfsBeta
 Flag indicating if the WFS beta_p pointer is owned by this instance.
realT m_opticalGain
realT m_lam_wfs
 WFS wavelength [m].
std::vector< realT > m_npix_wfs
 Number of WFS pixels. One per WFS mode.
std::vector< realT > m_ron_wfs
 WFS readout noise [electrons/pix]. One per WFS mode.
std::vector< realT > m_Fbg
 Background flux, [photons/sec/pixel]. One per WFS mode.
std::vector< realT > m_minTauWFS
 Minimum WFS exposure time [sec]. One per WFS mode.
bool m_bin_npix
 Flag controlling whether or not to bin WFS pixels according to the actuator spacing.
int m_bin_opt
realT m_tauWFS
 Actual WFS exposure time [sec].
realT m_deltaTau
 Loop latency [sec].
bool m_optTau
realT m_lam_sci
 Science wavelength [m].
realT m_zeta
 Zenith angle [radians].
realT m_secZeta
 Secant of the Zenith angle (calculated).
int m_fit_mn_max
 Maximum spatial frequency index to use for fitting error calculation.
bool m_circularLimit
 Flag to indicate that the spatial frequency limit is circular, not square.
realT m_spatialFilter_ku
 The spatial filter cutoff in u, [m^-1].
realT m_spatialFilter_kv
 The spatial filter cutoff in v, [m^-1].
realT m_ncp_wfe
 Static WFE [m rms].
realT m_ncp_alpha
 Power-law exponent for the NCP aberations. Default is 2.
realT m_F0
 0 mag flux from star at WFS [photons/sec]
realT m_starMag
 The magnitude of the star.
bool m_specsChanged
 Flag to indicate that a specification has changed.
bool m_dminChanged
 Flag to indicate that d_min has changed.
Eigen::Array< int, -1, -1 > m_controlledModes
 Map of which modes are under control. Set by calcStrehl.
realT m_wfeMeasurement
 Total WFE due to measurement a error [rad^2 at m_lam_sci].
realT m_wfeTimeDelay
 Total WFE due to time delay [rad^2 at m_lam_sci].
realT m_wfeFitting
 Total WFE due to fitting error [rad^2 at m_lam_sci].
realT m_wfeChromScintOPD
 Total WFE due to the chromaticity of scintillation OPD [rad^2 at lam_sc].
realT m_wfeChromIndex
 Total WFE due to the chromaticity of the index of refraction [rad^2 at lam_Sci].
realT m_wfeAnisoOPD
 Total WFE due to dispersive anisoplanatism OPD.
realT m_wfeNCP
 Total WFE due to NCP errors [rad^2 at m_lam_sci].
realT m_wfeVar
 The WFE variance, in meters^2. Never use this directly, instead use wfeVar().
realT m_strehl
 Strehl ratio, a calculated quantity. Never use this directdy, instead use strehl().

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