MAOS
Multithreaded Adaptive Optics Simulator
|
Functions | |
void | atm2xloc (dcell **opdx, const sim_t *simu) |
void | sim_update_etf (sim_t *simu) |
void | update_wfsflags (sim_t *simu) |
void | seeding (sim_t *simu) |
sim_t * | init_simu (const parms_t *parms, powfs_t *powfs, aper_t *aper, recon_t *recon, int iseed) |
void | free_simu (sim_t *simu) |
void | print_progress (sim_t *simu) |
void | save_skyc (powfs_t *powfs, recon_t *recon, const parms_t *parms) |
void | blend_screen_side (map_t *atm1, map_t *atm2, long overx, long overy) |
void | genatm (sim_t *simu) |
Contains a few support functions for simulation.
Propagate the atmosphere to closest xloc. skip wavefront sensing and reconstruction.
2011-04-26: opdx was incorrectly computed when atm.ht and atmr.ht does not match in number. Fixed. Do not do scaling even if fit.ht is less.
void sim_update_etf | ( | sim_t * | simu | ) |
Evolving the Sodium layer by updating the elongation transfer function.
void update_wfsflags | ( | sim_t * | simu | ) |
Update flags
void seeding | ( | sim_t * | simu | ) |
use random number dirived from input seed to seed other stream. necessary to have independant streams for different wfs in threading routines to avoid race condition and have consitent result
sim_t* init_simu | ( | const parms_t * | parms, |
powfs_t * | powfs, | ||
aper_t * | aper, | ||
recon_t * | recon, | ||
int | iseed | ||
) |
Initialize simu (of type sim_t) and various simulation data structs. Called for every seed.
void print_progress | ( | sim_t * | simu | ) |
Print out wavefront error information and timing at each time step.
Output parameters necessary to run postproc using skyc/skyc.c
overlay atm2 with atm2 according to wind direction angle and required overlapping region of at least overx*overy.
void genatm | ( | sim_t * | simu | ) |
wrap of the generic vonkarman_genatm to generate turbulence screens. Wind velocities are set for each screen.