Varian Sequence for R2:
/* N15 T2 Relaxation Experiment maximizing conformational exchange*/
/* Erik R.P. Zuiderweg, University of Michigan, 06/20/01, all
rights reserved*/
/* Coding style: Erik R.P. Zuiderweg + Ananya Majumdar, Sloan-Kettering*/
/*
All parameters are declared in the file erpz_include.h
Relevant here are:
hpwr0: 1H high power (57 -60 dB)
cpdpwr1: 1H CPD power (40 -46 dB)
hpwr1: 1H solvent selective power (20 dB)
npwr0: 15N high power (57 -60 dB)
cpdpwr2: 15N decoupling power (40 dB)
p90h: 1H high power 90 deg pulse
cpdp900: 1H CPD 90 deg pulse (50 us)
pul20: 1H high power purge pulse (1 ms)
pul21: 1H high power purge pulse (1 ms)
pul22: 1H high power purge pulse (1 ms)
pul8: 1H solvent selective 90 pulse (1 ms)
p90n: 15N high power 90 deg pulse
grpwr1-5: gradient power (1000 -10000)
grpul1-5: square gradient pulse length (1ms)
phcor12: phase correction for watergate
cpdres0: resolution angle for 1H CPD decoupling
del18: recycle delay
del16: T2/2
del10: gradient recovery time (100 us)
del3: 1/4JNH or shorter
del4: 1/4JNH
tau1: t1/2
recorded with states-tppi - no sensitivity enhancement or trosy
water suppression by soft-hard-soft watergate
solvent kept saturated in sequence
to avoid variation over the relaxation series
*/
#include <standard.h>
static double d2_init = 0.0;
static int phi1[2] = {0,2},
phi4[4] = {0,0,2,2},
phi5[8]={0,0,0,0,2,2,2,2},
phi6[8]={1,1,1,1,3,3,3,3},
phi3[1] = {1},
psirec[4]={0,2,2,0};
pulsesequence()
{
/* DECLARE AND LOAD VARIABLES */
#include "erpz_include.h"
/* Load Phase Table */
settable(t1,2,phi1);
settable(t4,4,phi4);
settable(t5,8,phi5);
settable(t6,8,phi6);
settable(t3,1,phi3);
settable(t31,4,psirec);
initval(loop10,v8);
if(ix == 1) {
printf("The T2 time is %f ms\n",del16*2000.);
}
/* create phase correction */
if(phcor12 < 360) phcor12 = phcor12+360;
initval(phcor12,v12);
/* CHECK VALIDITY OF PARAMETER RANGE */
if(cpdpwr2 > 50 )
{
printf("cpdpwr too high");
abort(1);
}
if(dm[B]=='y')
{
printf("decoupler1 illegally
on");
abort(1);
}
if(dm3[B]=='y')
{
printf("decoupler3 illegally
on");
abort(1);
}
/* Phase incrementation for hypercomplex data */
if ( phase1 == 2 ) /* Hypercomplex
in t1 */
tsadd(t3, 1, 4);
/* calculate modification to phases based on current t1 values
to achieve States-TPPI acquisition */
if(ix == 1)
d2_init = d2;
t1_counter = (int) ( (d2-d2_init)*sw1
+ 0.5);
if(t1_counter %2) {
tsadd(t3,2,4);
tsadd(t31,2,4);
}
tau1 = d2/2.;
/* BEGIN ACTUAL PULSE SEQUENCE */
/* Receiver off time */
status(A);
rcvroff();
delay(5e-6);
delay(del18);
obspower(hpwr0); xmtrphase(zero) ;
dec2power(npwr0);
delay(10.e-6);
dec2rgpulse(p90n,zero,2.0e-6,0.);
delay(10.e-6);
zgradpulse(grpwr1,grdel1);
delay(del10);
rgpulse(p90h,t4,2.0e-6,0.);
delay(del3);
rgpulse(p90h*2.0,one,2.0e-6,0.);
dec2rgpulse(p90n*2.0,zero,2.0e-6,0.);
delay(del3-p90n*2.0);
rgpulse(pul20,zero,2.0e-6,0.);
rgpulse(p90h,one,2.0e-6,0.);
delay(10.e-6);
zgradpulse(grpwr2,grdel2);
delay(del10);
dec2rgpulse(p90n,t1,2.0e-6,0.);
delay(del4);
rgpulse(p90h*2.0,one,2.0e-6,0.);
dec2rgpulse(p90n*2.0,zero,2.0e-6,0.);
delay(del4+p90h*2.0);
obspower(cpdpwr0); obsprgon("waltz16",cpdp900,cpdres0);
xmtron();
delay(10.e-6);
delay(del16-p90n*2-15.e-6);
xmtroff();obsprgoff(); delay(5.e-6);
dec2rgpulse(p90n,t6,2.0e-6,0.);
dec2rgpulse(p90n*2,t5,2.0e-6,0.);
dec2rgpulse(p90n,t6,2.0e-6,0.);
obsprgon("waltz16",cpdp900,cpdres0); xmtron();
delay(del16-p90n*2-10.e-6);
xmtroff();obsprgoff(); obspower(hpwr0);
delay(10.e-6);
dec2rgpulse(p90n,one,2.0e-6,0.);
rgpulse(pul21,zero,2.0e-6,0.);
rgpulse(pul22,one,2.0e-6,0.);
delay(10.e-6);
zgradpulse(grpwr3,grdel3);
delay(del10);
dec2rgpulse(p90n,t3,2.0e-6,0.);
delay(del4+d2_init);
dec2rgpulse(p90n*2.0,zero,2.0e-6,0.);
delay(tau1);
rgpulse(p90h*2.0,zero,2.0e-6,0.);
delay(del4 + tau1-p90h*2.0);
dec2rgpulse(p90n,zero,2.0e-6,0.);
delay(10.e-6);
zgradpulse(grpwr4,grdel4);
delay(del10);
rgpulse(p90h,two,2.0e-6,0.);
delay(del3-grdel5-1.5e-5-del10-pul8);
zgradpulse(grpwr5,grdel5); delay(1e-5);
delay(del10);
obspower(hpwr1); obsstepsize(1.0); xmtrphase(v12) ; txphase(two);
delay(5.e-6);
rgpulse(pul8,two,2.0e-6,0.);
obspower(hpwr0); xmtrphase(zero) ;
delay(5.e-6);
delay(p90n*2.0);
rgpulse(p90h*2.0,zero,2.0e-6,0.);
dec2rgpulse(p90n*2.0,zero,2.0e-6,0.);
obspower(hpwr1); obsstepsize(1.0); xmtrphase(v12) ; txphase(two);
delay(5.e-6);
rgpulse(pul8,two,2.0e-6,0.);
zgradpulse(grpwr5,grdel5); delay(1e-5);
delay(del10+rof2);
dec2power(cpdpwr2);
delay(del3-grdel5-1.5e-5-del10-pul8);
status(B);
setreceiver(t31);
}