T2Preparation#
- class pypulseqpp.sequences.T2Preparation[source]#
Bases:
RfModuleAdiabatic T2 preparation with tip-down, refocusing and storage pulses.
Refocusing pulses must occur in pairs to cancel their B1-dependent phase. The final half passage is time-reversed and conjugated relative to the first; final_tip selects storage on +z or -z.
- Parameters:
system (pypulseqpp.Opts) – System limits.
echo_time_s (float) – Preparation echo time (s), first pulse centre to last.
final_tip ({'up', 'down'}, default='up') – Store on
+z(pure T2 weighting) or-z, which starts a T1 recovery as well – seeT1T2Preparation.n_refocus (int, default=2) – Adiabatic refocusing pulses, spread evenly through the echo time. Must be even; see above.
half_passage_duration_s (float, default=0.004) – Duration of each half passage (s).
refocusing_duration_s (float, default=0.01024) – Duration of each refocusing pulse (s).
adiabaticity (int, default=8) – Sweep-rate margin over the adiabatic condition, for every pulse.
dwell_s (float, default=1e-05) – RF raster (s).
spoiling_cycles (float, default=4.0) – Cycles of dephasing the closing spoiler winds across
voxel_size_mon each axis. Zero omits the spoiler block.voxel_size_m (float, default=0.001) – Length the dephasing is counted over (m).
labels (sequence of str, default=None) – Counters set to 0 on the first pulse’s block.
- Attributes:
rf_prep (RfEvent) – The half passage that tips down.
rf_ref (RfEvent) – The refocusing pulse; every repeat plays this one event.
rf_store (RfEvent) – The reverse half passage that stores what is left.
wait_first, wait_inner, wait_last (DelayEvent) – The gaps before the first refocusing pulse, between refocusing pulses, and before
rf_store. Each is absent when its gap is zero, andwait_innerwhen there is one refocusing pulse.gx_spoil, gy_spoil, gz_spoil (GradEvent) – The closing spoiler.
prep_labels (LabelSetEvent or list of LabelSetEvent) – One per name in
labels.echo_time (float) – The preparation echo time achieved on the block raster (s).
- Raises:
ValueError – If
final_tipis not'up'or'down',n_refocusis not a positive even number, a size is out of range, or the echo time is shorter than the pulses themselves.
Examples
>>> import pypulseqpp.sequences as design >>> import pypulseqpp as pp >>> prep = design.T2Preparation(pp.Opts(), 50e-3) >>> round(prep.echo_time * 1e3, 2) 49.99
Tip-down, two refocusing pulses and storage. Over the band the refocusing pulses cover, the module returns the magnetization to
+z; what it lost on the way is the T2 weighting:
Methods
Build the module's block layout; implemented by the subclass. |
|
Publish events from the caller's locals and register keyword aliases. |
|
Publish named events without requiring prior block registration. |
|
Simulate this module's pulse across off-resonance. |
Attributes