Perelman School of Medicine at the University of Pennsylvania

Center for Magnetic Resonance & Optical Imaging

Matpulse-Shinnar-LeRoux RF Pulse Synthesis


MATPULSE is a graphical user interface written in the Matlab programming language (The MathWorks, Inc., Natick, MA). Through a series of menus, users can generate amplitude modulated RF pulses for a desired spectral response. The program implements the Shinnar-LeRoux (SLR) algorithm for pulse sysnthesis. Bloch equation simulation allows for the examination of pulse performance. The design of RF pulses in the presence of modulated gradients is supported, allowing for reduced RF power and/or duration. New features in version 2.2 of MATPULSE include the capability for root reflection, which opens the door to generation of reduced voltage spin echo pulses, and also self-refocused pulses.New features in version 2.3 of MATPULSE include re-mapped adiabatic “FOCI” pulses.

See Ordidge,Wykezubsjam, Hugg, et al., Magn Reson Med 36, 562-566 (1996).

MATPULSE was written by Dr. Gerald Matson of the University of California at San Francisco.

For a complete description of the algorithm, refer to: Matson,GB, “An integrated program for amplitude-modulated RF pulse generation and re-mapping with shaped gradients”, Magnetic Resonance Imaging, 12(8):1205-25, 1994.

  • MATLAB 6.0 (or newer).
  • The MATLAB signal processing package (MATLAB student version will not suffice).
  • UNIX, DOS, or MAC.

The MATPULSE program is no longer available from this site. Request the software from the link:


For comments or questions on the MATPULSE program, send e-mail to:

Gerald Matson at

For more information on the MATLAB programming language, see the folks at MathWorks.