本文整理汇总了C++中dec2rgpulse函数的典型用法代码示例。如果您正苦于以下问题:C++ dec2rgpulse函数的具体用法?C++ dec2rgpulse怎么用?C++ dec2rgpulse使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了dec2rgpulse函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: pulsesequence
pulsesequence()
{
delay(d1);
rcvroff();
if (d3>4.5)
dec4rgpulse(pw, oph, rof1, rof2);
else
{
if (d3>3.5)
dec3rgpulse(pw, oph, rof1, rof2);
else
dec2rgpulse(pw, oph, rof1, rof2);
}
}
示例2: pulsesequence
//.........这里部分代码省略.........
if (scuba[0] == 'y')
{
rgpulse(pw,v3,2.0e-6,0.0);
rgpulse(2.0*pw,v4,2.0e-6,0.0);
rgpulse(pw,v3,2.0e-6,0.0);
delay(scubad/2.0);
rgpulse(pw,v3,2.0e-6,0.0);
rgpulse(2.0*pw,v4,2.0e-6,0.0);
rgpulse(pw,v3,2.0e-6,0.0);
delay(scubad/2.0);
}
}
else delay(d1);
obsstepsize(45.0);
initval(7.0,v7);
xmtrphase(v7);
status(B);
rgpulse(pw,v2,rof1,0.0);
xmtrphase(zero);
if (d2>0.0)
{
if ((C13refoc[A] == 'n') && (N15refoc[A] == 'n') && (CNrefoc[A] == 'n'))
{
delay(d2-4.0*pw/PI-SAPS_DELAY-rof1);
}
else if ((C13refoc[A] == 'n') && (N15refoc[A] == 'n') && (CNrefoc[A] == 'y'))
{
if (pwN > 2.0*pwC)
{
if (d2/2.0 > (pwN +0.64*pw+rof1))
{
delay(d2/2.0-pwN-0.64*pw-SAPS_DELAY);
dec2rgpulse(pwN-2.0*pwC,zero,0.0,0.0);
sim3pulse(0.0,pwC,pwC, zero,zero,zero, 0.0, 0.0);
sim3pulse(0.0,2.0*pwC,2.0*pwC, zero,one,zero, 0.0, 0.0);
sim3pulse(0.0,pwC,pwC, zero,zero,zero, 0.0, 0.0);
dec2rgpulse(pwN-2.0*pwC,zero,0.0,0.0);
delay(d2/2.0-pwN-0.64*pw-rof1);
}
else
delay(d2-4.0*pw/PI-SAPS_DELAY-rof1);
}
else
{
if (d2/2.0 > (pwN +pwC+ 0.64*pw+rof1))
{
delay(d2/2.0-pwN-pwC-0.64*pw-SAPS_DELAY);
decrgpulse(pwC,zero,0.0,0.0);
sim3pulse(0.0,2.0*pwC,2.0*pwN, zero,one,zero, 0.0, 0.0);
decrgpulse(pwC,zero,0.0,0.0);
delay(d2/2.0-pwN-pwC-0.64*pw-rof1);
}
else
delay(d2-4.0*pw/PI-SAPS_DELAY-rof1);
}
}
else if ((C13refoc[A] == 'n') && (N15refoc[A] == 'y') && (CNrefoc[A] == 'n'))
{
if (d2/2.0 > (pwN + 0.64*pw+rof1))
{
delay(d2/2.0-pwN-0.64*pw-SAPS_DELAY);
dec2rgpulse(2.0*pwN, zero, 0.0, 0.0);
delay(d2/2.0-pwN-0.64*pw-rof1);
}
else
示例3: pulsesequence
//.........这里部分代码省略.........
if( ix == 1) d3_init = d3;
t2_counter = (int) ( (d3-d3_init)*sw2 + 0.5 );
if(t2_counter % 2)
{
tsadd(t3,2,4);
tsadd(t11,2,4);
}
/* Correct inverted signals for NH2 only spectra */
if (NH2only[A]=='y')
{
tsadd(t3,2,4);
}
/* BEGIN PULSE SEQUENCE */
status(A);
obspower(tpwr);
decpower(pwClvl);
dec2power(pwNlvl);
decoffset(dof);
decpwrf(rf0);
txphase(zero);
dec2phase(zero);
delay(d1);
dec2rgpulse(pwN, zero, 0.0, 0.0); /*destroy N15 and C13 magnetization*/
decrgpulse(pwC, zero, 0.0, 0.0);
zgradpulse(gzlvl0, 0.5e-3);
delay(1.0e-4);
dec2rgpulse(pwN, one, 0.0, 0.0);
decrgpulse(pwC, one, 0.0, 0.0);
zgradpulse(0.7*gzlvl0, 0.5e-3);
txphase(t1);
decphase(zero);
dec2phase(zero);
initval(135.0,v1);
obsstepsize(1.0);
xmtrphase(v1);
delay(5.0e-4);
rcvroff();
rgpulse(pw, t1, 50.0e-6, 0.0); /* 1H pulse excitation */
xmtrphase(zero); /* SAPS_DELAY */
txphase(zero);
if (tau1 > (2.0*GRADIENT_DELAY + pwN + 0.64*pw + 5.0*SAPS_DELAY))
{
if (tau1>0.002)
{
zgradpulse(gzlvl6, 0.8*(tau1 - 2.0*GRADIENT_DELAY - pwN - 0.64*pw));
delay(0.2*(tau1 - 2.0*GRADIENT_DELAY - pwN - 0.64*pw) - SAPS_DELAY);
}
else
{
示例4: pulsesequence
//.........这里部分代码省略.........
/* 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);
tau1=0.5*d2;
if(t1_counter %2) {
tsadd(t2,2,4);
tsadd(t14,2,4);
}
/* BEGIN ACTUAL PULSE SEQUENCE */
status(A);
obspower(tpwr); /* Set power for pulses */
dec2power(pwNlvl); /* Set decoupler2 power to pwNlvl */
initval(ncyc+0.1,v10); /* for DIPSI-2 */
delay(d1);
status(B);
rcvroff();
/*destroy N15 magnetization*/
dec2rgpulse(pwN, zero, 0.0, 0.0);
zgradpulse(gzlvl1, gt1);
delay(9.0e-5);
/* 1H-15N INEPT */
rgpulse(pw,zero,1.0e-6,0.0);
txphase(zero); dec2phase(zero);
zgradpulse(gzlvl2,gt2);
delay(taua -pwN-0.5*pw -gt2 ); /* delay=1/4J(NH) */
sim3pulse(2.0*pw,0.0e-6,2*pwN,zero,zero,zero,0.0,0.0);
txphase(one); dec2phase(t1);
zgradpulse(gzlvl2,gt2);
delay(taua -1.5*pwN -gt2); /* delay=1/4J(NH) */
sim3pulse(pw,0.0e-6,pwN,one,zero,t1,0.0,0.0);
if (tpwrsf < 4095.0)
{obspwrf(tpwrsf); tpwrs=tpwrs+6.0;}
obspower(tpwrs);
shaped_pulse("H2Osinc", pwHs, two, 2.0e-6, 0.0);
obspower(tpwr); obspwrf(4095.0); tpwrs=tpwrs-6.0;
txphase(zero); dec2phase(zero);
zgradpulse(gzlvl3,gt3);
delay(taub -1.5*pwN -gt3 -pwHs-2.0e-6-2.0*POWER_DELAY-WFG_START_DELAY); /* delay=1/4J(NH) */
示例5: pulsesequence
//.........这里部分代码省略.........
sim3pulse(0.0,pw90onco,pwN,zero,zero,zero,rof1,rof1); /* 90 for 15N and 13C' */
zgradpulse(gzlvl0,gt0);
delay(gstab);
/* transfer from HN to N by INEPT */
/* shaped pulse for water flip-back */
obspower(tpwrs); obspwrf(tpwrsf_d);
shaped_pulse("H2Osinc_d",pwHs,one,2.0e-6,0.0);
obspower(tpwr); obspwrf(4095.0);
/* shaped pulse */
rgpulse(pw,zero,rof1,0.0);
zgradpulse(gzlvl0*1.3,gt0);
delay(gstab);
delay(tauhn - gt0 - gstab); /* 1/(4JHN) */
sim3pulse(2.0*pw,0.0,2.0*pwN,zero,zero,zero,rof1,rof1);
delay(tauhn - gt0 - gstab); /* 1/(4JHN) */
zgradpulse(gzlvl0*1.3,gt0);
delay(gstab);
rgpulse(pw,three,rof1,0.0); /* 90 1H */
zgradpulse(gzlvl3,gt3);
delay(gstab);
decpwrf(rf180onco); /* Set decoupler power to rf180onco */
dec2rgpulse(pwN,zero,0.0,0.0); /* 90 15N */
/* start transfer from N to CO */
delay(5.5e-3 - pwHd - POWER_DELAY - PRG_START_DELAY); /* 1/(2JHN) */
obspower(tpwrd);
rgpulse(pwHd,one,rof1,0.0);
txphase(zero);
obsprgon("waltz16", pwHd, 90.0);
xmtron();
delay(taunco - 5.5e-3 - 0.5*pw180onco); /* 1/(4JNCO) - 1/(2JHN) */
sim3pulse(0.0,pw180onco,2.0*pwN,zero,zero,zero,rof1,rof1);
delay(taunco - 5.5e-3 - 0.5*pw180onco); /* 1/(4JNCO) - 1/(2JHN) */
/* turn proton decoupling off */
xmtroff();
obsprgoff();
rgpulse(pwHd,three,rof1,0.0);
obspower(tpwr);
/* turned proton decoupling off */
delay(5.5e-3 - PRG_STOP_DELAY - pwHd - POWER_DELAY); /* 1/(2JHN) */
/* Start in-phase filter */
if (( phase1 == 1 || phase1 == 2))
{
示例6: pulsesequence
pulsesequence()
{
double gzlvl1,
gt1,
gzlvl3,
gt3,
gstab,
pwx2lvl,
pwx2,
tau,
gtau,
hsglvl,
hsgt;
char nullflg[MAXSTR],
sspul[MAXSTR];
int iphase,
icosel;
gzlvl1 = getval("gzlvl1");
gt1 = getval("gt1");
gzlvl3 = getval("gzlvl3");
gt3 = getval("gt3");
pwx2lvl = getval("pwx2lvl");
pwx2 = getval("pwx2");
hsglvl = getval("hsglvl");
hsgt = getval("hsgt");
gstab = getval("gstab");
getstr("nullflg",nullflg);
getstr("sspul",sspul);
iphase = (int)(getval("phase")+0.5);
icosel = 1;
tau = 1/(2*(getval("j1xh")));
gtau = 2*gstab + GRADIENT_DELAY;
if (tau < (gt3+gstab))
{
text_error("tau must be greater than gt3+gstab\n");
psg_abort(1);
}
settable(t1,2,ph1);
settable(t2,4,ph2);
settable(t3,4,ph3);
assign(zero,v4);
getelem(t1,ct,v1);
getelem(t3,ct,oph);
if (iphase == 2)
icosel = -1;
initval(2.0*(double)((int)(d2*getval("sw1")+0.5)%2),v10);
add(v1,v10,v1);
add(v4,v10,v4);
add(oph,v10,oph);
status(A);
dec2power(pwx2lvl);
if (sspul[0] == 'y')
{
zgradpulse(hsglvl,hsgt);
rgpulse(pw,zero,rof1,rof1);
zgradpulse(hsglvl,hsgt);
}
delay(d1);
status(B);
rcvroff();
if (nullflg[0] == 'y')
{
rgpulse(0.5*pw,zero,rof1,rof1);
delay(tau);
sim3pulse(2.0*pw,0.0,2.0*pwx2,zero,zero,zero,rof1,rof1);
delay(tau);
rgpulse(1.5*pw,two,rof1,rof1);
zgradpulse(hsglvl,hsgt);
delay(1e-3);
}
rgpulse(pw,zero,rof1,rof1);
delay(tau - rof1 - (2*pw/PI));
dec2rgpulse(pwx2,v1,rof1,1.0e-6);
delay(gt1+gtau - (2*pwx2/PI) - pwx2 - 1.0e-6 - rof1);
dec2rgpulse(2*pwx2,v4,rof1,1.0e-6);
delay(gstab - pwx2 - 1.0e-6);
zgradpulse(gzlvl1,gt1);
delay(gstab - rof1 - pw);
delay(d2/2);
rgpulse(2.0*pw,zero,rof1,rof1);
delay(d2/2);
delay(gstab - rof1 - pw);
zgradpulse(gzlvl1,gt1);
delay(gstab - pwx2 - rof1);
dec2rgpulse(2*pwx2,zero,rof1,1.0e-6);
delay(gt1+gtau - (2*pwx2/PI) - pwx2 - 1.0e-6 - rof1);
//.........这里部分代码省略.........
示例7: pulsesequence
//.........这里部分代码省略.........
delay(2.0e-6);
/* xxxxxxxxxxxxxxxxxxxxxx 1HN to 15N TRANSFER xxxxxxxxxxxxxxxxxx */
rgpulse(pw,zero,0.0,0.0); /* 90 deg 1H pulse */
delay(0.2e-6);
zgradpulse(gzlvl1, gt1);
delay(2.0e-6);
delay(taua - gt1 - 2.2e-6); /* taua <= 1/4JNH */
sim3pulse(2*pw,0.0,2*pwN,zero,zero,zero,0.0,0.0);
txphase(three); dec2phase(zero); decphase(zero);
delay(taua - gt1 - gstab -0.2e-6 - 2.0e-6);
delay(0.2e-6);
zgradpulse(gzlvl1, gt1);
delay(gstab);
/* xxxxxxxxxxxxxxxxxxxxxx 15N to 13CO TRANSFER xxxxxxxxxxxxxxxxxx */
if(sel_flg[A] == 'n') {
rgpulse(pw,three,2.0e-6,0.0);
delay(0.2e-6);
zgradpulse(gzlvl2, gt2);
delay(gstab);
dec2rgpulse(pwN,zero,0.0,0.0);
delay( zeta + pwS4 );
dec2rgpulse(2*pwN,zero,0.0,0.0);
c13pulse("co", "ca", "sinc", 180.0, zero, 0.0, 0.0);
dec2phase(one);
delay(zeta - 2.0e-6);
dec2rgpulse(pwN,one,2.0e-6,0.0);
}
else {
rgpulse(pw,one,2.0e-6,0.0);
initval(1.0,v6);
dec2stepsize(45.0);
dcplr2phase(v6);
delay(0.2e-6);
zgradpulse(gzlvl2, gt2);
delay(gstab);
dec2rgpulse(pwN,zero,0.0,0.0);
dcplr2phase(zero); dec2phase(zero);
delay(1.34e-3 - SAPS_DELAY - 2.0*pw);
rgpulse(pw,one,0.0,0.0);
示例8: pulsesequence
pulsesequence() {
// Define Variables and Objects and Get Parameter Values
GP inept = getinept("ineptYX");
strncpy(inept.ch1,"dec2",4);
strncpy(inept.ch2,"obs",3);
putCmd("ch1YXinept='dec2'\n");
putCmd("ch2YXinept='obs'\n");
DSEQ dec = getdseq("H");
strncpy(dec.t.ch,"dec",3);
putCmd("chHtppm='dec'\n");
strncpy(dec.s.ch,"dec",3);
putCmd("chHspinal='dec'\n");
DSEQ mix = getdseq("Hmix");
strncpy(mix.t.ch,"dec",3);
putCmd("chHmixtppm='dec'\n");
strncpy(mix.s.ch,"dec",3);
putCmd("chHmixspinal='dec'\n");
//--------------------------------------
// Copy Current Parameters to Processed
//-------------------------------------
putCmd("groupcopy('current','processed','acquisition')");
// Dutycycle Protection
double simpw1 = inept.pw1;
if (inept.pw2 > inept.pw1) simpw1 = inept.pw2;
double simpw2 = inept.pw3;
if (inept.pw4 > inept.pw3) simpw2 = inept.pw4;
DUTY d = init_dutycycle();
d.dutyon = getval("pwY90") + 2.0*simpw1 + 2.0*simpw2;
d.dutyoff = d1 + 4.0e-6;
d.c1 = d.c1 + (!strcmp(dec.seq,"tppm"));
d.c1 = d.c1 + ((!strcmp(dec.seq,"tppm")) && (dec.t.a > 0.0));
d.t1 = inept.t1 + inept.t2 + inept.t3 + inept.t4 +
getval("rd") + getval("ad") + at;
d.c2 = d.c2 + (!strcmp(dec.seq,"spinal"));
d.c2 = d.c2 + ((!strcmp(dec.seq,"spinal")) && (dec.s.a > 0.0));
d.t2 = inept.t1 + inept.t2 + inept.t3 + inept.t4 +
getval("rd") + getval("ad") + at;
d = update_dutycycle(d);
abort_dutycycle(d,10.0);
// Set Phase Tables
settable(phY90,16,table1);
settable(ph1Yyxinept,4,table2);
settable(ph1Xyxinept,4,table3);
settable(ph2Yyxinept,4,table4);
settable(ph2Xyxinept,16,table5);
settable(ph3Yyxinept,8,table6);
settable(ph3Xyxinept,4,table7);
settable(phRec,8,table8);
setreceiver(phRec);
// Begin Sequence
txphase(ph1Xyxinept); decphase(zero); dec2phase(phY90);
obspwrf(getval("aXyxinept")); dec2pwrf(getval("aY90"));
obsunblank(); decunblank(); _unblank34();
delay(d1);
sp1on(); delay(2.0e-6); sp1off(); delay(2.0e-6);
// Y Direct Polarization
_dseqon(mix);
dec2rgpulse(getval("pwY90"),phY90,0.0,0.0);
// INEPT Transfer from Y to X
_ineptref(inept,ph1Yyxinept,ph1Xyxinept,ph2Yyxinept,ph2Xyxinept,ph3Yyxinept,ph3Xyxinept);
_dseqoff(mix);
// Begin Acquisition
_dseqon(dec);
obsblank(); _blank34();
delay(getval("rd"));
startacq(getval("ad"));
acquire(np, 1/sw);
endacq();
_dseqoff(dec);
obsunblank(); decunblank(); _unblank34();
}
示例9: pulsesequence
//.........这里部分代码省略.........
delay(1.0e-4);
/*dec2rgpulse(pwN, one, 0.0, 0.0); */
zgradpulse(0.7*gzlvl0, 0.5e-3);
txphase(t1);
delay(5.0e-4);
rgpulse(pw,zero,0.0,0.0); /* 1H pulse excitation */
txphase(zero);
dec2phase(zero);
zgradpulse(gzlvl0, gt0);
delay(lambda - gt0);
sim3pulse(2.0*pw, 0.0, 2.0*pwN, zero,zero, zero, 0.0, 0.0);
txphase(one);
zgradpulse(gzlvl0, gt0);
delay(lambda - gt0);
rgpulse(pw, three, 0.0, 0.0);
txphase(two);
obspower(tpwrs+6.0);
obspwrf(tpwrsf_n);
shaped_pulse("H2Osinc_n", pwHs, zero, 5.0e-5, 0.0);
obspower(tpwr); obspwrf(4095.0);
zgradpulse(gzlvl3, gt3);
dec2phase(t1);
delay(gstab);
decpwrf(rf8);
dec2rgpulse(pwN, t1, 0.0, 0.0);
txphase(zero);
decphase(zero);
/* xxxxxxxxxxxxxxxxxx OPTIONS FOR N15 EVOLUTION xxxxxxxxxxxxxxxxxxxxx */
txphase(zero);
dec2phase(zero);
/* shared CT for C' Cfilter and N15 chem shift evolution */
delay(tCN/2.0 - kappa*tau1 - gt5 -gstab);
zgradpulse(gzlvl5,gt5);
delay(gstab);
if(Cfilter[A] == 'y' && (1-kappa)*tau1 < pwC8/2) {
sim3shaped_pulse("", "offC8", "", 0.0, pwC8, 2.0*pwN, zero, zero, zero,0.0,0.0);
zgradpulse(gzlvl5,gt5);
delay(tCN/2.0 + (1-kappa)*tau1 -gt5 - pwC3 - pwC8);
}
else if (Cfilter[A] == 'y' && (1-kappa)*tau1 >= pwC8/2){
dec2rgpulse(2.0*pwN,zero,(pwC8-2.0*pwN)/2.0,(pwC8-2.0*pwN)/2.0);
if( (1-kappa)*tau1 >= gt5 +gstab + pwC8/2){
zgradpulse(gzlvl5,gt5);
delay((1-kappa)*tau1 -pwC8/2.0 - gt5);
decshaped_pulse("offC8", pwC8,zero,0.0,0.0);
delay(tCN/2.0 - pwC3 - 1.5*pwC8);
}
else{
delay((1-kappa)*tau1 -pwC8/2.0);
decshaped_pulse("offC8", pwC8,zero,0.0,0.0);
zgradpulse(gzlvl5,gt5);
delay(tCN/2.0 -gt5 - pwC3 - 1.5*pwC8);
}
示例10: pulsesequence
pulsesequence() {
// Define Variables and Objects and Get Parameter Values
double aYxy8 = getval("aYxy8");
double pwYxy8 = getval("pwYxy8");
double nYxy8 = getval("nYxy8");
int cycles = (int) nYxy8/2.0;
nYxy8 = 2.0*cycles;
int counter = (int) (nYxy8 - 1.0);
initval((nYxy8 - 1.0),v8);
double onYxy8 = getval("onYxy8");
double srate = getval("srate");
DSEQ dec = getdseq("H");
strncpy(dec.t.ch,"dec",3);
putCmd("chHtppm='dec'\n");
strncpy(dec.s.ch,"dec",3);
putCmd("chHspinal='dec'\n");
DSEQ mix = getdseq("Hmix");
strncpy(mix.t.ch,"dec",3);
putCmd("chHmixtppm='mix'\n");
strncpy(mix.s.ch,"dec",3);
putCmd("chHmixspinal='mix'\n");
//--------------------------------------
// Copy Current Parameters to Processed
//-------------------------------------
putCmd("groupcopy('current','processed','acquisition')");
// Dutycycle Protection
DUTY d = init_dutycycle();
d.dutyon = getval("pwX90") + 4.0*nYxy8*pwYxy8 + getval("pwX180");
d.dutyoff = d1 + 4.0e-6;
d.c1 = d.c1 + (!strcmp(dec.seq,"tppm"));
d.c1 = d.c1 + ((!strcmp(dec.seq,"tppm")) && (dec.t.a > 0.0));
d.t1 = getval("rd") + getval("ad") + at;
d.c2 = d.c2 + (!strcmp(dec.seq,"spinal"));
d.c2 = d.c2 + ((!strcmp(dec.seq,"spinal")) && (dec.s.a > 0.0));
d.t2 = getval("rd") + getval("ad") + at;
d.c3 = d.c3 + (!strcmp(mix.seq,"tppm"));
d.c3 = d.c3 + ((!strcmp(mix.seq,"tppm")) && (mix.t.a > 0.0));
d.t3 = 2.0*nYxy8*(1.0/srate - 2.0*pwYxy8) + 1.0/srate - getval("pwX180");
d.c4 = d.c4 + (!strcmp(mix.seq,"spinal"));
d.c4 = d.c4 + ((!strcmp(mix.seq,"spinal")) && (mix.s.a > 0.0));
d.t4 = 2.0*nYxy8*(1.0/srate - 2.0*pwYxy8) + 1.0/srate - getval("pwX180");
d = update_dutycycle(d);
abort_dutycycle(d,10.0);
// Set Phase Tables
settable(phX90,4,table1);
settable(ph1Yxy8,8,table2);
settable(ph2Yxy8,4,table3);
settable(phX180,4,table4);
settable(phRec,4,table5);
if (counter < 0) tsadd(phRec,2,4);
setreceiver(phRec);
// Begin Sequence
txphase(phX90); decphase(zero);
obspwrf(getval("aX90"));
obsunblank(); decunblank(); _unblank34();
delay(d1);
sp1on(); delay(2.0e-6); sp1off(); delay(2.0e-6);
// X Single Pulse
rgpulse(getval("pwX90"),phX90,0.0,0.0);
// xy8Y Period One
obspwrf(getval("aX180"));
txphase(phX180);
if (counter >= 0) {
_dseqon(mix);
delay(pwYxy8/2.0);
dec2pwrf(aYxy8);
sub(v1,v1,v1);
if (counter >= 1) {
if (counter > 1) loop(v8,v9);
getelem(ph1Yxy8,v1,v4);
incr(v1);
getelem(ph2Yxy8,ct,v2);
add(v4,v2,v2);
dec2phase(v2);
delay(0.5/srate - pwYxy8);
if (onYxy8 == 2)
dec2rgpulse(pwYxy8,v2,0.0,0.0);
else
delay(pwYxy8);
if (counter > 1) endloop(v9);
}
// X Refocussing Pulse
//.........这里部分代码省略.........
示例11: pulsesequence
//.........这里部分代码省略.........
/* Set up CONSTANT/SEMI-CONSTANT time evolution in N15 */
if (ni2 > 1)
{
halfT2 = 0.5*(ni2-1)/sw2;
t2b = (double) t2_counter*((halfT2 - timeTN)/((double)(ni2-1)));
if( ix==1 && halfT2 - timeTN > 0 ) printf("SCT mode on, max ni2=%g\n",timeTN*sw2*2+1);
if(t2b < 0.0) t2b = 0.0;
t2a = timeTN - tau2*0.5 + t2b;
if(t2a < 0.2e-6) t2a = 0.0;
}
else
{
t2b = 0.0;
t2a = timeTN - tau2*0.5;
}
status(A);
rcvroff();
decpower(pwClvl);
decoffset(dof);
dec2power(pwNlvl);
dec2offset(dof2);
obspwrf(tpwrsf);
decpwrf(4095.0);
obsoffset(tof);
set_c13offset("co");
dec2rgpulse(pwN*2.0,zero,0.0,0.0);
zgradpulse(1.5*gzlvl4, gt4);
delay(1.0e-4);
lk_sample();
delay(d1-gt4);
lk_hold();
h_shapedpulse("pc9f",shbw,shofs,zero, 2.0e-6, 0.0);
delay(lambda-pwS5*0.5-pwS6*0.5);
h_sim3shapedpulse("reburp",shbw,shofs,0.0,2.0*pwN, one, zero, zero, 0.0, 0.0);
delay(lambda-pwS5*0.5-pwS6*0.5);
if(n15_flg[0]=='y') h_shapedpulse("pc9f_",shbw,shofs,three, 0.0, 0.0);
else h_shapedpulse("pc9f_",shbw,shofs,one, 0.0, 0.0);
obspower(shlvl1);
/**************************************************************************/
dec2rgpulse(pwN,zero,0.0,0.0);
zgradpulse(gzlvl4, gt4);
delay(timeTN-pwS2*0.5-gt4);
sim3_c13pulse("", "co", "ca", "sinc", "", 0.0, 180.0, 2.0*pwN,
zero, zero, zero, 2.0e-6, 2.0e-6);
zgradpulse(gzlvl4, gt4);
delay(timeTN-pwS2*0.5-gt4);
dec2rgpulse(pwN,one,0.0,0.0);
/**************************************************************************/
示例12: pulsesequence
//.........这里部分代码省略.........
{
tau2 += (1.0/(2.0*sw2));
}
if (tau2 < 0.2e-6) tau2 = 0.0;
tau2 = tau2/2.0;
tau3 = d4;
if(f3180[A] == 'y')
{
tau3 += (1.0/(2.0*sw3));
}
tau3 = tau3/2.0;
flippwr = tpwr - 20.0*log10(flippw/(compH*pw*1.69));
flippwr = (int)(flippwr + 0.4);
if (fliphase < 0.2e-6) fliphase = fliphase + 360.0;
initval(fliphase, v10);
initval(7.0, v9);
obsstepsize(45.0);
/* BEGIN ACTUAL PULSE SEQUENCE */
status(A);
obspower(tpwr);
decpower(dpwr);
dec2power(pwNlvl);
obsoffset(tofhn);
xmtrphase(v9);
delay(d1);
status(B); /* for 13C decoupling during t2, use dm='nynn' or 'nyyn' */
dec2rgpulse(pwN,zero,0.0,2.0e-6);
zgradpulse(gzlvl0,gt0);
rgpulse(pw,t1,1.0e-6,2.0e-6);
zgradpulse(gzlvl6,gt6);
delay(1.9*tauxh - gt1 - 2.0e-6);
dec2rgpulse(pwN, t2, 0.0, 0.0);
delay(tau2);
rgpulse(2.0*pw, t1, 0.0, 0.0);
dec2phase(zero);
delay(tau2);
dec2rgpulse(pwN, zero, 0.0, 0.0);
xmtrphase(zero);
delay(1.9*tauxh - gt6 - 600.0e-6 - SAPS_DELAY);
txphase(zero);
zgradpulse(gzlvl6,gt6);
txphase(zero);
delay(0.6e-3);
if (tau1 > pwN)
{
delay(tau1 - pwN);
dec2rgpulse(2.0*pwN, zero, 0.0, 0.0);
delay(tau1 - pwN);
}
else
{
delay(2.0*tau1);
示例13: pulsesequence
//.........这里部分代码省略.........
/* Calculate modifications to phases for States-TPPI acquisition */
if( ix == 1) d2_init = d2;
t1_counter = (int) ( (d2-d2_init)*sw1 + 0.5 );
if(t1_counter % 2)
{ tsadd(t2,2,4); tsadd(t12,2,4); }
if( ix == 1) d3_init = d3;
t2_counter = (int) ( (d3-d3_init)*sw2 + 0.5 );
if(t2_counter % 2)
{ tsadd(t8,2,4); tsadd(t12,2,4); }
/* BEGIN PULSE SEQUENCE */
status(A);
delay(d1);
if (dm3[B]=='y') lk_hold();
rcvroff();
set_c13offset("ca");
obsoffset(tof);
obspower(tpwr);
obspwrf(4095.0);
decpower(pwClvl);
decpwrf(4095.0);
dec2power(pwNlvl);
txphase(three);
delay(1.0e-5);
dec2rgpulse(pwN, zero, 0.0, 0.0); /*destroy N15 and C13 magnetization*/
decrgpulse(pwC, zero, 0.0, 0.0);
zgradpulse(gzlvl0, 0.5e-3);
delay(1.0e-4);
dec2rgpulse(pwN, one, 0.0, 0.0);
decrgpulse(pwC, zero, 0.0, 0.0);
zgradpulse(0.7*gzlvl0, 0.5e-3);
delay(5.0e-4);
if(dm3[B] == 'y') /*optional 2H decoupling on */
{dec3unblank(); dec3rgpulse(1/dmf3, one, 0.0, 0.0);
dec3unblank(); setstatus(DEC3ch, TRUE, 'w', FALSE, dmf3);}
rgpulse(pw, zero, 0.0, 0.0); /* 1H pulse excitation */
txphase(zero);
decphase(zero);
zgradpulse(gzlvl0, gt0); /* 2.0*GRADIENT_DELAY */
decpwrf(rfst);
delay(tauCH - gt0 - WFG2_START_DELAY - 0.5e-3 + 70.0e-6);
simshaped_pulse("",stCshape, 2.0*pw, 1.0e-3, zero, zero, 0.0, 0.0);
delay(tauCH - gt0 - 0.5e-3 + 70.0e-6 - 150.0e-6);
decpwrf(rf0);
zgradpulse(gzlvl0, gt0); /* 2.0*GRADIENT_DELAY */
delay(150.0e-6);
rgpulse(pw, one, 0.0, 0.0);
zgradpulse(gzlvl3, gt3);
示例14: pulsesequence
//.........这里部分代码省略.........
zgradpulse(gzlvl2, gt2);
delay(gstab);
delay(d1-gt2);
lk_hold();
}
obspower(shlvl1);
shaped_pulse(shname1,shpw1,zero,2.0e-4,2.0e-6);
if (SE[0] == 'y')
{
if (ipap_flg[0] == 'y')
{
if ((tau1+pwN*2.0) < pwS2) delay((pwS2*0.5-tau1*0.5-pwN)*0.5);
if (grad3_flg[0]== 'y')
delay(taunh*0.5-shpw1*0.533-pwS1*0.5+(gt3*2.0+2.0*gstab+pwN*3.0));
else
delay(taunh*0.5-shpw1*0.533-pwS1*0.5+pwN);
hn_simshapedpulse(refpat,shbw,shofs-4.8,"bip720_50_20",40.0,0.0, zero, zero, 0.0, 0.0);
obspower(shlvl2);
obspwrf(4095.0);
compo1_pulse(shname2,shpw2,pwN,shdmf2,t1,tau1,c13refoc,pwS,taunh,pwS1,pwS2,gt1,gt3,gzlvl3,grad3_flg,gstab);
obspower(shlvl2);
obspwrf(4095.0);
zgradpulse(gzlvl1, gt1);
delay(gstab);
h_sim3shapedpulse(refpat,shbw,shofs-4.8,0.0,2.0*pwN, one, zero, zero, 0.0, 0.0);
zgradpulse(gzlvl1, gt1);
delay(gstab);
delay(taunh*0.5-gt1-gstab-POWER_DELAY-pwS1*0.5);
if ((tau1+pwN*2.0) < pwS2) delay((pwS2*0.5-tau1*0.5-pwN)*0.5);
if (ab_flg[0] == 'a')
dec2rgpulse(pwN,one,0.0,0.0);
else
dec2rgpulse(pwN,three,0.0,0.0);
if (grad3_flg[0]== 'y')
{
delay(gt3+gstab);
dec2rgpulse(pwN*2.0,zero,0.0,0.0);
zgradpulse(gzlvl3,gt3);
delay(gstab);
}
}
else
{
zgradpulse(gzlvl1, gt1);
delay(gstab);
if ((tau1+pwN*2.0) < pwS2)
delay(taunh-gt1-gstab-shpw1*0.533-adjust-(pwS2*0.5-tau1*0.5-pwN)*0.5);
else
delay(taunh-gt1-gstab-shpw1*0.533-adjust);
obspower(shlvl2);
obspwrf(tpwrsf);
compo_pulse(shname2,shpw2,pwN,shdmf2,t1,tau1,c13refoc,pwS);
obspower(shlvl1);
obspwrf(4095.0);
zgradpulse(gzlvl1, gt1);
delay(gstab);
if ((tau1+pwN*2.0) < pwS2)
delay(taunh-gt1-gstab-POWER_DELAY-(pwS2*0.5-tau1*0.5-pwN)*0.5);
else
delay(taunh-gt1-gstab-POWER_DELAY);
}
}
else
示例15: pulsesequence
//.........这里部分代码省略.........
sim3pulse(pw,0.0e-6,pwN,zero,zero,t6,0.0,0.0);
decoffset(dof);
decpwrf(rfst);
/* mixing time */
zgradpulse(gzlvl4,gt4);
delay(gstab);
if(mix - 4.0e-6 - 4.0*GRADIENT_DELAY - gt4> 0.0)
{
if (gzlvld2>0.0)
{
zgradpulse(gzlvld2,mix-gt4-gstab);
}
else
delay(mix-gt4-gstab);
}
/* H1-N15 INEPT */
rgpulse(pw, zero, 0.0, 0.0);
zgradpulse(gzlvl1,gt1);
dec2phase(zero); decphase(zero);
delay(tauNH-gt1); /* delay=1/4J(XH) */
sim3pulse(2*pw,0.0,2*pwN,zero,zero,zero,rof1,rof1);
zgradpulse(gzlvl1,gt1);
txphase(one);
dec2phase(t2);
delay(tauNH-gt1 ); /* delay=1/4J(XH) */
rgpulse(pw, one, rof1, rof1);
zgradpulse(gzlvl2,gt2);
delay(gstab);
dec2rgpulse(pwN, t2, 0.0, 0.0);
txphase(zero); dec2phase(t4);
/* t1 evolution period */
if ( (C13refoc[A]=='y') && (tau1 > 0.5e-3 + WFG2_START_DELAY) )
{delay(tau1 - 0.5e-3 - WFG2_START_DELAY); /* WFG2_START_DELAY */
simshaped_pulse("", "stC200", 2.0*pw, 1.0e-3, zero, zero, 0.0, 0.0);
delay(tau1 - 0.5e-3);}
else
{delay(tau1);
rgpulse(2.0*pw, zero, 0.0, 0.0);
delay(tau1);}
dec2rgpulse(pwN, t4, 0.0, 0.0);
txphase(t1);
zgradpulse(gzlvl2,gt2);
delay(gstab);
rgpulse(pw, t1, rof1, rof1);
dec2phase(zero);
zgradpulse(gzlvl3,gt3);
txphase(v2);
delay(gstab);
delay(tauNH-gt3-gstab-pw*2.385-6.0*rof1 -d3*2.5);
rgpulse(pw*0.231,v2,rof1,rof1);
delay(d3);
rgpulse(pw*0.692,v2,rof1,rof1);
delay(d3);
rgpulse(pw*1.462,v2,rof1,rof1);
delay(d3/2-pwN);
dec2rgpulse(2*pwN, zero, rof1, rof1);
delay(d3/2-pwN);
rgpulse(pw*1.462,v3,rof1,rof1);
delay(d3);
rgpulse(pw*0.692,v3,rof1,rof1);
delay(d3);
rgpulse(pw*0.231,v3,rof1,rof1);
delay(tauNH-gt3-gstab-pw*2.385-6.0*rof1 -d3*2.5);
dec2power(dpwr2);
zgradpulse(gzlvl3,gt3);
delay(gstab);
/* acquire data */
status(C);
setreceiver(t14);
}