Scanners

The MRI scanner that is used during acquisition puts various constraints on the MR sequences that can be used. These constraints include safety considerations, such as tissue heating, and hardware constraints, such as maximum gradient strength and slew rate. Currently, MRIBuilder only considers the latter.

To define a sequence appropriate for a specific scanner, a user would define a new Scanner with the appropriate B0, maximum variables.gradient_strength, and maximum variables.slew_rate. This scanner would then be passed on to the sequence optimisation.

For ease of use, the gradient_strength and slew_rate of many scanners have already been pre-defined. These are listed below.

Scanners API

MRIBuilder.Scanners.ScannerType
Scanner(;B0=3., gradient=Inf, slew_rate=Inf, units=:kHz)

Properties of an MRI scanner relevant for the MR signal simulations.

  • B0: magnetic field strength (in Tesla)
  • gradient_strength: maximum gradient strength long each axis.
  • slew_rate: maximum rate of change in the gradient strength

By default gradient and slew_rate are expected to be provided in units of, respectively, kHz/um and kHz/um/ms. However, if the keyword units=:Tesla is set, the gradient and slew_rate should be provided in units of, respectively, mT/m and T/m/s.

source
MRIBuilder.Scanners.gradient_strengthFunction
gradient_strength(scanner[, units])

Returns the maximum magnetic field gradient of the scanner in kHz/um. By setting units to :Tesla, the gradient strength can be returned in mT/m instead.

source
MRIBuilder.Scanners.slew_rateFunction
slew_rate(scanner[, units])

Returns the maximum magnetic field slew rate of the scanner in kHz/um/ms. By setting units to :Tesla, the slew rate can be returned in T/m/s instead.

source