make_arbitrary_rf#
- pypulseqpp.make_arbitrary_rf()[source]#
Create an RF pulse with the given pulse shape.
- Parameters:
signal (numpy.ndarray) – Arbitrary waveform.
flip_angle (float) – Flip angle in radians.
bandwidth (float, default=0) – Bandwidth in Hertz (Hz).
delay (float, default=0) – Delay in seconds (s) of accompanying slice select trapezoidal event.
dwell (float, default=0) – Temporal sampling step of waveform. If set to 0, will use system.rf_raster_time.
freq_offset (float, default=0) – Frequency offset in Hertz (Hz).
no_signal_scaling (bool, default=False) – If set to True no rescaling of the RF amplitude will happen. E.g. for adiabatic pulses.
max_grad (float, default=system.max_grad) – Maximum gradient strength of accompanying slice select trapezoidal event.
max_slew (float, default=system.max_slew) – Maximum slew rate of accompanying slice select trapezoidal event.
phase_offset (float, default=0) – Phase offset in Hertz (Hz).a
return_gz (bool, default=False) – Boolean flag to indicate if slice-selective gradient has to be returned.
slice_thickness (float, default=0) – Slice thickness (m) of accompanying slice select trapezoidal event. The slice thickness determines the area of the slice select event.
system (Opts, default=Opts()) – System limits.
time_bw_product (float, default=0) – Time-bandwidth product.
use (str, default='undefined') – Use of arbitrary radio-frequency pulse event. Must be one of ‘excitation’, ‘refocusing’, ‘inversion’, ‘saturation’, ‘preparation’, ‘other’, ‘undefined’.
freq_ppm (float, default=0) – PPM frequency offset.
phase_ppm (float, default=0) – PPM phase offset.
center (float, default=None) – RF center (s).
- Returns:
rf (SimpleNamespace) – Radio-frequency pulse event with arbitrary pulse shape.
gz (SimpleNamespace, optional) – Slice select trapezoidal gradient event accompanying the arbitrary radio-frequency pulse event.
- Raises:
ValueError – If invalid use parameter is passed. If signal with ndim > 1 is passed. If return_gz=True, and slice_thickness and bandwidth are not passed.
Notes
This is PyPulseq’s factory; the event it builds is returned with its fields in slots.