mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
Loading...
Searching...
No Matches
mx::AO::sim::turbLayer< _aoSystemT, _verboseT > Struct Template Reference

template<typename _aoSystemT, class _verboseT = mx::verbose::d>
struct mx::AO::sim::turbLayer< _aoSystemT, _verboseT >

Simulation of a single turbulent layer.

Todo

document this

add facility for changing interpolator

Definition at line 62 of file turbLayer.hpp.

#include <ao/sim/turbLayer.hpp>

Public Member Functions

void genDealloc ()
 Deallocate memory necessary for phase screen generation.
void shift (realT dt)
 Shift to a timestep.
void initRandom ()
 Seed the uniform deviation. Call this if you intend to use shiftRandom.
void shiftRandom (bool nofract=false)
 Shift by a random amount using the uniform distribution.

Public Attributes

mx::math::uniDistT< realT > uniVar
 Uniform deviate, used in shiftRandom.

Member Function Documentation

◆ genDealloc()

template<typename aoSystemT, class verboseT>
void mx::AO::sim::turbLayer< aoSystemT, verboseT >::genDealloc ( )

Deallocate memory necessary for phase screen generation.

Definition at line 288 of file turbLayer.hpp.

◆ initRandom()

template<typename aoSystemT, class verboseT>
void mx::AO::sim::turbLayer< aoSystemT, verboseT >::initRandom ( )

Seed the uniform deviation. Call this if you intend to use shiftRandom.

This only needs to be called once.

Definition at line 343 of file turbLayer.hpp.

References uniVar.

◆ shift()

template<typename aoSystemT, class verboseT>
void mx::AO::sim::turbLayer< aoSystemT, verboseT >::shift ( realT dt)

Shift to a timestep.

Parameters
[in]dtis the new timestep.

Definition at line 295 of file turbLayer.hpp.

References mx::improc::imageShift(), and mx::improc::imageShiftWP().

◆ shiftRandom()

template<typename aoSystemT, class verboseT>
void mx::AO::sim::turbLayer< aoSystemT, verboseT >::shiftRandom ( bool nofract = false)

Shift by a random amount using the uniform distribution.

Call initRandom() once before calling this method.

Parameters
[in]nofractif true then the fractional part is ignored, and only a whole-pixel shift is executed. Default=false

Definition at line 349 of file turbLayer.hpp.

References mx::improc::imageShift(), mx::improc::imageShiftWP(), and uniVar.

Member Data Documentation

◆ uniVar

template<typename _aoSystemT, class _verboseT = mx::verbose::d>
mx::math::uniDistT<realT> mx::AO::sim::turbLayer< _aoSystemT, _verboseT >::uniVar

Uniform deviate, used in shiftRandom.

Definition at line 93 of file turbLayer.hpp.

Referenced by initRandom(), and shiftRandom().


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