Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Actual Flip Angle B1+

Field Mapping · BIDS suffix TB1AFI

Config name
model: b1_afi BIDS suffix
TB1AFI Method family
Field Mapping Acquired volumes
2 Fit granularity
voxelwise

Maps the transmit (B1+) field from a single spoiled gradient-echo sequence that interleaves two excitation repetition times at one nominal flip angle. In the pulsed steady state the ratio of the two signals depends on the achieved flip angle alone, so proton density and receive sensitivity cancel. The result is dimensionless — the achieved flip angle as a fraction of the nominal one — and feeds the B1 correction of models such as MTsat and VFA. The closed form assumes the repetition times are short against T1, and underestimates B1 as that assumption weakens.

Signal model

cosθ=rn1nr,r=STR2STR1,n=TR2TR1,B1+=θθnom\cos\theta = \frac{r n - 1}{n - r},\quad r = \left|\frac{S_{\mathrm{TR}_2}}{S_{\mathrm{TR}_1}}\right|,\quad n = \frac{\mathrm{TR}_2}{\mathrm{TR}_1},\quad B_1^{+} = \frac{\theta}{\theta_\mathrm{nom}}
SymbolQuantityUnit
B1Relative transmit field
T1Longitudinal relaxation times

What the model reads

A series of 2 volumes indexed by RepetitionTimeExcitation. Volumes are matched to these identities by value, so reordering the acquisition yields an identical fit.

#RepetitionTimeExcitation
10.02
20.1

Where the protocol comes from

In a BIDS dataset these values are resolved for you:

Protocol parameterSourceKeyResolved
RepetitionTimeExcitationsidecar fieldRepetitionTimeExcitationper volume
FlipAnglesidecar fieldFlipAnglewhole collection

Inputs

The 2 acquired volumes, each labeled with the identity the model reads it by.

Figure 1:The 2 acquired volumes, each labeled with the identity the model reads it by.

Outputs

MapBIDS suffixUnitFit boundsFitted
B1TB1map0 … 2free
Fitted maps for one example subject.

Figure 2:Fitted maps for one example subject.

Usage

BIDS
Without BIDS
Simulation
Browser

The acquisition comes from the sidecars, so recipes/bids/b1_afi_config.yaml carries only algorithm options:

model: b1_afi

# B1 = acos((r*n - 1) / (n - r)) / nomFA, with r the signal ratio of the two
# interleaved repetition times, n = TR2/TR1, and the map dimensionless
# (1.0 = the nominal flip angle was achieved). BIDS input:
# RepetitionTimeExcitation and FlipAngle are read from the JSON sidecars via
# the model's protocol_schema(), so neither is declared here. The TB1AFI
# collection is assembled by the `acq` entity (acq-tr1 / acq-tr2). Example:
#
#   qmrust fit --bids-dir <dataset> \
#     --config recipes/bids/b1_afi_config.yaml --output-dir out

# BIDS mask selection. Left blank: this example dataset ships no mask, and
# naming one here would claim otherwise. Blank means "whatever mask is
# present", so a dataset of your own that has one is masked by it.
mask:
  desc: ""
qmrust fit --bids-dir ds-mydata \
  --config recipes/bids/b1_afi_config.yaml --output-dir out

Fitted maps are written as BIDS derivatives:

out/derivatives/qmrust/sub-01/fmap/
  sub-01_TB1map.nii.gz
  sub-01_TB1map.json

Implementation

Fully-resolved configuration

Every default materialized, as qmrust dump-config prints it.

model: b1_afi
repetition_times:
- 0.02
- 0.1
flip_angle: 60.0

References

Yarnykh (2007)

References
  1. Yarnykh, V. L. (2007). Actual flip-angle imaging in the pulsed steady state: A method for rapid three-dimensional mapping of the transmitted radiofrequency field. Magnetic Resonance in Medicine, 57(1), 192–200.