mrpro.data.traj_calculators.KTrajectorySpiral2D
- class mrpro.data.traj_calculators.KTrajectorySpiral2D[source]
Bases:
KTrajectoryCalculator
A spiral variable density trajectory.
Implements the spiral trajectory calculation as described in [KIM2003].
References
[KIM2003]Kim, D.-h., Adalsteinsson, E. and Spielman, D.M. (2003), Simple analytic variable density spiral design. Magn. Reson. Med., 50: 214-219. https://doi.org/10.1002/mrm.10493
- __init__(fov: SpatialDimension | float = 0.5, angle: float = 2.39996, acceleration_per_interleave: float = 20.0, density_factor: float = 1.0, gamma: float = GYROMAGNETIC_RATIO_PROTON, max_gradient: float = 0.1, max_slewrate: float = 100)[source]
Create a spiral trajectory calculator.
- Parameters:
fov (
SpatialDimension
|float
, default:0.5
) – Field of view [m].angle (
float
, default:2.39996
) – Angle between interleaves [rad]. Usually set to 2pi/n_interleaves or golden angle (default).acceleration_per_interleave (
float
, default:20.0
) – Acceleration per interleave. Overall acceleration is (acceleration_per_interleave/n_interleaves), where n_interleaves is determined by k1_idx.density_factor (
float
, default:1.0
) – Density factor alpha. 1.0 is constant density, values > 1.0 sample more densely at the center.gamma (
float
, default:GYROMAGNETIC_RATIO_PROTON
) – Gyromagnetic ratio [Hz/T].max_gradient (
float
, default:0.1
) – Maximum gradient amplitude [T/m].max_slewrate (
float
, default:100
) – Maximum slew rate [T/m/s].
- __call__(*, n_k0: int, k1_idx: Tensor, encoding_matrix: SpatialDimension, **_) KTrajectory [source]
Calculate the spiral trajectory.
- Parameters:
n_k0 (
int
) – Number of samples along a spiral interleave.k1_idx (
Tensor
) – Integer index of the interleavesencoding_matrix (
SpatialDimension
) – Dimensions of the encoding matrix. Only square matrices are supported.
- Returns:
Spiral Trajectory
- __eq__(value, /)
Return self==value.
- __new__(**kwargs)