SpinCore Logo Home
Contact Us
Purchasing Info
About Us
Software Downloads

banner_left.jpg banner_right.jpg

CPMG Program

for RadioProcessor and iSpin-NMR


The CPMG experiment runs much like the Hahn-Echo experiment, however it applies additional 180 degree pulses after the first 180 degree pulse to measure the decaying echo response. The rate of this exponential decay of echo peaks is measured by T2, the Spin-Spin relaxation time. The CPMG program is available for download at the bottom of this page.

Figure1. CPMG Continuous Results (32 echoes, a sample of household cooking oil using a 10.8MHz permanent magnet)

Figure 1 shows the resultant FID response when capturing data continuously during a CPMG experiment. The large negative spikes are caused by the 180 degree pulses being applied.

Since a large number of echoes may be required to accurately measure T2, the CPMG program allows for segmented scanning acquisition. This mode reduces memory usage by allowing the RadioProcessor to only acquire a set number of points per echo (as little as a single point per echo). There is no constraints on number of echoes or points per echo except that the number of data points cannot exceed the maximum complex points of the RadioProcessor. Figure 2 and 3, below, show multiple point and single point segmented scans.

Figure2. CPMG Segmented Results (80 echoes, 16 points per echo, a sample of household cooking oil using a 10.8MHz permanent magnet)

Figure3. CPMG Segmented Results (80 echoes,1 point per echo, a sample of household cooking oil using a 10.8MHz permanent magnet)

Figure 4, 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 durations used are shown above each time range.

Figure4. CPMG Pulse Sequence

Running the CPMG Program

The CPMG program accepts command line parameters to specify the values for each of the pulse program's parameters. It takes the following arguments as inputs:

File Name

Board Number
De-blank Bit
0, 1, 2, or 3
Debug 0 or 1
ADC Frequency
Spectrometer Frequency
Spectral Width
Number of Echoes
0.0 - 1.0
90 Degree Pulse Time
90 Degree Pulse Phase
180 Degree Pulse Time
Include 90
0 or 1
Bypass FIR
0 or 1
Number of Echo Points
Number of Scans
De-blanking Delay
Transient Delay
Repetition Delay
Table1. CPMG Input Arguments

These arguments must all be passed as input parameters when launching the cpmg.exe file. Omitting or passing arguments out of order will cause the program to return an error. To simplify this process, a cpmg.bat file is provided. This file allows for easy manipulation of argument values, and ensures that they will passed in the correct order. To use the cpmg.bat file simply:
  • Open the cpmg.bat file in a text editor
  • Set the parameters to the desired values
  • Save any changes made
  • Ensure that the cpmg.bat and cpmg.exe files are in the same directory
  • Double-click the cpmg.bat file
After following these procedures, the cpmg.exe will run with the specified parameters and print those parameters as well as the progress of the experiment to a terminal window. Once experimentation is finished, it will save the results to ASCII, JCAMP, and Felix files, and print a calculated value of T2.

Viewing CPMG Results

After execution of the CPMG program, the output files can be used with external programs to visualize the data.

The LabVIEW NMR Interface can process .txt files. To do this:
  • Navigate to the 'Process Data' tab
  • Point the 'Import File Name' path to the CPMG's .txt output.
  • Press 'Import Data From ASCII File' to view the data.

The Felix NMR program can process .fid files. To do this simply ensure that the Felix NMR program is installed properly and double-click on the .fid file.

CPMG Acquisition Tips

Setting the input parameters correctly is critical in obtaining good CPMG data. Below are suggestions for determining these parameters:
  • Start with a simple Single-Pulse NMR experiment:
    • Find the values of spectral width and number of points which optimize the signal-to-noise ratio without cutting off the FID.
    • Find the 90 and 180 degree pulse widths. These are the amounts of time it takes for a transmitted pulse to cause a 90 and 180 degree FID response. The 180 degree pulse width should be roughly double that of the 90 degree pulse width.
    • Find the resonance frequency and output phase which achieve a maximum real amplitude at the start of acquisition. The value of the first real data point should be a maximum, and the value of the first imaginary point should be zero.
  • Use the established Single-Pulse NMR parameters with the CPMG program. The relevant parameters are:
    • P90_TIME
    • P90_PHASE
    • P180_TIME
  • Estimate the TAU time. This should be approximately equal to the time it takes for your Single-Pulse NMR FID to decay to zero.
  • Do a continuous, single-echo run of the CPMG program:
    • Use the previously established parameters.
    • Use continuous acquisition and acquire only a single echo by:
      • Setting NUMBER_OF_ECHO_POINTS equal to zero.
      • Setting NUMBER_OF_ECHOES equal to one.
    • This should yield identical results to the Hahn-Echo experiment.
    • Additionally, the FID from the initial 90-degree pulse should match the Single-Pulse NMR results.
  • Adjust the TAU parameter as necessary to produce the desired echo. A larger TAU will result in a more diminished echo.
  • Finally, adjust the NUMBER_OF_ECHOES to produce more echoes, and the NUMBER_OF_POINTS_PER_ECHO to only acquire the echo peaks. You can also increase the NUMBER_OF_SCANS parameter to average results over multiple runs. This will improve signal-to-noise ratio.


Source Code: Executable:

Home | Products | Applications | Contact Us | Purchasing Info | About Us | Software Downloads

© 2021 SpinCore Technologies, Inc.