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. |
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 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 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 | |||
) |
BOOLEAN 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, | |||
int | 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, | |||
int | 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, | |||
int | useFT | |||
) |
MAP_DEPTH_MATRIX readMapDepthMatrixKernel | ( | char * | basedir, | |
char * | filenames[], | |||
int | nFiles, | |||
int | useFT | |||
) |
MAP_DEPTH_MATRIX readMapDepthMatrixV | ( | char * | basedir, | |
char * | filenames[], | |||
int | nFiles, | |||
int | vdim, | |||
int | 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
void writeMapDepthMatrix | ( | char * | filenames[], | |
int | nFiles, | |||
MAP_DEPTH_MATRIX | tdm, | |||
int | 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. |