Γ USA G2 

  Information
  · Overview
  · Tour
   -- Pulse Offsets
   -- Liquid NMR
   -- Solid NMR
   -- Bloch Eqs.
   -- Shaped Pulses
   -- Decoupling
   -- E-COSY
   -- Pre-Saturation
   -- ROESY
   -- Gradients
   -- Dyn. Shifts
   -- Commutators
   -- MAS
   -- Relaxation
   -- NOESY
   -- Cross Pol.
   -- DANTE
   -- Spin Geometry
   -- Exchange
   -- Profiles

  · Mailing List
  · Contacts
  · Citations
  · Help
  · Bug Report
  · Bug List
  · User List
  · Directory Tree
 Downloading 
 Installation 
 Base Demos 
 Tutorials 
 Examples 
 Online Pgms. 
 HTML Docs 
 PDF Docs 
 Administer 
 NHMFL 
 CIMAR 

 Γ WWW Sites 

 MainSite, USA 
 Florida, USA 
 Florida, USA 
 Zürich, CH 
 Osaka, Japan 
 
GAMMA Tour
(Γ Version 4.0.6)
 

Cross Polarization

Here we will use GAMMA to have a simple look at cross-polarization, specifically the the evolution of magnetization on the x-axis in an experiment on an I2S system. The three spins are taken to be dominated by the secular parts of dipolar coupling, i.e. they evolve under the effects of the secular dipolar and rf-field Hamiltonians only. We will also just use CW irradiation for the spin-locking.

In GAMMA operators are a data type so it is very easy to manipulate them. There are also functions which construct any spin operator so there is little difficulty in construction any operator. This example does just that, it builds an appropriate Hamiltonian then uses other basic GAMMA functions for acquisition and graphical output.

#include <gamma.h>

int main()
  {
  double DIS1 = 10.0 * 1.e3;
  double DIS2 = 8.29 * 1.e3;
  double DII = 11.4 * 1.e3;
  double WS = 3.0 * 1.e3;
  double WI = 3.2 * 1.e3;
  double dt = 0.001;
  double npts = 2000;
  spin_sys sys(3);				// Set up I=1/2 spins
  sys.isotope(0, "13C");			// Now system is SI2
  gen_op HIS = DIS1*Iz(sys,0)*Iz(sys,1)		// Mock dipolar Ham
             + DIS2*Iz(sys,0)*Iz(sys,2); 	// between S(0) & I(1,2)
  gen_op HII = DII*(Iz(sys,1)*Iz(sys,2)		// Mock dipolar Ham
             - 0.25*Ip(sys,1)*Im(sys,2) 	// between I1 & I2
             - 0.25*Im(sys,1)*Ip(sys,2));
  gen_op HRF = WS*Ix(sys,0)			// Mock rf field Ham
             + WI*(Ix(sys,1)+Ix(sys,2));	// irradiation on I&S
  gen_op H   = HIS + HII + HRF;			// Full Hamiltonian
  gen_op D   = 0.5*(Ix(sys,1)+Ix(sys,2))	// Detection operator
             + complex(0,sqrt(0.5))*Ix(sys,0);	// Ix1+Ix2 + iSx 
  gen_op rho = 0.5*(Ix(sys,1)+Ix(sys,2));	// Start with Fx
  row_vector data = FID(rho,D,H,dt,npts);	// Evolve, track magnetization
  GP_xy("crosspol.asc", data);			// Output to Gnuplot ASCII
  GP_xyplot("crosspol.gnu", "crosspol.asc");	// Plot to screen
  cout << "\n\n";				// Keep screen nice
  }

The figure on this page used a similar program with FrameMaker output instead. FrameMaker was used to color the magnetization trajectory, put in the cirle, and make nicer axes. With some work, I am sure gnuplot could do the same.

       
Γ Support Provided by the National High Magnetic Field Laboratory
© 1996 S.A. Smith, The NHMFL, and Florida State University.
All Rights Reserved.
No GAMMA WWW pages or GAMMA specific images therein may be reproduced or used in any manner outside of personal Web Browsers without permission from the copyright holders.
Send problems & suggestions to gamma@magnet.fsu.edu
Last Modification Fri Jan 11 11:39:07 EST 2002
Page Access Count Since December 22 1999: Cannot #EXEC '/cgi/counter.cgi/doc=infotourcrosspol' due to lack of EXECUTE permission