GASP: Globally Anti-Symmetric Pulses

Last modified: November, 14th 2006


Globally Anti-Symmetric Pulses are described in:
“A simple scheme for the design of solvent-suppression pulses”
É. Prost, P. Sizun, M. Piotto, J.-M. Nuzillard
Journal of Magnetic Resonance 159 (2002) 76-81

The GASP package provides gaspgen, a program that generates Bruker or Varian shaped pulse definition files (RF files) for a GASP pulse of given duration and frequency shift (optional). A second program, gasptest, simulates the action of the generated pulse(s) when used in a single or multiple solvent-suppression pulse sequence (double pulsed field gradient spin echo, or dpfgse). The bruk2shp program translates Bruker RF wave files to shape files that can be handled by gasptest.


The GASP package contains C language source files that need to be compiled to produce gaspgen and gasptest.

Download the Gasp package.

You need to have the gcc C compiler installed on your computer. Installation of GASP requires the typing of the following commands in a UNIX shell window.



% ./gaspgen V|B GASP_RF_file_name Calibration_RF_file_name pulse_length_(s) [ frequency_shift_(Hz) ]"

The gaspgen command takes 4 or 5 arguments:

  1. V or B depending on the target format: Varian or Bruker
  2. The name of the RF file to generate.
  3. The name of the BURP RF file that can help to calibrate the GASP.
    First (on resonance) calibrate a 1 ms inversion BURP. The transmitter power will be the same for the corresponding 2 ms GASP.
  4. The pulse duration of the GASP, in seconds. The duration of the associated calibration BURP is the half of this parameter.
  5. (optional) A frequency shift in Hertz, for multiple solvent suppression or, more generally, for off-resonance solvant suppression. The shift is computed as the resonance frequency of the target nuclei minus the acquisition frequency.




gasptest lowest_frequency_(Hz) highest_frequency_(Hz) number_of_frequencies ( GASP_shape_file_name )+

The gaspgen command takes 4 or more arguments:

  1. The initial offset frequency of the simulation, in Hertz.
  2. The final offset frequency of the simulation, in Hertz.
  3. The number of frequency increments between the frequencies given in arguments 1 and 2.
  4. A list of names of shape files (one file, at least)


The test

The % make test
command is equivalent to the

% ./gaspgen V gasp1.RF gaspcalib.RF 0.002 1000 > gasp1.shp
% ./gaspgen V gasp2.RF gaspcalib.RF 0.002 -1000 > gasp2.shp
% ./gasptest -10000 10000 400 gasp1.shp gasp2.shp > gasp.FD

commands. It generates three GASP Varian RF files: gasp1.RF, gasp2.RF and their calibration file gaspcalib.RF. The theoretical response factors of gasp1.RF and gasp2.RF, when used together in a double solvent suppression experiment, are produced by gasptest and listed in gasp.FD.
The resulting graph should look like:




bruk2shp Bruker_RF_wave_file max_field_(Hz) pulse_width_(s)

The bruk2shp command takes 3 arguments:

  1. The name of the Bruker RF wave file.
  2. The maximum γB1/2π field (in Hertz).
  3. The pulse width (in second).


Jean-Marc Nuzillard

September 5th 2006