![]() |
MAOS
Multithreaded Adaptive Optics Simulator
|
Macros | |
#define | mapwrite(out, A...) writebin(dmat_cast(out), A) |
#define | mapread(A...) map_convert(dmat_cast(readbin_id(M_MAP, 0, A))) |
#define | mapcellread(A...) (mapcell*)cellconvert(readbin_id(M_MAP, 1, A), (cell * (*)(cell *))map_convert) |
#define | mapcellread_mmap(A...) (mapcell*)cellconvert((cell*)dcellread_mmap(A), (cell * (*)(cell *))map_convert) |
#define | mapcellnew (mapcell*)cellnew |
#define | mapccellnew (mapccell*)cellnew |
#define | rmapread(A...) rmap_convert(dmat_cast(readbin_id(M_RMAP, 0, A))) |
#define | rmapwrite(out, A...) writebin(dmat_cast(out), A) |
#define | rmapcellnew (rmapcell*)cellnew |
#define | rmapccellnew (rmapccell*)cellnew |
#define | rmapfree(A) cellfree(A) |
#define | mapfree(A) cellfree(A) |
Functions | |
map_t * | map_convert (dmat *A) |
Convert a dmat to map object. Ensure that the type is properly initialized. | |
rmap_t * | rmap_convert (dmat *A) |
Convert a dmat to rmap object. Ensure that the type is properly initialized. | |
map_t * | mapnew (long nx, long ny, real dx, real dy) |
map_t * | mapnew2 (map_t *A) |
map_t * | mapref (const map_t *A) |
map_t * | mapdup (const map_t *A) |
void | mapcircle (map_t *map, real r, real val) |
void | map_d_din (map_t *map, real *d, real *din) |
void | create_metapupil (map_t **map, long *nx, long *ny, dmat *dirs, real D, real ht, real dx, real dy, real offset, real guard, long ninx, long niny, int pad, int square) |
void | map_make_keywords (cell *map) |
void | map_parse_keywords (map_t *in) |
void | rmap_make_keywords (cell *map) |
void | rmap_parse_keywords (rmap_t *in) |
void | map_blend (map_t *atm1, map_t *atm2, long overx, long overy) |
This file defines functions relates to map_t, etc.
Convert a dmat to map object. Ensure that the type is properly initialized.
A | input dmat object. will be changed in place. |
Convert a dmat to rmap object. Ensure that the type is properly initialized.
A | input dmat object. will be changed in place. |
Find the inner and outer diameter of an amplitude map contained in map_t.
void create_metapupil | ( | map_t ** | mapout, |
long * | nxout, | ||
long * | nyout, | ||
dmat * | dirs, | ||
real | D, | ||
real | ht0, | ||
real | dx, | ||
real | dy, | ||
real | offset, | ||
real | guard, | ||
long | ninx, | ||
long | niny, | ||
int | pad, | ||
int | square | ||
) |
create a metapupil map, with size nx*ny, origin at (ox,oy), sampling of dx, dy, height of ht, that can cover all the directions specified in dirs
offset: distance in pixel from the point closest to the origin to origin (right side). 0: there is a point on the origin. 1/2: the closest point to origin is 1/2 pixel.
pad!=0: round nx, ny to power of 2.
[out] | mapout | map |
[out] | nxout | nx |
[out] | nyout | ny |
[in] | dirs | All Directions to cover (thetax, thetay, hs, hc) |
[in] | D | Diameter (meter) |
[in] | ht0 | Conjugation Height (meter) |
[in] | dx | Sampling along x (meter) |
[in] | dy | Sampling along y (meter) |
[in] | offset | Fractional offset of point closet from origin. between [0, 1) |
[in] | guard | Width of guard area, in meter |
[in] | ninx | Suggested size along x |
[in] | niny | Suggested size along y |
[in] | pad | Increase nx, ny to power of 2 |
[in] | square | Full square/rectangular grid |
parse keywords for map_t. keywords are used to specify parameters:
Parse keywords for rmap_t.
keywords are used to specify parameters: