ParallelReceiveBlochOperator#
- class ParallelReceiveBlochOperator(name, gamma, coil_module, time_grid, adc_events, gradient_waveforms=None, rf_waveforms=None, submodules=(), device=None)[source]#
Extends the GeneralBlochOperator with parallel receive functionality. The only additionally required input is an instance of a CoilSensitivity contrast module from the cmrsim.analytic.contrast submodule, which is used internally to apply a spatially dependent weight to the transverse magnetization before summing, in the process of acquiring signals.
The resulting signal is also stored in the ‘time_signal_acc’ attribute, where for the parallel receive case each entry has an additional axis corresponding to the number of coils.
- Parameters:
name (
str
) – Verbose name of the module (non-functionally relevant)gamma (
float
) – gyromagnetic ratio in rad/ms/mcoil_module (
CoilSensitivity
) –time_grid (
Tensor
) – (n_steps) - tf.float32 - time definition for numerical integration stepsgradient_waveforms (
Tensor
) – (#repetitions, #steps, 3) - tf.float32 - Definition of gradients in mT/mrf_waveforms (
Tensor
) – (#repetitions, #steps) - tf.complex64 -adc_events (
Tensor
) – (#repetition, #steps, 2) - tf.float32 - last axis contains the adc-on definitions and the adc-phasesubmodules (
Tuple
[BaseSubmodule
,...
]) – List[tf.Modules] implementing the __call__ function returning the resulting phase increment contributiondevice (
str
) – str
Attributes:
Instance of the cmrsim.analytic.contrast.CoilSensitivity class that is used to compute the positionally dependent sensitivity factors prior to sampling
-
coil_lookup_module:
CoilSensitivity
# Instance of the cmrsim.analytic.contrast.CoilSensitivity class that is used to compute the positionally dependent sensitivity factors prior to sampling
-
dt_grid:
Variable
# Grid containing the differences of specified time_grid - shape: (T-1, )