CMM.preset.preset_acquisition module
- class CMM.preset.preset_acquisition.PresetAcquisition(seed_noise, preset_tools, preset_external, preset_qubic, preset_sky, preset_comp, preset_mixing_matrix, preset_gain)[source]
Bases:
object
Preset Acquisition.
Instance to initialize the Components Map-Making. It defines the data acquisition variables and methods.
- Parameters:
seed_noise (int) – Seed for random noise generation.
preset_tools (object) – Class containing tools and simulation parameters.
preset_external (object) – Class containing external variables and methods.
preset_qubic (object) – Class containing qubic operator and variables and methods.
preset_sky (object) – Class containing sky varaibles and methods.
preset_comp (object) – Class containing component variables and methods.
preset_mixing_matrix (object) – Class containing mixing-matrix variables and methods.
preset_gain (object) – Class containing detector gain variables and methods.
- seed_noise
Seed for random noise realization.
- Type:
int
- params_foregrounds
Dictionary containing the paramters associated with foregrounds.
- Type:
dict
- rms_tolerance
Tolerance for PCG algorithm.
- Type:
float
- ites_to_converge
Max iteration number for PCG algorithm.
- Type:
int
- invN
Inverse noise covariance matrix with input shape \((N_{det}*N_{samples} + N_{pix}*N_{planck}*N_{stokes})\) and output shape \((N_{det}*N_{samples} + N_{pix}*N_{planck}*N_{stokes})\).
- Type:
BlockDiagonalOperator
- M
Preconditioner for PCG algorithm.
- Type:
DiagonalOperator
- fwhm_rec
Resolution of the reconstructed maps.
- Type:
array_like
- H
Pointing matrix.
- Type:
BlockColumnOperator
- TOD_qubic
QUBIC simulated TOD.
- Type:
array_like
- TOD_external
Planck simulated TOD.
- Type:
array_like
- TOD_obs
Simulated observed TOD.
- Type:
array_like
- beta_iter
Spectral indices, if d1 \((12 \times Nside_{\beta}^2, N_{comp}-1)\), if not \((N_{comp}-1)\).
- Type:
array_like
- allbeta
Spectral indeices, if d1 \((iter, 12 \times Nside_{\beta}^2, N_{comp}-1)\), if not \((iter, N_{comp}-1)\).
- Type:
array_like
- Amm_iter
Mixing matrix.
- Type:
array_like
Methods
Approx HTH.
Convolutions.
Noise.
get_preconditioner
(A_qubic, A_ext[, ...])Preconditioner for PCG algorithm.
get_tod
()TOD.
get_x0
()PCG starting point.
- get_approx_hth()[source]
Approx HTH.
Calculates the approximation of \(H^T.H\).
- Returns:
approx_hth (array_like) – The approximation of \(H^T.H\) with shape \((N_{sub}^{in}, N_{pixel}, 3)\).
approx_hth_ext (array_like) – The approximation of \(H^T.H\) for Planck.
- get_convolution()[source]
Convolutions.
Method to define all angular resolutions of the instrument at each frequency.
This method sets the Full Width at Half Maximum (FWHM) for Time-Ordered Data (TOD) and map-making processes. self.fwhm_tod represents the real angular resolution, and self.fwhm_mapmaking represents the beams used for reconstruction.
The method checks the convolution_in and convolution_out parameters to determine the appropriate FWHM values. It also calculates the reconstructed FWHM based on these parameters.
- Returns:
fwhm_tod (array_like) – Resolutions to create input TOD.
fwhm_mapmaking (array_like) – Resolutions for map-making.
fwhm_rec (array_like) – Resolutions of reconstructed maps.
- get_noise()[source]
Noise.
Method to define QUBIC noise, can generate Dual band or Wide Band noise by following:
Dual Band: n = [Ndet + Npho_150, Ndet + Npho_220]
Wide Band: n = [Ndet + Npho_150 + Npho_220]
Depending on the instrument type specified in the preset_qubic parameters, this method will instantiate either QubicWideBandNoise or QubicDualBandNoise and return the total noise.
- Returns:
noise – The total noise array, flattened.
- Return type:
array_like
- get_preconditioner(A_qubic, A_ext, precond=True, thr=0)[source]
Preconditioner for PCG algorithm.
Calculates and returns the preconditioner matrix for the optimization process.
- Parameters:
A_qubic (array_like) – QUBIC mixing matrix.
A_ext (array_like) – Planck mixing matrix.
precond (bool, optional) – Tells if you want a precontioner or not, by default True
thr (int, optional) – Threshold to define the pixels seen by QUBIC, by default 0
- Returns:
M – Preconditioner for PCG algorithm.
- Return type:
DiagonalOperator
- get_tod()[source]
TOD.
Generate fake observational data from QUBIC and external experiments.
This method simulates observational data, including astrophysical foregrounds contamination using self.beta and systematics using self.g. The data generation follows the formula: \(\vec{d} = H.A.\vec{c} + \vec{n}\).
- H
Pointing matrix operator.
- Type:
Operator
- TOD_qubic
The simulated observational data for QUBIC.
- Type:
array_like
- TOD_external
The simulated observational data for external experiments.
- Type:
array_like
- TOD_obs
The combined observational data from QUBIC and external experiments.
- Type:
array_like
- nsampling_x_ndetectors
The number of samples in self.TOD_qubic.
- Type:
int
- get_x0()[source]
PCG starting point.
Define starting point of the convergence.
The argument ‘set_comp_to_0’ multiplies the pixel values by a given factor. You can decide to convolve the map by a beam with an FWHM in radians.
This method initializes the beta_iter and Amm_iter attributes based on the foreground model parameters. It also applies convolution and noise to the components based on the preset parameters.
- Raises:
TypeError – If an unrecognized component name is encountered.