mrpro.operators.models.EPG.InversionBlock

class mrpro.operators.models.EPG.InversionBlock[source]

Bases: EPGBlock

T1 Inversion Preparation Block.

The inversion pulse is assumed to be B1 insensitive.

__init__(inversion_time: Tensor | float) None[source]

Initialize the inversion block.

Parameters:

inversion_time (Tensor | float) – Inversion time

property duration: Tensor[source]

Duration of the block.

__call__(parameters: Parameters, states: Tensor | int = 20) tuple[Tensor, tuple[Tensor, ...]][source]

Apply the block.

Parameters:
  • parameters (Parameters) – Tissue parameters

  • states (Tensor | int, default: 20) – EPG configuration states. If an integer value, the equilibrium state (0, 0, 1) will be initialized with the given number of EPG configuration states. The number should be large enough to capture the signal dynamics. More states increase the accuracy of the simulation but also the computational cost.

forward(parameters: Parameters, states: Tensor) tuple[Tensor, tuple[Tensor, ...]][source]

Apply the inversion block to the EPG state.

Parameters:
  • parameters (Parameters) – Tissue parameters

  • states (Tensor) – EPG configuration states

Returns:

EPG configuration states after the block and an empty list