Data Structures | |
struct | MAP_DEPTH_MATRIX |
Enumerations | |
enum | DataSpace { REAL_SPACE, WAVE_SPACE } |
Functions | |
MAP_DEPTH_MATRIX | newMapDepthMatrix (int x, int y, int z, int t, bool shift) |
MAP_DEPTH_MATRIX | newMapDepthMatrixV (int x, int y, int z, int t, int v, bool shift) |
void | destroyMapDepthMatrix (MAP_DEPTH_MATRIX td) |
bool | isEmptyMapDepthMatrix (const MAP_DEPTH_MATRIX *td) |
MATRIX | extractMapDepth (int kx, int ky, MAP_DEPTH_MATRIX td) |
void | insertMapDepth (int kx, int ky, MATRIX m, MAP_DEPTH_MATRIX *tdptr) |
MATRIX | extractXYPlaneFromMapDepthMatrix (int map, int depth, MAP_DEPTH_MATRIX td) |
MATRIX | extractXYPlaneFromMapDepthMatrixV (int map, int depth, int v, MAP_DEPTH_MATRIX td) |
MATRIX | extractXYPlaneFromDoubleArray (int map, int depth, int v, int nX, int nY, int nZ, int nT, int nV, Float *td) |
void | insertXYPlaneIntoMapDepthMatrix (MATRIX xyPlane, int map, int depth, MAP_DEPTH_MATRIX *tdptr) |
void | insertXYPlaneIntoMapDepthMatrixV (MATRIX xyPlane, int map, int depth, int v, MAP_DEPTH_MATRIX *tdptr) |
void | insertXYPlaneIntoDoubleArray (MATRIX xyPlane, int map, int depth, int v, int nX, int nY, int nZ, int nT, int nV, Float *tdptr) |
MATRIX | extractXYPlaneColMajorMapDepthMatrix (int map, int depth, const MAP_DEPTH_MATRIX *td) |
MATRIX | extractXYPlaneColMajorMapDepthMatrixV (int map, int depth, int v, const MAP_DEPTH_MATRIX *tdptr) |
void | insertXYPlaneColMajorMapDepthMatrix (MATRIX xyPlane, int map, int depth, MAP_DEPTH_MATRIX *tdptr) |
void | insertXYPlaneColMajorMapDepthMatrixV (MATRIX xyPlane, int map, int depth, int v, MAP_DEPTH_MATRIX *tdptr) |
MAP_DEPTH_MATRIX | readMapDepthMatrixKernel (char *basedir, char *filenames[], int nFiles, bool useFT) |
MAP_DEPTH_MATRIX | readMapDepthMatrix (char *basedir, char *filenames[], int nFiles, bool useFT) |
MAP_DEPTH_MATRIX | readMapDepthMatrixV (char *basedir, char *filenames[], int nFiles, int vdim, bool useFT) |
void | writeMapDepthMatrix (char *filenames[], int nFiles, MAP_DEPTH_MATRIX tdm, bool useFT, FITSParameters headerParameters) |
MASK | readMasks (char *basedir, char *filenames[], int nFiles) |
MATRIX | extractMapZ1FromMask (int kx, int ky, const MASK *masks) |
enum DataSpace |
void destroyMapDepthMatrix | ( | MAP_DEPTH_MATRIX | td | ) |
Free memory used to store data in 4d matrix
[in] | td | A 4d matrix |
MATRIX extractMapDepth | ( | int | kx, | |
int | ky, | |||
MAP_DEPTH_MATRIX | td | |||
) |
Extract a 2d sub matrix from a 4d matrix. Really, this returns a pointer to a 2d matrix inside the 4d matrix. The pointer is wrapped by a 2d matrix object.
[in] | kx | Row index in xy-plane |
[in] | ky | Column index in xy-plane |
[in] | td | 4d matrix from which to extract. |
Extract a 2d sub matrix from a 4d matrix. Really, this returns a pointer to a 2d matrix inside the 4d matrix. The pointer is wrapped by a 2d matrix object.
[in] | kx | Row index in xy-plane |
[in] | ky | Column index in xy-plane |
[in] | masks | 3D matrix from which to extract. |
MATRIX extractXYPlaneColMajorMapDepthMatrix | ( | int | map, | |
int | depth, | |||
const MAP_DEPTH_MATRIX * | td | |||
) |
Extract a 2d sub matrix from a 4d matrix. Here, data values are copied because the xy-plane values are dispersed throughout the 4d matrix.
[in] | map | Row index in td-plane |
[in] | depth | Column index in td-plane |
[in] | td | 4d matrix from which to extract. |
MATRIX extractXYPlaneColMajorMapDepthMatrixV | ( | int | map, | |
int | depth, | |||
int | v, | |||
const MAP_DEPTH_MATRIX * | tdptr | |||
) |
MATRIX extractXYPlaneFromDoubleArray | ( | int | map, | |
int | depth, | |||
int | v, | |||
int | nX, | |||
int | nY, | |||
int | nZ, | |||
int | nT, | |||
int | nV, | |||
Float * | td | |||
) |
MATRIX returned is Float Extract a 2d sub matrix from a linear array of Floats. Use the same data layout in the Float array as in a MAP_DEPTH_MATRIX. Here, data values are copied because the xy-plane values are dispersed.
[in] | map | Row index in td-plane |
[in] | depth | Column index in td-plane |
[in] | v | number of scatterers (3 for vector problems, 1 otherwise) |
[in] | nX,nY,nZ,nT,nV | dimensions of the linear array of Floats. |
[in] | td | linear array of Floats from which to extract. |
MATRIX extractXYPlaneFromMapDepthMatrix | ( | int | map, | |
int | depth, | |||
MAP_DEPTH_MATRIX | td | |||
) |
Extract a 2d sub matrix from a 4d matrix. Here, data values are copied because the xy-plane values are dispersed throughout the 4d matrix.
[in] | map | Row index in td-plane |
[in] | depth | Column index in td-plane |
[in] | td | 4d matrix from which to extract. |
MATRIX extractXYPlaneFromMapDepthMatrixV | ( | int | map, | |
int | depth, | |||
int | v, | |||
MAP_DEPTH_MATRIX | td | |||
) |
void insertMapDepth | ( | int | kx, | |
int | ky, | |||
MATRIX | m, | |||
MAP_DEPTH_MATRIX * | tdptr | |||
) |
Insert a 2d sub matrix into a 4d matrix. Here, memory is copied to keep 2d sub matrix in tact, i.e. in contiguous memory.
[in] | kx | Row index in xy-plane |
[in] | ky | Column index in xy-plane |
[in] | m | A 2d matrix indexed by map (rows) and depth (columns) to insert. |
[in,out] | tdptr | Pointer to 4d matrix in which to copy 2d matrix data. Need to send pointer to 4d matrix because we are changing values in the 4d matrix structure. |
void insertXYPlaneColMajorMapDepthMatrix | ( | MATRIX | xyPlane, | |
int | map, | |||
int | depth, | |||
MAP_DEPTH_MATRIX * | tdptr | |||
) |
Insert a 2d sub matrix into a 4d matrix. Here, data values are copied because the xy-plane values are dispersed throughout the 4d matrix.
[in] | map | Row index in td-plane |
[in] | depth | Column index in td-plane |
[in] | xyPlane | A 2d matrix indexed by x (rows) and y (columns) to insert. |
[in,out] | tdptr | Pointer to 4d matrix in which to copy 2d matrix data. Need to send pointer to 4d matrix because we are changing values in the 4d matrix structure. |
void insertXYPlaneColMajorMapDepthMatrixV | ( | MATRIX | xyPlane, | |
int | map, | |||
int | depth, | |||
int | v, | |||
MAP_DEPTH_MATRIX * | tdptr | |||
) |
void insertXYPlaneIntoDoubleArray | ( | MATRIX | xyPlane, | |
int | map, | |||
int | depth, | |||
int | v, | |||
int | nX, | |||
int | nY, | |||
int | nZ, | |||
int | nT, | |||
int | nV, | |||
Float * | tdptr | |||
) |
MATRIX is Float Insert a 2d map-depth matrix into a linear array of Floats. Use the same data layout in the Float array as in a MAP_DEPTH_MATRIX. Here, data values are copied because the xy-plane values are dispersed.
[in] | xyPlane | MATRIX of Floats to insert into linear array of Floats. |
[in] | map | Row index in td-plane |
[in] | depth | Column index in td-plane |
[in] | v | number of scatterers (3 for vector problems, 1 otherwise) |
[in] | nX,nY,nZ,nT,nV | dimensions of the linear array of Floats. |
[in] | tdptr | pointer to linear array of Floats. |
void insertXYPlaneIntoMapDepthMatrix | ( | MATRIX | xyPlane, | |
int | map, | |||
int | depth, | |||
MAP_DEPTH_MATRIX * | tdptr | |||
) |
Insert a 2d sub matrix into a 4d matrix. Here, data values are copied because the xy-plane values are dispersed throughout the 4d matrix.
[in] | map | Row index in td-plane |
[in] | depth | Column index in td-plane |
[in] | xyPlane | A 2d matrix indexed by x (rows) and y (columns) to insert. |
[in,out] | tdptr | Pointer to 4d matrix in which to copy 2d matrix data. Need to send pointer to 4d matrix because we are changing values in the 4d matrix structure. |
void insertXYPlaneIntoMapDepthMatrixV | ( | MATRIX | xyPlane, | |
int | map, | |||
int | depth, | |||
int | v, | |||
MAP_DEPTH_MATRIX * | tdptr | |||
) |
bool isEmptyMapDepthMatrix | ( | const MAP_DEPTH_MATRIX * | td | ) |
check if MapDepthMatrix is null
[in] | td | A 4d matrix |
MAP_DEPTH_MATRIX newMapDepthMatrix | ( | int | x, | |
int | y, | |||
int | z, | |||
int | t, | |||
bool | shift | |||
) |
Create a new 4d matrix by allocating space for data and setting internal parameters.
[in] | x | number of rows in xy-plane |
[in] | y | number of columns in xy-plane |
[in] | z | depth dimension |
[in] | t | number of measurements (map dimension) |
[in] | shift | boolean; if output from inverse FT needs to be shifted. |
MAP_DEPTH_MATRIX newMapDepthMatrixV | ( | int | x, | |
int | y, | |||
int | z, | |||
int | t, | |||
int | v, | |||
bool | shift | |||
) |
Create a new 5d matrix by allocating space for data and setting internal parameters.
[in] | x | number of rows in xy-plane |
[in] | y | number of columns in xy-plane |
[in] | z | depth dimension |
[in] | t | number of measurements (map dimension) |
[in] | v | dimension of vector data (usually set to 3) |
[in] | shift | boolean; if output from inverse FT needs to be shifted. |
MAP_DEPTH_MATRIX readMapDepthMatrix | ( | char * | basedir, | |
char * | filenames[], | |||
int | nFiles, | |||
bool | useFT | |||
) |
MAP_DEPTH_MATRIX readMapDepthMatrixKernel | ( | char * | basedir, | |
char * | filenames[], | |||
int | nFiles, | |||
bool | useFT | |||
) |
MAP_DEPTH_MATRIX readMapDepthMatrixV | ( | char * | basedir, | |
char * | filenames[], | |||
int | nFiles, | |||
int | vdim, | |||
bool | useFT | |||
) |
Opens and reads FITS files, then stores the data in a new MAP_DEPTH_MATRIX.
[in] | basedir | base directory for all filenames |
[in] | filenames | list of FITS files to read. |
[in] | nFiles | number of files to read |
[in] | vdim | The vector dimension; for 3d, vdim = 1; for 5d, vdim = 3. |
[in] | useFT | Boolean; whether to Fourier transform the data before inserting into MAP_DEPTH_MATRIX. |
HERE -- if 3dv, then read 3 x kernel file names
MASK readMasks | ( | char * | basedir, | |
char * | filenames[], | |||
int | nFiles | |||
) |
void writeMapDepthMatrix | ( | char * | filenames[], | |
int | nFiles, | |||
MAP_DEPTH_MATRIX | tdm, | |||
bool | useFT, | |||
FITSParameters | headerParameters | |||
) |
Opens and writes MAP_DEPTH_MATRIX to FITS files. Each t-dimension is written to a separate FITS file.
[in] | filenames | list of FITS files to write; NOTE: each filename must already have directory path, i.e. the filenames are complete paths. |
[in] | nFiles | number of files to write. |
[in] | tdm | map depth matrix containing data for output. |
[in] | useFT | Boolean; whether to Fourier transform the data before inserting into MAP_DEPTH_MATRIX. |
[in] | headerParameters | Names, values and comments of the lambda parameters for FITS header. |