IMA science data, providing the count rate data access
It is a common part of IMA count rate science data access in the Matlab format.
- irfpy.imacommon.scidata.reshape_mat3d(mat, npol=16)¶
Reshape the matlab contents into MAEPT order
The function reshapes the matrix to MAEPT order (mass-azimuth-energy-polar-time).
Polar (elevaion) number should be specified, if you know it is not 16 elevation mode.
(spectra, masslist, azimlist, polarlist, timelist). spectra has (N, 32, 16, 96, 16) element, where N is the number of 3-D data. masslist, azimlist, polarlist has (N, 2, 16, 96, 16) shape. timelist has (N, 16, 96, 16) shape.
Reshape the matlab contents into MAET order.
The function reshape the matrix to MAET order.
mat – Matlab contents.
(spectra, masslist, azimlist, elevlist, timelist)
Each output has the shape of (32, 16, 96, T) for spectra; (32, 16, T) for timelist; and (2, 32, 16, T) for others. T is the number of time.
mat – Matlab format data file
Tuple of array. (spectra, mass, azimuth, polar, time).
- irfpy.imacommon.scidata.matfile2timeseries(matrix, emulate_full=False)¶
Getting the matrix data in Matlab, time series of matrix is returned.
matrix – Matlab data (dictionary) read via
scipy.io.loadmat(), or using higher-level way, e.g.
emulate_full – Data is emulated to represent the full matrix, namely (M32, A16, E96) size matrix. For mode such as 28, where the original data is (M32, A8, E96) is expanded by assuming the uniform count rate over the bins to the full size.
Time series of 2D matrix
- Return type
This is a function for developer.
>>> from irfpy.vima.scidata import get_ima_count_file_full >>> import datetime >>> matlab_data = get_ima_count_file_full(datetime.datetime(2008, 3, 3, 14, 55)) >>> timeseries2d = matfile2timeseries(matlab_data.mat)