#include <arroyo_least_squares_reconstructor.h>
Inheritance diagram for Arroyo::arroyo_least_squares_reconstructor< T >:

Public Member Functions | |
| arroyo_least_squares_reconstructor (const arroyo_least_squares_reconstructor &arroyo_lsq_recon) | |
| arroyo_least_squares_reconstructor (const char *filename) | |
| arroyo_least_squares_reconstructor (const Arroyo::iofits &iof) | |
| template<class aperture_type, class dm_ap> | |
| arroyo_least_squares_reconstructor (const aperture_type &ap, const ideal_deformable_mirror< dm_ap > &idm, const square_lenslet_array &sq_lnslt_arr, const zernike &projection_modes, bool modal_projection_in_actuator_space, double subaperture_illumination_threshold, double eigenvalue_threshold, bool aplusplus_sign_convention=false, bool store_eigenmodes=false, bool store_geometry_matrix=false) | |
| ~arroyo_least_squares_reconstructor () | |
| arroyo_least_squares_reconstructor & | operator= (const arroyo_least_squares_reconstructor &arroyo_lsq_recon) |
| void | read (const char *filename) |
| Read from file. | |
| 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 | get_eigenvalue_threshold () const |
| double | get_subaperture_illumination_threshold () const |
| vector< long > | get_centroid_axes () const |
| vector< long > | get_actuator_axes () const |
| Arroyo::zernike | get_zernike_modes () const |
| bool | geometry_matrix_stored () const |
| bool | eigenmodes_stored () const |
| pixel_array< T > | get_geometry_matrix () const |
| int | get_nactuator_eigenmodes () const |
| int | get_ncentroid_eigenmodes () const |
| double | get_eigenvalue (int mode_number) const |
| template<class U> | |
| double | get_actuator_eigenmode (int mode_number, pixel_array< U > &actuator_mode) const |
| double | get_centroid_eigenmode (int mode_number, Shack_Hartmann_centroids ¢roid_mode) const |
| void | reconstruct_zernike_residuals (const Arroyo::Shack_Hartmann_centroids &shcentroids, Arroyo::zernike &znke) const |
| void | reconstruct_zonal_residuals (const Arroyo::Shack_Hartmann_centroids &shcentroids, Arroyo::pixel_array< double > &pixarr) const |
| void | reconstruct_residuals (const Arroyo::Shack_Hartmann_centroids &shcentroids, Arroyo::zernike &znke, Arroyo::pixel_array< double > &pixarr) const |
Protected Member Functions | |
| arroyo_least_squares_reconstructor () | |
Protected Attributes | |
| vector< long > | actuator_axes |
| Actuator axes. | |
| vector< long > | centroid_axes |
| Lenslet axes. | |
| zernike | projected_modes |
| Projected modes. | |
| bool | eigenmodes_stored_in_instance |
| double | eigenvalue_threshold |
| bool | geometry_matrix_stored_in_instance |
| bool | app_sign_convention |
| double | subaperture_illumination_threshold |
| pixel_array< T > | geometry_matrix |
| pixel array to contain the geometry matrix G | |
| pixel_array< T > | g_gtranspose_eigenmodes |
| pixel array to contain the eigenmodes of the matrix GG^{T} | |
| pixel_array< T > | gtranspose_g_eigenmodes |
| pixel array to contain the matrix G^{T}G | |
| pixel_array< T > | sqrt_eigenvalues |
| pixel array to contain the square roots of the eigenvalues | |
|
|||||||||
|
Null constructor |
|
||||||||||
|
Copy constructor |
|
||||||||||
|
Construct from file |
|
||||||||||
|
Construct from iofits object |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Construct a least squares reconstructor from an aperture, an ideal deformable mirror, and a square lenslet array. The influence function of the ideal deformable mirror is assumed to be pyramidal. The aperture dimensions, deformable mirror actuator pitch, and the lenslet pitch are used together with the three frames from each of these objects to define the geometrical registration of the pupil, actuators and subapertures. Arbitrary misregistration, magnification, tip and tilt, and rotation are handled by this constructor. A geometry matrix for the configuration is generated and then inverted using the singular value decomposition algortihm from LAPACK. NOTE - currently only Fried geometry is supported The subaperture illumination threshold argument to this function allows one to zero geometry matrix elements corresponding to actuator influence functions and subapertures that overlap by less than the threshold value. This value should lie between zero and one. The eigenvalue threshold argument to this function allows one to remove modes from the reconstructor with eigenvalues lower than the threshold. This argument is interpreted as the ratio between the threshold eigenvalue and the largest eigenvalue, and its value should lie between zero and one. |
|
|||||||||
|
Destructor |
|
|||||||||
|
Indicate whether the geometry matrix was stored |
|
|||||||||
|
Indicate whether the geometry matrix was stored |
|
|||||||||
|
Get dimensions of pixel array returned by the reconstructor Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||||||||||||
|
Retrieve an actuator eigenmode. This function returns the eigenvalue of the mode. If the reconstructor was constructed without saving the eigenmodes, this function throws an error. If the mode number is out of range, this function throws an error. |
|
|||||||||
|
Get dimensions of centroid measurements passed to the reconstructor Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||||||||
|
Retrieve a centroid eigenmode. This function returns the eigenvalue of the mode. If the reconstructor was constructed without saving the eigenmodes, this function throws an error. If the mode number is out of range, this function throws an error. |
|
||||||||||
|
Retrieve the eigenvalue for a particular mode If the reconstructor was constructed without saving the eigenmodes, this function throws an error. If the mode number is out of range, this function throws an error. Note - number of eigenvalues is equal to the number of actuator eigenmodes |
|
|||||||||
|
Get the eigenvalue threshold used in constructing the reconstructor |
|
|||||||||
|
Retrieve the pixel array containing the geometry matrix G If the reconstructor was constructed without saving the geometry matrix, this function throws an error. |
|
|||||||||
|
Get the number of actuator eigenmodes If the reconstructor was constructed without saving the eigenmodes, this function throws an error. |
|
|||||||||
|
Get the number of centroid eigenmodes If the reconstructor was constructed without saving the eigenmodes, this function throws an error. |
|
|||||||||
|
Get the subaperture illumination threshold used in constructing the reconstructor |
|
|||||||||
|
Get a zernike instance that contains information about which modes are returned by the reconstructor. This instance is minimally sized so as to hold the largest mode returned by the reconstructor. Each element of this instance is initialized to unity if the corresponding mode is returned by the reconstructor, and to zero if it is not Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||
|
Operator = |
|
||||||||||||||||
|
Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||
|
Read from iofits Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||
|
Read from file.
Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||||||||||||
|
Reconstruct the residuals from Shack Hartmann centroid data This reconstructor reconstructs a zernike instance with tip and tilt modes, and a pixel array containing zonal residuals Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||||||||
|
Reconstruct the zernike residuals from Shack Hartmann centroid data This reconstructor reconstructs a zernike instance with tip and tilt modes Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||||||||
|
Reconstruct the zonal residuals from a Shack Hartmann centroid class instance Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||
|
Write to iofits Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
||||||||||
|
Write to file Implements Arroyo::zernike_projected_zonal_reconstructor. |
|
|||||
|
Actuator axes.
|
|
|||||
|
|
|
|||||
|
Lenslet axes.
|
|
|||||
|
|
|
|||||
|
|
|
|||||
|
pixel array to contain the eigenmodes of the matrix GG^{T}
|
|
|||||
|
pixel array to contain the geometry matrix G
|
|
|||||
|
|
|
|||||
|
pixel array to contain the matrix G^{T}G
|
|
|||||
|
Projected modes.
|
|
|||||
|
pixel array to contain the square roots of the eigenvalues
|
|
|||||
|
|
1.3.9.1