deepmr.bloch.Relaxation

deepmr.bloch.Relaxation#

class deepmr.bloch.Relaxation(device, time, T1, T2, weight=None, k=None, df=None, **kwargs)[source]#

The “decay operator” applying relaxation and “regrowth” of the magnetization components.

Parameters:
  • (str) (device) – Computational device (e.g., cpu or cuda:n, with n=0,1,2...).

  • time (torch.Tensor)) – Time step in [ms].

  • T1 (torch.Tensor) – Longitudinal relaxation time in [ms] of shape (npools,).

  • T2 (torch.Tensor) – Transverse relaxation time in [ms] of shape (npools,).

  • weight (torch.Tensor, optional) – Relative pool fractions of shape (npools,).

  • k (torch.Tensor, optional) – Exchange matrix of shape (npools, npools) in [s**-1].

  • df (torch.Tensor, optional) – Chemical shift in [Hz] of shape (npools,).

  • name (str) – Name of the operator.

__init__(device, time, T1, T2, weight=None, k=None, df=None, **kwargs)[source]#

Methods

__init__(device, time, T1, T2[, weight, k, df])

apply(states)

Apply free precession (relaxation + precession + exchange + recovery).