/* pfghetzych2_NH_se1 PFG-HETZY Ch 2 (usually N15) Copyright 1995 G. Montelione. Center for Advanced Biotechnology and Medicine, Rutgers Univ. use phase sensitive (P,N-peak select) 2*C90 used to decouple C13 during t1 evolution C90 must be calibrated for carbon 90 deg pulse at C90lvl power level modified gvts 07 02 97 to import to INOVA 600 from UNITY 500 Uses ch2 for 15N, ch3 for 13C and ch4 for 13C'. Can be modified to use shifted pulses and ch3 for 13C & 13C' (currently not implemented) TODEV is used for 1H pulses, spin lock, and water preirr. DODEV is used for X-nucleus pulses and decoupling DO2DEV is used for decoupling the third nucleus For sensitivity enhanced sequence set: se='y' otherwise se='n' This sequence has been tested September 29, 1994 on 1.0 mM Zdomain see details on cbr.2.073. Sequence, statistics on enhancement and spectra are available on page 73 of cbr notebook 2. This sequence gives an enhancement between 1.2 and 1.8 times for se='y' compared to se='n' Nagayama in w1; phase = 1,2 Use wft2d(1,0,1,0,0,-1,0,1) or wft2d(1,0,0,1,0,1,1,0) For hs[A] = 'y', zz-filters are implements for a period hst. The t1 timing has been optimized to avoid t1-ridges Enhancement summary of selected peaks (cbr.II.073) (for more details see experiment notebook): Peak enhancement 34 1.8 57 1.8 141 1.2 172 1.6 115 1.4 special parameters: pw: 90 deg 1H pulse, uses tpwr pwN: 90 deg N15 pulse,uses pwNlvl C90: 90 deg C13 pulse, uses C90lvl d2: incremented delay for X frequency labeling (calculated from sw1) j: effective 15N-1H coupling tauNH: 1/ (4 * j) ( ~ 2.4 - 2.7ms) presat: preirradiation time (secs) satpwr: power for presaturation irrfrq: water irradiation frequency tof: frequency for the rest of the pulse sequence hst: homospoil delay time in zz-filter (only if hs='y' in status period A) dpwr: decoupling on Ch 2 during detection dpwr2: decoupling on Ch 3 during detection rof1: phase setting time rof2: amplifier unblanking alfa: receiver blanking gzlvl1: amplitude of PFG pulse gt1: unit length of PFG pulse quant1: mq selection parameters (for N15 quant1 ~ 9.9) pwN,pwNlvl used for Ch2 (N15) C90,C90lvl used for Ch3 (C13) important note make sure you array phase instead of Ppeak phase table : Phases are defined internally. Does not use any phase table */ #include static int phi1[16] = { 0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3 }, phi2[1] = { 0 }, phi3[1] = { 0 }, phi4[2] = { 0,2 }, phi5[4] = { 0,0,2,2 }, phi8[1] = { 0 }, rec[8] = { 0,2,0,2, 2,0,2,0 }; pulsesequence() { /* declarations and assignments */ double pwN,recover,presat,irrfrq,j; double satpwr,pwNlvl; double C90lvl,C90,tauNH; double gzlvl1,gt1,quant1,phase; char se[MAXSTR]; presat=getval("presat"); satpwr=getval("satpwr"); pwNlvl=getval("pwNlvl"); pwN=getval("pwN"); j=getval("j");irrfrq=getval("irrfrq"); gzlvl1=getval("gzlvl1"); gt1=getval("gt1");quant1=getval("quant1"); phase = getval("phase"); getstr("se",se); tauNH=getval("tauNH"); recover=getval("recover"); C90lvl=getval("C90lvl"); C90=getval("C90"); if ( gt1 > 0.010 ) { text_error("pulsed gradient time too long"); abort(1); } if ( dpwr > 45 ) { text_error("dpwr is greater than 45 \n"); abort(1); } if ( dpwr2 > 45 ) { text_error("dpwr2 is greater than 45 \n"); abort(1); } /* loadtable("pfghetzych2se.ph"); load phase table */ settable(t1,16,phi1); settable(t2,1,phi2); /* no pulse */ settable(t3,1,phi3); /* Gradient refoucusing 180 deg pulse during t1 */ settable(t4,2,phi4); /* Sensitivity enhanced proton inversion */ settable(t5,4,phi5); settable(t8,1,phi8); settable(t31,8,rec); /* preparation period */ getelem(t31,ct,oph); /* receiver phase */ getelem(t4,ct,v4); if ( phase == 1 && se[A] == 'y' ) add(v4,two,v4); status(A); obsoffset(tof); /*default offset is at tof */ rcvroff(); delay(d1); /* recycle time = presat + d1 */ if (presat > 0.0) { obspower(satpwr); /* set presat power */ obsoffset(irrfrq); /* adjust TODEV freq to water resonance irrfrq */ rgpulse(presat,zero,rof1,rof2); obsoffset(tof); /* adjust TODEV freq to tof */ } obspower(tpwr); /* load TODEV with tpwr */ decpower(pwNlvl); /* load DODEV with pwNlvl */ dec2power(C90lvl); /* load DO2DEV with pwClvl */ rgpulse(pw,zero,rof1,rof2); /* first pulse */ delay(tauNH); simpulse(pw*2,pwN*2,one,one,rof1,rof2); delay(tauNH); if ( hs[A] == 'y' ) { rgpulse(pw,one,rof1,rof2); /* 1H y-pulse converts IxSz to -IzSz */ hsdelay(hst+500e-6); /* zz filter */ decrgpulse(pwN,t3,rof1,rof2); /* X(N15) nucleus x-pulse */ } else { simpulse(pw,pwN,one,t3,rof1,rof2); } /* evolution time */ delay(d2/2.0); sim3pulse(2*pw,0.0,2*C90,t5,one,one,rof1,rof2); delay(d2/2.0); /* gradients split around 180 deg pulse */ rgradient('z',(-1.0 * gzlvl1)); delay(gt1 * quant1 * 0.5); rgradient('z',0.0); delay(recover); decrgpulse(2*pwN,t1,rof1,rof1); rgradient('z',gzlvl1); delay(gt1 * quant1 * 0.5); rgradient('z',0.0); delay(recover); /* Homospoil is disabled during sensitivity enhanced */ /* to avoid killing the enhancement from IySz or IxSz */ if ( hs[A] == 'y' && se[A] == 'n' ) { decrgpulse(pwN,v4,rof1,rof2); /* X(C13)-pulse converts IzSy to IzSz */ /* nb +/- on this pulse and on receiver*/ /* selects heteronuclear pathway */ hsdelay(hst+500e-6); rgpulse(pw,zero,2e-6,0.0); /* 1H y-pulse with tppi */ } else { simpulse(pw,pwN,zero,v4,rof1,rof2); } delay(tauNH); simpulse(pw*2,pwN*2,one,one,rof1,rof2); /* 180 deg pulse on H and X-nucleus */ if ( se[A] == 'y' ) { delay(tauNH); simpulse(pw,pwN,one,one,rof1,rof2); delay(tauNH); simpulse(pw*2,pwN*2,one,one,rof1,rof2); delay(tauNH); rgpulse(pw,zero,rof1,rof2); delay(gt1+recover); rgpulse(pw*2.0,one,rof1,rof2); if (phase == 1) { rgradient('z',gzlvl1); } else { rgradient('z',(-1.0*gzlvl1)); } delay(gt1); rgradient('z',0.0); delay(recover); } else { delay(tauNH-gt1-recover); if (phase == 1) { rgradient('z',(-1*gzlvl1)); } else { rgradient('z',gzlvl1); } delay(gt1); rgradient('z',0.0); delay(recover); } dec2power(dpwr2);decpower(dpwr); status(B); } /* Phase cycling done using Static int structure above. */ /* phase table:pfghetzych2_NH.ph t1 = 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 t2 = 0 t3 = 0 t4 = 0 2 t5 = 0 0 2 2 t8 = 0 t31= 0 2 0 2 2 0 2 0 */