The figures below
are of a CPMG experiment conducted on
household cooking oil using a 10.8 MHz
Figure 3 below
shows the pulse sequence used by the
RadioProcessor to perform this experiment.
Each vertical line is a new instruction, and
the names of the delays used are shown with
arrows. The CPMG package includes an
executable that will accept command line parameters, which then
can be used to specify the values of each of
the pulse program parameters.
- Should be set to zero unless multiple
SpinCore boards are connected to the
computer. If multiple boards are
connected to the computer, BOARD_NUMBER should
correspond to the number of the board.
(Note SpinCore boards are enumerated beginning
with 0. All PCI boards are enumerated
before USB boards).
SPECTROMETER_FREQUENCY (MHz) -
The spectrometer frequency can be between 0.0
and 100.0 MHz and should be set exactly on
SPECTRAL_WIDTH (kHz) -
width must be less than 10,000 kHz and can be
as small as 0.072 kHz for certain designs..
This value is equal to the number of points
captured per millisecond. Narrower
spectral width values can improve the apparent
signal-to-noise ratio of the acquired data.
P1_TIME (us) -
pulse length of the initial 90 degree pulse
must be greater than or equal to 0.065
us.. This should be set exactly to the
90 degree pulse of the system being used.
pulse length of the 180 degree pulse must be
greater than or equal to 0.065 us. This
should be set exactly to the 90 degree pulse
of the system being used.
RINGDOWN_TIME (us) - Ringdown
time (or dead
time) after the 90 degree pulse. This
value is specific to the probe and
preamplifiers being used in the system and
must be greater than or equal to 0.065 us.
Phase of 90 degree pulse. This
value should be adjusted to achieve maximum
amplitude for the receiver's real channel.
This value may not always be the same, so be
sure to calibrate it every time you run CPMG.
P2_PHASE (degrees) -
Phase of 180 degree pulses should be
offset by +90 degrees from the P2_phase value.
TAU (us) -
is the time between 180 degree pulses
INCLUDE_90 - Choose whether or not to
include the initial 90 degree pulse
of times to repeat the scan (and average the
to store data to. The CPMG.exe program
will generate Felix (.fid) and ASCII (.txt)
1 to bypass the signal around the FIR filter,
or 0 to not bypass. In general the FIR filter
should be bypassed. See the
RadioProcessor manual for details.
ADC_FREQUENCY (MHz) -
of the board. This value should always
be 75 MHz unless a custom design with a
different ADC frequency is being used.
- Time to allow sample to relax after
transmitter output amplitude scaling
factor. This value should be between 0.0
and 1.0. Note that the scaling factor is
- Number of
the TTL output bit on the RadioProcessor to
use as a blanking signal for the power
amount of time to assert the blanking signal
bit before sending the excitation signal so
that the power amplifier may warm up.
- Set to
1 to generate SpinAPI debug output, otherwise,
set to 0.
There are a few parameters in Figure 3 not
specified on the command line. These are
calculated as follows:
(us). This is the time for the 180 degree
pulse and is automatically calculated as twice
the 90 degree pulse length.
The top time is equal to the
NUMBER_OF_POINTS_PER_ECHO divided by the
SPECTRAL_WIDTH (kHz) times 1000.
corresponds to the three instruction loop used
to repeat multiple echoes. The echo_loop
Tips for acquiring CPMG Data
Several suggestions for acquiring CPMG data
are listed below:
- Start with a simple single-pulse NMR
experiment. Find the resonance frequency
and adjust the transmitter output phase to
achieve the largest received signal
amplitude for the real channel (the
imaginary channel amplitude should be
- Find the 90 degree pulse length and
verify that the 180 degree pulse length is
twice that of the 90 degree pulse length.
- Copy the relevant parameters from the
single-pulse NMR experiment over to the
CPMG program. The relevant parameters are:
- P2_TIME (This will be the 90 degree
pulse time from the single-pulse test)
- RINGDOWN_TIME (Also known as transient
time or dead time)
- P2_PHASE (This will be the transmitter
output phase from the single-pulse test.
Add 90 degrees to get the P1_PHASE.)
- Estimate the TAU time. This should be
approximately equal to the time it takes
for your single-pulse test FID to decay to
- Run the CPMG test initially with
NUMBER_OF_POINTS_PER_ECHO equal to zero
and NUMBER_OF_ECHOES equal to one. Make
sure your SPECTROMETER_FREQUENCY is set to
resonance. You should see the initial FID
from the 90 degree pulse time, followed by
a large spike (the 180 degree pulse), and
then an echo. When scaled correctly,
the FID from the 90 degree pulse should
look nearly identical to the signal
acquired using the single-pulse NMR test.
- Adjust the TAU and SPECTRAL_WIDTH
parameters as necessary to produce the
- After setting all of the above
parameters you can adjust the
NUMBER_OF_ECHOES to produce more echoes,
and the NUMBER_OF_POINTS_PER_ECHO to only
acquire the echo tops.
- Use the amplifier blanking feature of
the CPMG program. This will prevent
unnecessary use of power and generation of
heat. Be aware that if the blanking delay
is longer than the time between
acquisition and the P1 pulse, the program
will leave the power amplifier on for the
entire duration of the scan.
Here are a few other tips:
- Narrowing the SPECTRAL_WIDTH parameter
may improve the apparent signal-to-noise
ratio. Keep in mind that reducing the
spectral width will reduce the number of
points sampled per echo which may require
you to reduce the
- Try running multiple scans to perform
signal averaging. This should also improve
the signal-to-noise ratio. If the magnetic
field drifts quickly you will need to use
a small REPETITION_DELAY and be sure to
set the SPECTROMETER_FREQUENCY to the
resonance frequency shortly before running
***These files are still in development
stage. We are working on adding
functionality to acquire data only at the
peaks of echoes.***