Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Arroyo::pseudo_open_loop_tomographic_reconstructor< precision > Class Template Reference

#include <tomographic_reconstructor.h>

Inheritance diagram for Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >:

Arroyo::AO_sim_base List of all members.

Public Member Functions

 pseudo_open_loop_tomographic_reconstructor (const emitter &target, const vector< emitter * > &guide_star_emitters, const refractive_atmospheric_model &ref_atm_model_at_zenith, double pupil_plane_pixel_scale_meters, int nsteps_in_integration, const circular_aperture &circ_ap, bool perform_SVD=true)
 pseudo_open_loop_tomographic_reconstructor (const pseudo_open_loop_tomographic_reconstructor &polc_tomo_recon)
 pseudo_open_loop_tomographic_reconstructor (const char *filename)
 pseudo_open_loop_tomographic_reconstructor (const Arroyo::iofits &iof)
 ~pseudo_open_loop_tomographic_reconstructor ()
pseudo_open_loop_tomographic_reconstructoroperator= (const pseudo_open_loop_tomographic_reconstructor &polc_tomo_recon)
void read (const char *filename)
void read (const Arroyo::iofits &iof)
void write (const char *filename) const
void write (Arroyo::iofits &iof) const
void print (std::ostream &os, const char *prefix="") const
double aperture_averaged_phase_variance (emitter &emtr, double wavelength_meters) const
double aperture_averaged_differential_phase_variance (emitter &emtr, double wavelength_meters) const
pixel_array< precision > phase_variance (emitter &emtr, double wavelength_meters) const
pixel_array< precision > differential_phase_variance (emitter &emtr, double wavelength_meters) const
pixel_array< precision > phase_covariance (emitter &emtr, int xindex, int yindex, double wavelength_meters) const
pixel_array< precision > differential_phase_covariance (emitter &emtr, int xindex, int yindex, double wavelength_meters) const
pixel_array< precision > phase_structure_function (const emitter &emtr, double wavelength_meters, int xindex, int yindex) const
basic_otf< precision > optical_transfer_function (const emitter &emtr, double wavelength_meters) const
basic_observation< precision > point_spread_function (const emitter &emtr, double wavelength_meters, double field_size_arcsecs, double oversampling_factor) const
void reconstruct (const vector< Arroyo::pixel_array< double > > &measured_phases, Arroyo::pixel_array< double > &commands) const

Static Public Attributes

int verbose_level = 0
 Verbose level.

Protected Member Functions

 pseudo_open_loop_tomographic_reconstructor ()
void initialize_aperture_mask () const
void initialize_auto_correlation_matrix (const vector< emitter * > &emtrs, precision *array) const
void initialize_cross_correlation_matrix (const emitter *emtr, const vector< emitter * > &emtrs, precision *array) const
void invert_sigma_aa_via_SVD (precision *sigma_aa)
void initialize_emitter (const emitter &emtr) const
double private_aperture_averaged_phase_variance (emitter &emtr, double wavelength_meters, bool differential) const
pixel_array< precision > private_phase_variance (emitter &emtr, double wavelength_meters, bool differential) const
pixel_array< precision > private_phase_covariance (emitter &emtr, int xindex, int yindex, double wavelength_meters, bool differential) const

Protected Attributes

vector< emitter * > guide_star_emitters
emittertarget_emitter
emitterarg_emitter
precision * sigma_ba_inv_sigma_aa
precision * sigma_ba_inv_sigma_aa_sigma_ab
precision * sigma_ba_inv_sigma_aa_sigma_ac
precision * sigma_cc
short * aperture_mask
circular_aperture circ_ap
refractive_atmospheric_model ref_atm_model_at_zenith
double pupil_plane_pixel_scale_meters
long nsteps_in_integration
long nactuators

Detailed Description

template<class precision>
class Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >

A class to hold a pseudo open loop tomographic reconstructor


Constructor & Destructor Documentation

template<class precision>
Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::pseudo_open_loop_tomographic_reconstructor  )  [inline, protected]
 

Null constructor

template<typename precision>
Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::pseudo_open_loop_tomographic_reconstructor const emitter target,
const vector< emitter * > &  guide_star_emitters,
const refractive_atmospheric_model ref_atm_model_at_zenith,
double  pupil_plane_pixel_scale_meters,
int  nsteps_in_integration,
const circular_aperture circ_ap,
bool  perform_SVD = true
 

Construct from the bits

template<typename precision>
Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::pseudo_open_loop_tomographic_reconstructor const pseudo_open_loop_tomographic_reconstructor< precision > &  polc_tomo_recon  ) 
 

Copy constructor

template<typename precision>
Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::pseudo_open_loop_tomographic_reconstructor const char *  filename  ) 
 

Construct from file

template<typename precision>
Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::pseudo_open_loop_tomographic_reconstructor const Arroyo::iofits iof  ) 
 

Construct from iofits object

template<typename precision>
Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::~pseudo_open_loop_tomographic_reconstructor  ) 
 

Virtual destructor


Member Function Documentation

template<typename precision>
double Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::aperture_averaged_differential_phase_variance emitter emtr,
double  wavelength_meters
const
 

Get aperture averaged differential variance

template<typename precision>
double Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::aperture_averaged_phase_variance emitter emtr,
double  wavelength_meters
const
 

Get aperture averaged variance

template<typename precision>
pixel_array< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::differential_phase_covariance emitter emtr,
int  xindex,
int  yindex,
double  wavelength_meters
const
 

Get variance

template<typename precision>
pixel_array< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::differential_phase_variance emitter emtr,
double  wavelength_meters
const
 

Get variance

template<class precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::initialize_aperture_mask  )  const [protected]
 

Get an array corresponding to the aperture mask Memory must be freed by the calling routine

template<class precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::initialize_auto_correlation_matrix const vector< emitter * > &  emtrs,
precision *  array
const [protected]
 

Initialize a correlation matrix

template<class precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::initialize_cross_correlation_matrix const emitter emtr,
const vector< emitter * > &  emtrs,
precision *  array
const [protected]
 

Initialize a correlation matrix

template<class precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::initialize_emitter const emitter emtr  )  const [protected]
 

Emitter initialization

template<class precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::invert_sigma_aa_via_SVD precision *  sigma_aa  )  [protected]
 

Invert sigma_aa by SVD

template<typename precision>
pseudo_open_loop_tomographic_reconstructor< precision > & Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::operator= const pseudo_open_loop_tomographic_reconstructor< precision > &  polc_tomo_recon  ) 
 

Operator =

template<typename precision>
basic_otf< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::optical_transfer_function const emitter emtr,
double  wavelength_meters
const
 

Returns a pixel array containing the long exposure optical transfer function

template<typename precision>
pixel_array< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::phase_covariance emitter emtr,
int  xindex,
int  yindex,
double  wavelength_meters
const
 

Get variance

template<typename precision>
pixel_array< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::phase_structure_function const emitter emtr,
double  wavelength_meters,
int  xindex,
int  yindex
const
 

Returns a pixel array containing the value of the structure function computed betweeen a point tp1 and all other points in the aperture. The structure function is computed on a grid that covers the aperture with sampling set by the argument pixel_scale_meters.

The point tp must lie within the aperture, or this function throws an error

template<typename precision>
pixel_array< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::phase_variance emitter emtr,
double  wavelength_meters
const
 

Get variance

template<typename precision>
basic_observation< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::point_spread_function const emitter emtr,
double  wavelength_meters,
double  field_size_arcsecs,
double  oversampling_factor
const
 

Returns a pixel array containing the long exposure point spread function

template<typename precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::print std::ostream &  os,
const char *  prefix = ""
const
 

Print

template<typename precision>
double Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::private_aperture_averaged_phase_variance emitter emtr,
double  wavelength_meters,
bool  differential
const [protected]
 

private function supporting two member functions

template<typename precision>
pixel_array< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::private_phase_covariance emitter emtr,
int  xindex,
int  yindex,
double  wavelength_meters,
bool  differential
const [protected]
 

private function supporting two member functions

template<typename precision>
pixel_array< precision > Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::private_phase_variance emitter emtr,
double  wavelength_meters,
bool  differential
const [protected]
 

private function supporting two member functions

template<typename precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::read const Arroyo::iofits iof  ) 
 

Read from iofits

template<typename precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::read const char *  filename  ) 
 

Read from file

template<typename precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::reconstruct const vector< Arroyo::pixel_array< double > > &  measured_phases,
Arroyo::pixel_array< double > &  commands
const
 

Reconstruct the zernike and zonal residuals from a Shack Hartmann centroid class instance

template<typename precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::write Arroyo::iofits iof  )  const
 

Write to iofits

template<typename precision>
void Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::write const char *  filename  )  const
 

Write to file


Member Data Documentation

template<class precision>
short* Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::aperture_mask [mutable, protected]
 

template<class precision>
emitter* Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::arg_emitter [mutable, protected]
 

template<class precision>
circular_aperture Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::circ_ap [protected]
 

template<class precision>
vector<emitter*> Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::guide_star_emitters [protected]
 

template<class precision>
long Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::nactuators [mutable, protected]
 

template<class precision>
long Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::nsteps_in_integration [protected]
 

template<class precision>
double Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::pupil_plane_pixel_scale_meters [protected]
 

template<class precision>
refractive_atmospheric_model Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::ref_atm_model_at_zenith [protected]
 

template<class precision>
precision* Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::sigma_ba_inv_sigma_aa [protected]
 

template<class precision>
precision* Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::sigma_ba_inv_sigma_aa_sigma_ab [protected]
 

template<class precision>
precision* Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::sigma_ba_inv_sigma_aa_sigma_ac [mutable, protected]
 

template<class precision>
precision* Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::sigma_cc [mutable, protected]
 

template<class precision>
emitter* Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::target_emitter [protected]
 

template<class precision>
int Arroyo::pseudo_open_loop_tomographic_reconstructor< precision >::verbose_level = 0 [static]
 

Verbose level.


The documentation for this class was generated from the following file:
Generated on Thu Nov 29 17:16:37 2007 for arroyo by  doxygen 1.3.9.1