您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ zgradpulse函数代码示例

51自学网 2021-06-03 11:59:44
  C++
这篇教程C++ zgradpulse函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中zgradpulse函数的典型用法代码示例。如果您正苦于以下问题:C++ zgradpulse函数的具体用法?C++ zgradpulse怎么用?C++ zgradpulse使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了zgradpulse函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: pulsesequence

//.........这里部分代码省略.........   if (strcmp(slpatR,"cw") &&        strcmp(slpatR,"troesy") &&        strcmp(slpatR,"dante"))        abort_message("SpinLock pattern %s not supported!./n", slpatR);   sub(ct,ssctr,v7);   settable(t1,4,ph1);	getelem(t1,v7,v1);   settable(t2,8,ph2);	getelem(t2,v7,v2);   settable(t3,8,ph3);	   settable(t8,4,ph8);	getelem(t8,v7,v8);   settable(t6,8,ph6);	getelem(t6,v7,v6);     assign(v1,oph);    if (getflag("zfilt"))	getelem(t3,v7,oph);   add(v2,one,v3);   add(v2,two,v4);   add(v2,three,v5);   if (phase1 == 2)      {incr(v1); incr(v6);}			/* hypercomplex method *//*   mod2(id2,v13);   dbl(v13,v13);*/  initval(2.0*(double)(((int)(d2*getval("sw1")+0.5)%2)),v13);       add(v1,v13,v1);       add(v6,v13,v6);       add(oph,v13,oph);/* The following is for flipback pulse */   zfphinc=zfphinc+180;   if (zfphinc < 0) zfphinc=zfphinc+360;   initval(zfphinc,v10);/* BEGIN ACTUAL PULSE SEQUENCE */   status(A);      obspower(tpwr);   delay(5.0e-5);   if (getflag("sspul"))        steadystate();   if (satmode[0] == 'y')     {        if ((d1-satdly) > 0.02)                delay(d1-satdly);        else                delay(0.02);        satpulse(satdly,v6,rof1,rof1);     }   else        delay(d1);   if (getflag("wet"))     wet4(zero,one);   decpower(dpwr);   status(B);      rgpulse(pw, v1, rof1, rof1);      if (d2 > 0.0)       delay(d2 - POWER_DELAY - (2*pw/PI) - rof1);      else       delay(d2);            obspower(slpwrR);      if (mixR > 0.0)      {        if (dps_flag)	  {	     if (!strcmp(slpatR,"troesy"))          	rgpulse(mixR,v2,0.0,0.0);	     else		rgpulse(mixR,v3,0.0,0.0);	  }        else          SpinLock(slpatR,mixR,slpwR,v2,v3,v4,v5, v9);      }       if ((getflag("zfilt")) && (getflag("PFGflg")))        {           obspower(tpwr);           rgpulse(pw,v2,1.0e-6,rof1);           zgradpulse(gzlvlz,gtz);           delay(gtz/3);           if (getflag("flipback"))                FBpulse(v8,v10);           rgpulse(pw,v8,rof1,rof2);        }       else           delay(rof2);   status(C);}
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:101,


示例2: pulsesequence

//.........这里部分代码省略.........        rgpulse(d1,zero,20.0e-6,20.0e-6);   	obspower(tpwr);      /* Set transmitter power for hard 1H pulses */	delay(2.0e-5);	if(fscuba[0] == 'y')	{		delay(2.2e-2);		rgpulse(pw,zero,2.0e-6,0.0);		rgpulse(2*pw,one,2.0e-6,0.0);		rgpulse(pw,zero,2.0e-6,0.0);		delay(2.2e-2);	}   }   else   {    delay(d1);   }   obspower(tpwr);           /* Set transmitter power for hard 1H pulses */   txphase(zero);   dec2phase(zero);   decphase(zero);   delay(1.0e-5);/* Begin Pulses */   rcvroff();   delay(10.0e-6);/* first ensure that magnetization does infact start on H and not C */   decrgpulse(pwC,zero,2.0e-6,2.0e-6);   delay(2.0e-6);   zgradpulse(gzlvl0,gt0);   delay(gstab);/* this is the real start */   rgpulse(pw,zero,0.0,0.0);                    /* 90 deg 1H pulse */   delay(2.0e-6);   zgradpulse(gzlvl1,gt1);   delay(2.0e-6);   delay(taua - gt1 - 4.0e-6);   /* taua <= 1/4JCH */                             simpulse(2*pw,2*pwC,zero,zero,0.0,0.0);   txphase(t1);   delay(2.0e-6);   zgradpulse(gzlvl1,gt1);   delay(2.0e-6);   delay(taua - gt1 - 4.0e-6);    rgpulse(pw,t1,0.0,0.0);   txphase(zero);   delay(2.0e-6);   zgradpulse(gzlvl2,gt2);   delay(gstab);   decphase(t2);
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:67,


示例3: pulsesequence

//.........这里部分代码省略.........    tau2 = tau2/2.0;/* Calculate modifications to phases for States-TPPI acquisition          */   if( ix == 1) d3_init = d3;   t2_counter = (int) ( (d3-d3_init)*sw1 + 0.5 );   if(t2_counter % 2)        { tsadd(t8,2,4); tsadd(t12,2,4);  tsadd(t13,2,4);  }/* BEGIN PULSE SEQUENCE */status(A);   	delay(d1);      if (dm3[B]=='y') lk_hold();	rcvroff();        set_c13offset("cab");	obsoffset(tof);	obspower(tpwr); 	obspwrf(4095.0);	decpower(pwClvl);	decpwrf(4095.0); 	dec2power(pwNlvl);	txphase(one);	delay(1.0e-5);        if (TROSY[A] == 'n')	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(gstab);      if (TROSY[A] == 'n')	dec2rgpulse(pwN, one, 0.0, 0.0);	decrgpulse(pwC, zero, 0.0, 0.0);	zgradpulse(0.7*gzlvl0, 0.5e-3);	delay(gstab);      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, 2.0e-6, 0.0);        zgradpulse(gzlvl5, gt5);        delay(tauCH - gt5 - WFG2_START_DELAY - 0.5e-3 + 68.0e-6 );        sim_c13adiab_inv_pulse("", "aliph", stCwidth, "sech1", 2.0*pw, 1.0e-3,                                                  zero, zero, 2.0e-6, 2.0e-6);        zgradpulse(gzlvl5, gt5);        delay(tauCH - gt5 - 0.5e-3 + 68.0e-6);        rgpulse(pw, one, 0.0, 0.0);      if (ser_flg[0] == 'n' )         delay(pwS5);      if (ser_flg[0] == 'y' )        c_shapedpulse("isnob5",30.0,24.0,zero, 2.0e-6, 2.0e-6);  /*********************************** transfer  CB->CA + DEPT CBH **************/	zgradpulse(gzlvl3, gt3*1.2);	delay(gstab);        decrgpulse(pwC, t3, 0.0, 0.0);
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:66,


示例4: 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);//.........这里部分代码省略.........
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:101,


示例5: pulsesequence

pulsesequence(){  char    mixpat[MAXSTR], pshape[MAXSTR], httype[MAXSTR], sspul[MAXSTR];  double  rg1	= 2.0e-6,          mix	= getval("mix"),	/* mixing time */	  mixpwr = getval("mixpwr"),	/* mixing pwr */	  compH  = getval("compH"),	  gt0    = getval("gt0"),	/* gradient pulse in sspul */	  gt2    = getval("gt2"),	/* gradient pulse preceding mixing */	  gzlvl0 = getval("gzlvl0"),	/* gradient level for gt0 */	  gzlvl2 = getval("gzlvl2"),	/* gradient level for gt2 */	  gstab  = getval("gstab");	/* delay for gradient recovery */  shape   hdx;  void    setphases();  getstr("sspul", sspul);  getstr("pshape", pshape);  getstr("httype", httype);  getstr("mixpat", mixpat);  setlimit("mixpwr", mixpwr, 48.0);  (void) setphases();  if (httype[0] == 'i')    assign(zero,v2);  /* MAKE PBOX SHAPES */  if (FIRST_FID)    hhmix = pbox_mix("HHmix", mixpat, mixpwr, pw*compH, tpwr);  /* HADAMARD stuff */  if(httype[0] == 'e')                           /* excitation */    hdx = pboxHT_F1e(pshape, pw*compH, tpwr);  else if(httype[0] == 'r')                      /* refocusing */    hdx = pboxHT_F1r(pshape, pw*compH, tpwr);  else if(httype[0] == 'd')                      /* DPFGSE */  {    hdx = pboxHT_F1r(pshape, pw*compH, tpwr);    if (FIRST_FID)      ref180 = hdx;  }  else /* httype[0] == 'i' */                    /* inversion */    hdx = pboxHT_F1i(pshape, pw*compH, tpwr);  if (getval("htcal1") > 0.5)          /* Optional fine power calibration */    hdx.pwr += getval("htpwr1"); /* THE PULSE PROGRAMM STARTS HERE */  status(A);    delay(5.0e-5);    zgradpulse(gzlvl0,gt0);    if (sspul[A] == 'y')    {      rgpulse(pw,zero,rof1,rof1);      zgradpulse(gzlvl0,gt0);    }    pre_sat();          if (getflag("wet"))      wet4(zero,one);          delay(1.0e-5);    obspower(tpwr);    delay(1.0e-5);  status(B);    if (httype[0] == 'i')           /* longitudinal encoding */    {      ifzero(v1);        delay(2.0*(pw+rg1));        zgradpulse(gzlvl2,gt2);        delay(gstab);      elsenz(v1);        rgpulse(2.0*pw,v3,rg1,rg1);        zgradpulse(gzlvl2,gt2);        delay(gstab);      endif(v1);      pbox_pulse(&hdx, zero, rg1, rg1);      zgradpulse(gzlvl2,gt2);      delay(gstab);    }    else                            /* transverse encoding */    {      if (httype[0] == 'e')        pbox_pulse(&hdx, oph, rg1, rg1);      else      {        rgpulse(pw,oph,rg1,rg1);        if (httype[0] == 'd')       /* DPFGSE */        {          zgradpulse(2.0*gzlvl2,gt2);          delay(gstab);          pbox_pulse(&ref180, oph, rg1, rg1);//.........这里部分代码省略.........
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:101,


示例6: pulsesequence

//.........这里部分代码省略.........		delay(2.2e-2);		rgpulse(pw,zero,2.0e-6,0.0);		rgpulse(2*pw,one,2.0e-6,0.0);		rgpulse(pw,zero,2.0e-6,0.0);		delay(2.2e-2);	}   }   else   {    delay(d1);   }   obspower(tpwr);           /* Set transmitter power for hard 1H pulses */   txphase(one);   dec2phase(zero);   delay(1.0e-5);/* Begin Pulses */status(B);   rcvroff();   lk_hold();   shiftedpulse("sinc", pwHs, 90.0, 0.0, one, 2.0e-6, 0.0);   txphase(zero);   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);
开发者ID:OpenVnmrJ,项目名称:OpenVnmrJ,代码行数:66,


示例7: pulsesequence

//.........这里部分代码省略.........    else     {      delay(d1);     }   obspower(tpwr);           /* Set transmitter power for hard 1H pulses */   txphase(zero);   dec2phase(zero);   delay(1.0e-5);/* Begin Pulses */status(B);   rcvroff();   lk_hold();   delay(20.0e-6);   initval(1.0,v2);   obsstepsize(phase_sl);   xmtrphase(v2);   /* shaped pulse */   obspower(tpwrsl);   shaped_pulse(shp_sl,pw_sl,one,4.0e-6,0.0);   xmtrphase(zero);   obspower(tpwr);  txphase(zero);     delay(4.0e-6);   /* shaped pulse */   rgpulse(pw,zero,0.0,0.0);                    /* 90 deg 1H pulse */   delay(0.2e-6);   zgradpulse(gzlvl5,gt5);   delay(2.0e-6);   delay(taua - gt5 - 2.2e-6);   /* taua <= 1/4JNH */    sim3pulse(2*pw,0.0e-6,2*pwN,zero,zero,zero,0.0,0.0);   txphase(three); dec2phase(zero); decphase(zero);    delay(0.2e-6);   zgradpulse(gzlvl5,gt5);   delay(200.0e-6);   delay(taua - gt5 - 200.2e-6 - 2.0e-6);    if (sel_flg[A] == 'n')      {      rgpulse(pw,three,2.0e-6,0.0);      delay(0.2e-6);      zgradpulse(gzlvl3,gt3);      delay(200.0e-6);      dec2rgpulse(pwN,zero,0.0,0.0);      delay( zeta );        dec2rgpulse(2.0*pwN,zero,0.0,0.0);      decshaped_pulse(spchirp,pwchirp,zero,0.0,0.0);      delay(zeta -WFG_START_DELAY -pwchirp -WFG_STOP_DELAY -2.0e-6);     dec2rgpulse(pwN,zero,2.0e-6,0.0);
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:67,


示例8: pulsesequence

//.........这里部分代码省略.........    delay(d1);   }   obspower(tpwr);           /* Set transmitter power for hard 1H pulses */   obsoffset(tof);   txphase(t1);   decphase(zero);   dec2phase(zero);   delay(1.0e-5);/* Begin Pulses */status(C);   decoffset(dof_me);   lk_hold();   rcvroff();   delay(20.0e-6);/* ensure that magnetization originates on 1H and not 13C */   if(dtt_flg[A] == 'y') {     obsoffset(tof_dtt);     obspower(tpwrs1);     shaped_pulse("H2Osinc",pwHs1,zero,10.0e-6,0.0);     obspower(tpwr);     obsoffset(tof);    }    decrgpulse(pwC,zero,0.0,0.0);    zgradpulse(gzlvl0,gt0);   delay(gstab);   rgpulse(pw,zero,0.0,0.0);                    /* 90 deg 1H pulse */   zgradpulse(gzlvl1,gt1);   delay(gstab);   delay(taua - gt1 -gstab);    simpulse(2.0*pw,2.0*pwC,zero,zero,0.0,0.0);   txphase(one);   delay(taua - gt1 - gstab);    	   zgradpulse(gzlvl1,gt1);   delay(gstab);   rgpulse(pw,one,0.0,0.0);   /* shaped_pulse */   obspower(tpwrs);   shaped_pulse("H2Osinc",pwHs,zero,2.0e-6,0.0);   obspower(tpwr);   /* shaped_pulse */   decoffset(dof);  /* jump 13C to 40 ppm */   zgradpulse(gzlvl2,gt2);   delay(gstab);   decrgpulse(pwC,t1,4.0e-6,0.0); decphase(zero); 
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:67,


示例9: 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(t3,2,4); tsadd(t11,2,4); }   if( ix == 1) d3_init = d3;   t2_counter = (int) ( (d3-d3_init)*sw2 + 0.5 );   if(t2_counter % 2) 	{ tsadd(t5,2,4); tsadd(t11,2,4); }/*   BEGIN PULSE SEQUENCE   */status(A); if (dm3[B]=='y') lk_sample();   	delay(d1); if (dm3[B]=='y') lk_hold();	rcvroff();	obspower(tpwr);	decpower(pwClvl); 	dec2power(pwNlvl);	decpwrf(rfC);	obsoffset(tof);        decoffset(dofa);        dec2offset(dof2);	txphase(t3);	delay(1.0e-5);	decrgpulse(pwC, zero, 0.0, 0.0);	   /*destroy C13 magnetization*/	zgradpulse(gzlvl1, 0.5e-3);	delay(grecov/2);	decrgpulse(pwC, one, 0.0, 0.0);	zgradpulse(0.7*gzlvl1, 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, t3, 0.0, 0.0);                    /* 1H pulse excitation */        decphase(zero);	delay(0.5*del + tau1 - 2.0*pwC);        decrgpulse(2.0*pwC, zero, 0.0, 0.0);        txphase(zero);	delay(tau1);	rgpulse(2.0*pw, zero, 0.0, 0.0);	zgradpulse(icosel1*gzlvl1, 0.1*gt1);        decphase(t5);	delay(0.5*del - 0.1*gt1);	simpulse(pw, pwC, zero, t5, 0.0, 0.0);	zgradpulse(gzlvl3, gt3);        decphase(zero);
开发者ID:timburrow,项目名称:ovj3,代码行数:67,


示例10: pulsesequence

void pulsesequence(){   char    c1d[MAXSTR];               /* option to record only 1D C13 spectrum */   int     ncyc;   double  tau1 = 0.002,         			          /*  t1 delay */           post_del = 0.0,           pwClvl = getval("pwClvl"), 	  /* coarse power for C13 pulse */           pwC = getval("pwC"),     	  /* C13 90 degree pulse length at pwClvl */	   compC = getval("compC"),	   compH = getval("compH"),	   mixpwr = getval("mixpwr"),	   jCH = getval("jCH"),	   gt0 = getval("gt0"),  		       	   gt1 = getval("gt1"),  		       	   gt2 = getval("gt2"),  		       	   gzlvl0 = getval("gzlvl0"),	   gzlvl1 = getval("gzlvl1"),	   gzlvl2 = getval("gzlvl2"),	   grec = getval("grec"),	   phase = getval("phase");           getstr("c1d",c1d);	              ncyc=1;           if(jCH > 0.0)             tau1 = 0.25/jCH;           dbl(ct, v1);                     /* v1 = 0 */           mod4(v1,oph);           hlv(ct,v2);           add(v2,v1,v2);           if (phase > 1.5)             incr(v1);                      /* hypercomplex phase increment */                      initval(2.0*(double)((int)(d2*getval("sw1")+0.5)%2),v10);            add(v1,v10,v1);           add(oph,v10,oph);           mod4(v1,v1);  mod4(v2,v2); mod4(oph,oph);            assign(zero,v3);           if(FIRST_FID) 	   {	     HHmix = pbox_mix("HHmix", "DIPSI2", mixpwr, pw*compH, tpwr);  	     if(c1d[A] == 'n')	     {	       opx("CHdec"); setwave("WURST2 30k/1.2m"); pbox_par("steps","600"); cpx(pwC*compC, pwClvl);	       CHdec = getDsh("CHdec");	     }	   }	   ncyc = (int) (at/HHmix.pw) + 1;	   post_del = ncyc*HHmix.pw - at;	                         /* BEGIN PULSE SEQUENCE */      status(A);	zgradpulse(gzlvl0, gt0);	rgpulse(pw, zero, 0.0, 0.0);  /* destroy H-1 magnetization*/	zgradpulse(gzlvl0, gt0);	delay(1.0e-4);	obspower(tpwr);	txphase(v1);        decphase(zero);        dec2phase(zero);        presat();	obspower(tpwr);        		delay(1.0e-5);      status(B);        if(c1d[A] == 'y')	{   	  rgpulse(pw,v1,0.0,0.0);                 /* 1H pulse excitation */          delay(d2);   	  rgpulse(pw,two,0.0,0.0);                 /* 1H pulse excitation */          assign(oph,v3);	}	else	{          decunblank(); pbox_decon(&CHdec);   	  rgpulse(pw,v1,0.0,0.0);                 /* 1H pulse excitation */   	  txphase(zero);   	          delay(d2);          pbox_decoff(); decblank();            decpower(pwClvl); decpwrf(4095.0);   	  	  delay(tau1 - POWER_DELAY);          simpulse(2.0*pw, 2.0*pwC, zero, zero, 0.0, 0.0);          txphase(one); decphase(one); dec2phase(one);	  delay(tau1);          simpulse(pw, pwC, one, one, 0.0, 0.0);          txphase(zero); decphase(zero); dec2phase(zero);	  delay(tau1);          simpulse(2.0*pw, 2.0*pwC, zero, zero, 0.0, 0.0);//.........这里部分代码省略.........
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:101,


示例11: pulsesequence

//.........这里部分代码省略.........      settable(t5, 4, recT); }    else    { assign(one,v7);       assign(three,v8);      settable(t1, 4, phi1);      settable(t2, 2, phi2);      settable(t3, 8, phi3);      settable(t4, 1, phi4);      settable(t5, 8, rec); }       if ( phase1 == 2 )                  /* Hypercomplex in t1 */      { if (TROSY[A] == 'y')                  { tsadd(t3, 2, 4); tsadd(t5, 2, 4); }                              else tsadd(t2, 1, 4); }                                       if(t1_counter %2)          /* calculate modification to phases based on */    { tsadd(t2,2,4); tsadd(t5,2,4); tsadd(t6,2,4); }   /* current t1 values */    if(wtg3919[0] != 'y')     { add(one,v7,v7); add(one,v8,v8); }                                    /* sequence starts!! */   status(A);          obspower(tpwr);     dec2power(pwNlvl);     decpower(pwClvl);     decpwrf(rfst);     if(Hdecflg[0] != 'n')     {       delay(5.0e-5);       rgpulse(pw,zero,rof1,0.0);                        rgpulse(pw,one,0.0,rof1);                        zgradpulse(1.5*gzlvl3, 0.5e-3);       delay(5.0e-4);       rgpulse(pw,zero,rof1,0.0);                        rgpulse(pw,one,0.0,rof1);                        zgradpulse(-gzlvl3, 0.5e-3);     }          delay(d1);     rcvroff();        status(B);     rgpulse(pw, zero, rof1, rof1);          zgradpulse(0.3*gzlvl3,gt3);     txphase(zero);     dec2phase(zero);     delay(tauxh-gt3);               /* delay=1/4J(XH)   */     sim3pulse(2*pw,0.0,2*pwN,t4,zero,zero,rof1,rof1);     zgradpulse(0.3*gzlvl3,gt3);     dec2phase(t2);     delay(tauxh-gt3 );               /* delay=1/4J(XH)   */       rgpulse(pw, t1, rof1, rof1);     zgradpulse(0.5*gsign*ihh*gzlvl3,gt3);     delay(200.0e-6);      decphase(zero);                 if (TROSY[A] == 'y')     { 
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:67,


示例12: pulsesequence

void pulsesequence() {   double gzlvl1 = getval("gzlvl1"),	 gt1 = getval("gt1"),          gzlvlE = getval("gzlvlE"),         gtE = getval("gtE"),         EDratio = getval("EDratio"),         gzlvl_max = getval("gzlvl_max"),         del = getval("del"),         dosyfrq=getval("sfrq"),         gstab = getval("gstab"),         gzlvlhs = getval("gzlvlhs"),         hsgt = getval("hsgt"),         gtau,tauc,gt4,gzlvl4,Ddelta,dosytimecubed;   char   convcomp[MAXSTR],sspul[MAXSTR],lkgate_flg[MAXSTR],satmode[MAXSTR],         alt_grd[MAXSTR],arraystring[MAXSTR];   int    iphase, icosel; //synchronize gradients to srate for probetype='nano'//   Preserve gradient "area"        gt1 = syncGradTime("gt1","gzlvl1",1.0);        gzlvl1 = syncGradLvl("gt1","gzlvl1",1.0);        gtE = syncGradTime("gtE","gzlvlE",1.0);        gzlvlE = syncGradLvl("gtE","gzlvlE",1.0);  getstr("sspul",sspul);   getstr("convcomp",convcomp);   getstr("satmode",satmode);  getstr("lkgate_flg",lkgate_flg);   getstr("alt_grd",alt_grd);  getstr("array",arraystring);  iphase = (int)(getval("phase")+0.5);   icosel = 1;   tau = 1/(2*(getval("jnxh")));   gtau =  2*gstab + GRADIENT_DELAY;   tauc = gtau+gtE-gstab;   if (strcmp(arraystring,"gzlvl1,phase")!=0)       fprintf(stdout,"Warning:  array should be 'gzlvl1,phase' for this experiment");Ddelta=gt1;             /* the diffusion-encoding pulse width is gt1 */ if (convcomp[0] == 'y') dosytimecubed=2.0*Ddelta*Ddelta*(del-2.0*(Ddelta/3.0));else dosytimecubed=2.0*Ddelta*Ddelta*(del-(Ddelta/3.0)); putCmd("makedosyparams(%e,%e)/n",dosytimecubed,dosyfrq); if (ni>1) putCmd("dosy3Dproc=/'y/'/n");else putCmd("dosy3Dproc=/'n/'");   if (tau < (gtE+gstab))   {     abort_message("0.5/jnxh must be greater than gtE+gstab");   }    if (tau < (1.0*(gt1+gstab)+del))   {     abort_message("0.5/jnxh must be greater than del+gt1+gstab");   }   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),v11);    add(v1,v11,v1);   add(v4,v11,v4);   add(oph,v11,oph);     mod2(ct,v10);        /* gradients change sign at odd transients */ status(A);      decpower(pwxlvl);      if (sspul[0] == 'y')      {          zgradpulse(gzlvlhs,hsgt);         rgpulse(pw,zero,rof1,rof1);         zgradpulse(gzlvlhs,hsgt);     }    if (lkgate_flg[0]=='y') lk_sample();  /* turn lock sampling on */ 	if (convcomp[0]=='y') 		gt4=gt1*2.0; 	else 		gt4=gt1; 	gzlvl4=sqrt(gzlvl_max*gzlvl_max-gzlvl1*gzlvl1);           if (satmode[0] == 'y')          {            if (d1 - satdly > 0) delay(d1 - satdly);            obspower(satpwr);            rgpulse(satdly,zero,rof1,rof1);            obspower(tpwr);          }         else         {  delay(d1); } if (getflag("wet")) wet4(zero,one);//.........这里部分代码省略.........
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:101,


示例13: pulsesequence

//.........这里部分代码省略.........	{ tau2 += ( 1.0 / (2.0*sw2) ); if(tau2 < 0.2e-6) tau2 = 0.0; }    tau2 = tau2/2.0;/* 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(t3,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);	rcvroff();	obspower(tpwr);	decpower(pwClvl); 	dec2power(pwNlvl);	decpwrf(rf0);	obsoffset(tof);	txphase(zero);   	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);   	rgpulse(pw,zero,0.0,0.0);                      /* 1H pulse excitation */   	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, one, 0.0, 0.0);    txphase(zero);        if (tpwrsf<4095.0) {obspower(tpwrs+6.0); obspwrf(tpwrsf);}     else obspower(tpwrs);    shaped_pulse("H2Osinc", pwHs, zero, 5.0e-4, 0.0);    obspower(tpwrd); obspwrf(4095.0);    zgradpulse(gzlvl3, gt3);    delay(2.0e-4);    dec2rgpulse(pwN, zero, 0.0, 0.0);    txphase(one);    delay(kappa - pwHd - 2.0e-6 - PRG_START_DELAY);
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:66,


示例14: pulsesequence

pulsesequence(){double	del      = getval("del"),        gstab    = getval("gstab"),	gt1      = getval("gt1"),	gzlvl1   = getval("gzlvl1"),        gt2      = getval("gt2"),        gzlvl2   = getval("gzlvl2"),        gt0      = getval("gt0"),        gzlvl0   = getval("gzlvl0"),        gths     = getval("gths"),        gzlvlhs  = getval("gzlvlhs"),        satpwr   = getval("satpwr"),        satdly   = getval("satdly"),        satfrq   = getval("satfrq"),        trim     = getval("trim"),        trimpwr  = getval("trimpwr"),        mix      = getval("mix"),        wrefpwr  = getval("wrefpwr"),        wrefpw   = getval("wrefpw"),        wrefpwrf = getval("wrefpwrf");char	delflag[MAXSTR],satmode[MAXSTR],dpfgse_flg[MAXSTR],sspul[MAXSTR],        trim_flg[MAXSTR],alt_grd[MAXSTR],wrefshape[MAXSTR];   getstr("delflag",delflag);   getstr("satmode",satmode);   getstr("dpfgse_flg",dpfgse_flg);   getstr("trim_flg", trim_flg);   getstr("alt_grd",alt_grd);   getstr("wrefshape", wrefshape);   getstr("sspul",sspul);   if (alt_grd[0] == 'y') mod2(ct,v6);               /* alternate gradient sign on every 2nd transient *//* SET PHASES */  sub(ct,ssctr,v12); /* Steady-state phase cycling */  settable(t1, 2, phi1); getelem(t1,v12,v1);  settable(t2, 8, phi2); getelem(t2,v12,v2);  settable(t3,16, phi3); getelem(t3,v12,v3);  settable(t4,64, phi4); getelem(t4,v12,v4);  settable(t5,64, rec);  getelem(t5,v12,oph);   /* equilibrium period */   status(A);      obspower(tpwr);      if (sspul[A] == 'y')      {       zgradpulse(gzlvl0,gt0);       rgpulse(pw,zero,rof1,rof1);       zgradpulse(gzlvl0,gt0);      }      if (satmode[0] == 'y')      {       if (d1 - satdly > 0) delay(d1 - satdly);       else delay(0.02);       obspower(satpwr);        if (satfrq != tof) obsoffset(satfrq);        rgpulse(satdly,zero,rof1,rof1);        if (satfrq != tof) obsoffset(tof);       obspower(tpwr);       delay(1.0e-5);      }      else delay(d1);   status(B);   /* first part of bppdel sequence */   if (delflag[0]=='y')   {  if (gt1>0 && gzlvl1>0)      {  rgpulse(pw, zero, rof1, 0.0);		/* first 90, zero */         ifzero(v6); zgradpulse(gzlvl1,gt1/2.0);             elsenz(v6); zgradpulse(-1.0*gzlvl1,gt1/2.0); endif(v6);   	 delay(gstab);	 rgpulse(pw*2.0, zero, rof1, 0.0);	/* first 180, zero */         ifzero(v6); zgradpulse(-1.0*gzlvl1,gt1/2.0);             elsenz(v6); zgradpulse(gzlvl1,gt1/2.0); endif(v6);   	 delay(gstab);   	 rgpulse(pw, v1, rof1, 0.0);		/* second 90, v1 */       if (satmode[1] == 'y')        {         obspower(satpwr);         rgpulse(del-4.0*pw-3.0*rof1-gt1-2.0*gstab,zero,rof1,rof1);         obspower(tpwr);        }       else   	{         delay(del-4.0*pw-3.0*rof1-gt1-2.0*gstab);/*diffusion delay */        }         rgpulse(pw, v2, rof1, 0.0);            /* third 90, v2 */         ifzero(v6); zgradpulse(gzlvl1,gt1/2.0);             elsenz(v6); zgradpulse(-1.0*gzlvl1,gt1/2.0); endif(v6);   	 delay(gstab);	 rgpulse(pw*2.0, zero, rof1, rof1);	/* second 180, zero */         ifzero(v6); zgradpulse(-1.0*gzlvl1,gt1/2.0);             elsenz(v6); zgradpulse(gzlvl1,gt1/2.0); endif(v6);   	 delay(gstab);         rgpulse(pw, v3, rof1, rof1);           /* mixing 90, v3 */         delay(0.7*mix);//.........这里部分代码省略.........
开发者ID:timburrow,项目名称:ovj3,代码行数:101,


示例15: pulsesequence

//.........这里部分代码省略.........   tau1 = 1.0 * t1_counter * cos_H / swTilt;   tau2 = 1.0 * t1_counter * cos_C / swTilt;   tau3 = 1.0 * t1_counter * cos_N / swTilt;   tau1 = tau1/2.0;  tau2 = tau2/2.0;  tau3 =tau3/2.0;   if (ix ==1 )   {      printf ("Current Spectral Width:/t/t%5.2f/n", swTilt);      printf ("Angle_H: %5.2f /n", angle_H);      printf ("Angle_C: %5.2f /n", angle_C);      printf ("Angle_N: %5.2f /n", angle_N);      printf ("/n/n/n/n/n");   }/* BEGIN ACTUAL PULSE SEQUENCE */status(A);      delay(d1);      rcvroff();      obsoffset(tofali);  obspower(tpwr);     obspwrf(4095.0);      decoffset(dof);     decpower(pwClvl);   decpwrf(rf0);      dec2offset(dof2);   dec2power(pwNlvl);  dec2pwrf(4095.0);      if (gt0 > 0.2e-6)      {         decrgpulse(pwC,zero,10.0e-6,0.0);         dec2rgpulse(pwN,zero,2.0e-6,2.0e-6);         zgradpulse(gzlvl0,gt0);          delay(gstab);      }      txphase(t1);   decphase(t2);   dec2phase(zero);status(B);   rgpulse(pw,t1,4.0e-6,2.0e-6);                           zgradpulse(gzlvl3,gt3);      delay(2.0*tauCH - gt3 - 2.0*GRADIENT_DELAY -4.0e-6);   decrgpulse(pwC,t2,2.0e-6,2.0e-6);	                              decphase(zero);      /*=======  Start of c13 evolution ==========*/      if ( ((tau2 -PRG_START_DELAY - POWER_DELAY -pwN - 2.0*pwC/PI -2.0e-6)> 0)            && ((tau2 -PRG_STOP_DELAY - POWER_DELAY - pwN - 2.0*pwC/PI -2.0e-6)>0)           && (codec[A] == 'y') )      {         decpower(copwr);  decpwrf(copwrf);         decprgon(codecseq,1/codmf,cores);         decon();         delay(tau2 -PRG_START_DELAY - POWER_DELAY -pwN - 2.0*pwC/PI -2.0e-6);   sim3pulse(2.0*pw, 0.0, 2.0*pwN, t1, zero, zero, 0.0, 0.0);         delay(tau2 -PRG_STOP_DELAY - POWER_DELAY - pwN - 2.0*pwC/PI -2.0e-6);         decoff();         decprgoff();      }
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:67,


示例16: pulsesequence

//.........这里部分代码省略.........   	obspower(tpwr);      /* Set transmitter power for hard 1H pulses */	delay(2.0e-5);	if(fscuba[0] == 'y')	{		delay(2.2e-2);		rgpulse(pw,zero,2.0e-6,0.0);		rgpulse(2*pw,one,2.0e-6,0.0);		rgpulse(pw,zero,2.0e-6,0.0);		delay(2.2e-2);	}   }   else   {    delay(d1);   }   obspower(tpwr);           /* Set transmitter power for hard 1H pulses */   obsoffset(tof);   decphase(zero);/* Begin Pulses */status(B);   rcvroff();   delay(10.0e-6);   rgpulse(pw,t6,4.0e-6,0.0);            /* 90 deg 1H pulse */   txphase(zero); decphase(zero);    delay(2.0e-6);   zgradpulse(gzlvl8,gt8);   delay(gstab);   delay(taua1 - gt8 - gstab -2.0e-6 - POWER_DELAY - 4.0e-6          - PRG_START_DELAY - d_me1);             /* 1st purge CHIRP inversion  on */   decpower(dchrp1);  /* Set power for 1st purge CHIRP inversion */   delay(4.0e-6);   decprgon(ch_shp1,1.0/dmfchp1,dres_chp);   decon();   delay(d_me1);      rgpulse(2*pw,zero,0.0,0.0);       /* 1H  inversion pulse */   delay(pwchirp1 - d_me1 - 2*pw);   decoff();   decprgoff();   /* chirp inversion  off */   delay(2.0e-6);   zgradpulse(gzlvl8,gt8);   delay(gstab);   delay(taua1 + 2*pw - (pwchirp1 - d_me1)           - PRG_STOP_DELAY  - gt8 - gstab -2.0e-6);     rgpulse(pw,zero,0.0,0.0);
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:67,


示例17: pulsesequence

//.........这里部分代码省略.........    if(tau1 < 0.2e-6) tau1 = 0.0;     if(tau2 < 0.2e-6) tau2 = 0.0;     if(t2b < 0.0) t2b = 0.0;    t2a = CTdelay - tau2 + t2b;    if(t2a < 0.2e-6)  t2a = 0.0;/* uncomment these lines to check t2a and t2b     printf("%d: t2a = %.12f", t2_counter,t2a);    printf(" ; t2b = %.12f/n", t2b);*//* BEGIN PULSE SEQUENCE */status(A);   	delay(d1);        if ( dm3[B] == 'y' )          { lk_hold(); lk_sampling_off();}  /*freezes z0 correction, stops lock pulsing*/ 	rcvroff();	obspower(tpwr);	decpower(pwClvl); 	dec2power(pwNlvl);	decpwrf(rf0);	obsoffset(tof);	decoffset(dofCO);	txphase(zero);   	delay(1.0e-5);       if (TROSY[A] == 'n')	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);       if (TROSY[A] == 'n')	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);  	rgpulse(pw, zero, 0.0, 0.0);                   /* 1H pulse excitation */   	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, one, 0.0, 0.0);    if (tpwrsf < 4095.0)      {obspwrf(tpwrsf);        obspower(tpwrs+6.0);}                 /* increases tpwrs by 6dB, now need */     else        obspower(tpwrs);                                          /* tpwrsf to be ~ 2048 for equivalence */if (TROSY[A]=='y')   {txphase(two);    shaped_pulse("H2Osinc", pwHs, two, 5.0e-4, 0.0);    obspower(tpwr); obspwrf(4095.0);    zgradpulse(gzlvl3, gt3);
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:67,


示例18: pulsesequence

//.........这里部分代码省略.........    tau1 = tau1/2.0;/* LOAD PHASE TABLES */      assign(one,v7);       assign(three,v8);      settable(t1, 4, phi1);      settable(t2, 2, phi2);      settable(t3, 8, phi3);      settable(t4, 16, phi4);      settable(t5, 8, rec);        if ( phase1 == 2 ) tsadd(t2, 1, 4);                                        if(t1_counter %2)          /* calculate modification to phases based on */    { tsadd(t2,2,4); tsadd(t5,2,4); }   /* current t1 values */    if(wtg3919[0] != 'y')     { add(one,v7,v7); add(one,v8,v8); }                                    /* sequence starts!! */   status(A);          obspower(tpwr);     dec2power(pwNlvl);     decpower(pwClvl); decpwrf(4095.0);     delay(d1);        status(B);     rgpulse(pw, zero, rof1, rof1);          zgradpulse(0.3*gzlvl3,gt3);     txphase(zero);     dec2phase(zero);     delay(tauxh-gt3);               /* delay=1/4J(XH)   */     sim3pulse(2*pw,0.0,2*pwN,t4,zero,zero,rof1,rof1);     zgradpulse(0.3*gzlvl3,gt3);     dec2phase(t2);     delay(tauxh-gt3 );               /* delay=1/4J(XH)   */       rgpulse(pw, t1, rof1, rof1);     decphase(zero);     txphase(t4);           zgradpulse(gzlvl3,gt3);     delay(gstab);        dec2rgpulse(pwN, t2, rof1, rof1);/* CT EVOLUTION BEGINS */       dec2phase(t3);       delay(timeCT -SAPS_DELAY -tau1);       if (CCLS[A]=='y')         {          sim3pulse(0.0, 2.0*pwC, 2.0*pwN, zero, zero, zero, 0.0, 0.0);           delay(timeCT -2.0*pw);           rgpulse(2.0*pw, t4, 0.0, 0.0);           }        else         {
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:67,


示例19: pulsesequence

//.........这里部分代码省略.........   sub(v3,one,v2);   add(v3,one,v4);   add(v3,two,v5);/* BEGIN THE ACTUAL PULSE SEQUENCE */status(A);   obspower(tpwr);   delay(5.0e-5);   if (getflag("sspul"))        steadystate();   if (satmode[0] == 'y')     {        if ((d1-satdly) > 0.02)                delay(d1-satdly);        else                delay(0.02);        satpulse(satdly,v6,rof1,rof1);     }   else        delay(d1);   if (getflag("wet"))     wet4(zero,one);   status(B);        rgpulse(pw, v14, rof1, rof1);      if (selfrq != tof)        obsoffset(selfrq);        zgradpulse(gzlvlA,gtA);        delay(gstab);        obspower(selpwrA);        shaped_pulse(selshapeA,selpwA,v1,rof1,rof1);        obspower(tpwr);        zgradpulse(gzlvlA,gtA);        delay(gstab);      if (selfrq != tof)        delay(2*OFFSET_DELAY);        zgradpulse(gzlvlB,gtB);        delay(gstab);        obspower(selpwrB);        shaped_pulse(selshapeB,selpwB,v11,rof1,rof1);        obspower(tpwr);        zgradpulse(gzlvlB,gtB);        delay(gstab);      if (selfrq != tof)        obsoffset(tof);        rgpulse(pw, v14, rof1, rof1);        if (getflag("Gzqfilt"))        {         obspower(zqfpwr1);         rgradient('z',gzlvlzq1);         delay(100.0e-6);         shaped_pulse(zqfpat1,zqfpw1,v14,rof1,rof1);         delay(100.0e-6);         rgradient('z',0.0);         delay(gstab);        }        obspower(slpwrT);        zgradpulse(gzlvl1,gt1);        delay(gstab);	if (mixT > 0.0)	{          if (dps_flag)          	rgpulse(mixT,v3,0.0,0.0);          else          	SpinLock(slpatT,mixT,slpwT,v2,v3,v4,v5, v9);        }        if (getflag("Gzqfilt"))        {         obspower(zqfpwr2);         rgradient('z',gzlvlzq2);         delay(100.0e-6);         shaped_pulse(zqfpat2,zqfpw2,v14,rof1,rof1);         delay(100.0e-6);         rgradient('z',0.0);         delay(gstab);        }        obspower(tpwr);        zgradpulse(gzlvl2,gt2);        delay(gstab);	rgpulse(pw,v14,rof1,rof2);   status(C);}
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:101,


示例20: pulsesequence

pulsesequence(){   double	   gtE = getval("gtE"),		   gzlvlE=getval("gzlvlE"),		   selpwrPS = getval("selpwrPS"),		   selpwPS = getval("selpwPS"),		   gzlvlPS = getval("gzlvlPS"),		   droppts=getval("droppts"),		   gstab = getval("gstab");   int 		   prgcycle=(int)(getval("prgcycle")+0.5);   char		   selshapePS[MAXSTR];//synchronize gradients to srate for probetype='nano'//   Preserve gradient "area"        gtE = syncGradTime("gtE","gzlvlE",1.0);        gzlvlE = syncGradLvl("gtE","gzlvlE",1.0);   getstr("selshapePS",selshapePS);  assign(ct,v17);  assign(zero,v18);  assign(zero,v19);  if (getflag("prgflg") && (satmode[0] == 'y') && (prgcycle > 1.5))    {        hlv(ct,v17);        mod2(ct,v18); dbl(v18,v18);        if (prgcycle > 2.5)           {                hlv(v17,v17);                hlv(ct,v19); mod2(v19,v19); dbl(v19,v19);           }     }   settable(t1,4,ph1);   settable(t2,32,ph2);   settable(t3,8,ph3);   settable(t4,16,ph4);   getelem(t1,v17,v1);   getelem(t2,v17,v2);   getelem(t3,v17,v3);   getelem(t4,v17,v4);   assign(v4,oph);   assign(v1,v6);   add(oph,v18,oph);   add(oph,v19,oph);/* BEGIN THE ACTUAL PULSE SEQUENCE */   status(A);      obspower(tpwr);   delay(5.0e-5);   if (getflag("sspul"))        steadystate();   if (satmode[0] == 'y')     {        if ((d1-satdly) > 0.02)                delay(d1-satdly);        else                delay(0.02);        if (getflag("slpsat"))           {                shaped_satpulse("relaxD",satdly,v6);                if (getflag("prgflg"))                   shaped_purge(v1,v6,v18,v19);           }        else           {                satpulse(satdly,v6,rof1,rof1);                if (getflag("prgflg"))                   purge(v1,v6,v18,v19);           }     }   else        delay(d1);   if (getflag("wet"))     wet4(zero,one);   status(B);      obspower(tpwr);      rgpulse(pw, v1, rof1, rof2);	delay(d2/2.0);	delay((0.25/sw1) - gtE - gstab - 2*pw/PI - rof2 - 2*GRADIENT_DELAY);	zgradpulse(gzlvlE,gtE);	delay(gstab);	rgpulse(2*pw,v2,rof1,rof1);	delay(0.25/sw1);	delay(gstab);	zgradpulse(-1.0*gzlvlE,gtE);	delay(gstab);	obspower(selpwrPS);//.........这里部分代码省略.........
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:101,


示例21: pulsesequence

//.........这里部分代码省略.........	add(v20,one,v21);   if (alt_grd[0] == 'y') mod2(ct,v8); /* alternate gradient sign on even scans *//* The following is for flipback pulse */   if (phincr1 < 0.0) phincr1=360+phincr1;   initval(phincr1,v5);/* BEGIN THE ACTUAL PULSE SEQUENCE */   status(A);   if (getflag("lkgate_flg"))  lk_sample(); /* turn lock sampling on */   obspower(tpwr);   delay(5.0e-5);   if (getflag("sspul"))        steadystate();   delay(d1);   if (getflag("lkgate_flg"))  lk_hold(); /* turn lock sampling off */   status(B);      if (getflag("cpmgflg"))      {        rgpulse(pw, v1, rof1, 0.0);        cpmg(v1, v15);      }      else        rgpulse(pw, v1, rof1, rof1);      if (selfrq != tof)	obsoffset(selfrq);        ifzero(v8); zgradpulse(gzlvlA,gtA);        elsenz(v8); zgradpulse(-gzlvlA,gtA); endif(v8);        delay(gstab);        obspower(selpwrA);        shaped_pulse(selshapeA,selpwA,v14,rof1,rof1);        obspower(tpwr);        ifzero(v8); zgradpulse(gzlvlA,gtA);        elsenz(v8); zgradpulse(-gzlvlA,gtA); endif(v8);        delay(gstab);      if (selfrq != tof)        delay(2*OFFSET_DELAY);        ifzero(v8); zgradpulse(gzlvlB,gtB);        elsenz(v8); zgradpulse(-gzlvlB,gtB); endif(v8);        delay(gstab);        obspower(selpwrB);        shaped_pulse(selshapeB,selpwB,v6,rof1,rof1);        obspower(slpwrR);        ifzero(v8); zgradpulse(gzlvlB,gtB);        elsenz(v8); zgradpulse(-gzlvlB,gtB); endif(v8);        delay(gstab);      if (selfrq != tof)        obsoffset(tof);     if (mixR > 0.0)      { 	  if (dps_flag)		rgpulse(mixR,v21,0.0,0.0);	  else		SpinLock(slpatR,mixR,slpwR,v21);      }
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:67,


示例22: pulsesequence

//.........这里部分代码省略.........   if (NH2only[A]=='y')       { tsadd(t3,2,4); }if ( ((imino[A]=='y') && (amino[A]=='y')) )   {        printf(" Choose  ONE  of  imino='y'  OR  amino='y' ");        psg_abort(1);   }   if ( ((imino[A]=='y') && (NH2only[A]=='y')) )   {        printf(" NH2only='y' only for amino='y'! ");        psg_abort(1);   }/* BEGIN PULSE SEQUENCE */status(A);	obspower(tpwr);	decpower(pwClvl); 	dec2power(pwNlvl);        if (imino[A] == 'y')	  dec2offset(dof2 - 45*dfrq2);        if (amino[A] == 'y')	  dec2offset(dof2 - 115*dfrq2);	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 (C13refoc[A]=='y')         {decpower(pwClvl-3.0); dec2power(pwNlvl-3.0);}  if (tau1 > (2.0*GRADIENT_DELAY + pwN*1.4 + 0.64*pw + 5.0*SAPS_DELAY))     {    if (C13refoc[A]=='y')    {     zgradpulse(gzlvl6, 0.8*(tau1 - 2.0*GRADIENT_DELAY - 1.4*pwN - 0.64*pw));     delay(0.2*(tau1 - 2.0*GRADIENT_DELAY - 1.4*pwN - 0.64*pw) - SAPS_DELAY);     sim3pulse(0.0, 2.0*pwC*1.4, 2.0*pwN*1.4, zero, zero, zero, 0.0, 0.0);     zgradpulse(-1.0*gzlvl6, 0.8*(tau1 - 2.0*GRADIENT_DELAY - 1.4*pwN - 0.64*pw));     delay(0.2*(tau1 - 2.0*GRADIENT_DELAY - 1.4*pwN - 0.64*pw));    }
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:67,


示例23: pulsesequence

pulsesequence(){   double   pwx2lvl,            pwx2,                hsglvl,                hsgt,                satfrq,                satdly,                satpwr,                   slpw,                   slpwr,                   trim,                   mix,                   mult,                   cycles,            tau,            j1xh,	    null,            phase;   int      iphase;   char     sspul[MAXSTR],                nullflg[MAXSTR],                PFGflg[MAXSTR],            satmode[MAXSTR];   mix = getval("mix");   slpwr = getval("slpwr");   slpw = getval("slpw");   trim = getval("trim");   mult = getval("mult");   pwx2lvl = getval("pwx2lvl");   pwx2    = getval("pwx2");   hsglvl = getval("hsglvl");   hsgt = getval("hsgt");   getstr("PFGflg",PFGflg);   getstr("nullflg",nullflg);        satfrq = getval("satfrq");        satdly = getval("satdly");        satpwr = getval("satpwr");   null = getval("null");   j1xh    = getval("j1xh");   tau  = 1/(4*j1xh);   phase  = getval("phase");   getstr("satmode",satmode);   getstr("sspul",sspul);      iphase = (int) (phase + 0.5);      cycles = (mix - trim ) / (96.66*slpw);      cycles = 2.0*(double) (int) (cycles/2.0);      initval(cycles, v9);      settable(t1,4,ph1);   settable(t2,2,ph2);   settable(t3,8,ph3);   settable(t4,16,ph4);   settable(t5,16,ph5);   getelem(t2,ct,v2);   getelem(t5,ct,oph);   initval(2.0*(double)(((int)(d2*getval("sw1")+0.5)%2)),v14);   if (iphase == 2)     incr(v2);   add(v2,v14,v2);   add(oph,v14,oph);   status(A);     dec2power(pwx2lvl);     obspower(tpwr);     if (sspul[0] == 'y')   {        if (PFGflg[0] == 'y')        {         zgradpulse(hsglvl,hsgt);         rgpulse(pw,zero,rof1,rof1);         zgradpulse(hsglvl,hsgt);        }        else        {        obspower(tpwr-12);        rgpulse(500*pw,zero,rof1,rof1);        rgpulse(500*pw,one,rof1,rof1);        obspower(tpwr);        }   }      delay(d1);     if (satmode[0] == 'y')      {       obspower(satpwr);        if (satfrq != tof)         obsoffset(satfrq);        rgpulse(satdly,zero,rof1,rof1);        if (satfrq != tof)         obsoffset(tof);//.........这里部分代码省略.........
开发者ID:timburrow,项目名称:ovj3,代码行数:101,


示例24: pulsesequence

//.........这里部分代码省略.........           {                shaped_satpulse("relaxD",satdly,zero);                if (getflag("prgflg"))                   shaped_purge(v6,zero,v18,v19);           }        else           {                satpulse(satdly,zero,rof1,rof1);                if (getflag("prgflg"))                   purge(v6,zero,v18,v19);           }     }   else        delay(d1);   if (getflag("wet"))     wet4(zero,one);   obspower(tpwr);   decpower(pwxlvl180);  status(B);    if (getflag("nullflg"))    {      rgpulse(0.5 * pw, zero, rof1, rof1);      obspower(tpwr180);      delay(tau);      simshaped_pulse(pw180ad,pwx180ad,pw180,pwx180,zero,zero,rof1,rof1);      delay(tau+POWER_DELAY+rof1);      delay(tau+POWER_DELAY+rof1);      simshaped_pulse(pw180ad,pwx180ad,pw180,pwx180,zero,zero,rof1,rof1);      obspower(tpwr);      delay(tau);      rgpulse(0.5 * pw, zero, rof1, rof1);      zgradpulse(hsglvl, hsgt);      delay(1e-3);    }    rgpulse(pw, v6, rof1, rof1);    obspower(tpwr180);    shaped_pulse(pw180ad,pw180,zero,rof1,rof1);    delay(tau+2.0*POWER_DELAY+2.0*rof1);    simshaped_pulse(pw180ad,pwx180ad,pw180,pwx180,zero,zero,rof1,rof1);    delay(tau);    obspower(tpwr);    rgpulse(pw, v1, rof1, rof1);    zgradpulse(hsglvl, 2 * hsgt);    decpower(pwxlvl);    obspower(tpwr180);    delay(1e-3);    decrgpulse(pwx, v2, rof1, 2.0e-6);    delay(d2 / 2);    shaped_pulse(pw180ad,pw180,zero,rof1,rof1);    delay(d2 / 2);    delay(taug - POWER_DELAY);    decpower(pwxlvl180r);    decshaped_pulse(pwx180ref, pwx180r, zero, rof1, rof1);    if(mult < 1.5)      {       obspower(tpwr);       if (mult <0.5)         delay(2*rof1);       else         rgpulse(mult*pw,zero,rof1,rof1);      }    else      shaped_pulse(pw180ad,pw180,zero,rof1,rof1);    if(mult < 1.5)      delay(4*pwx/PI + 4.0e-6 + taug - gtE - gstab - 2 * GRADIENT_DELAY + WFG_START_DELAY + pw180 + WFG_STOP_DELAY - mult*pw);    else      delay(4*pwx/PI + 4.0e-6 + POWER_DELAY + taug  - gtE - gstab - 2 * GRADIENT_DELAY);    zgradpulse(gzlvlE, gtE);    delay(gstab);    decshaped_pulse(pwx180ref, pwx180r, zero, rof1, rof1);    decpower(pwxlvl);    decrgpulse(pwx, v4, 2.0e-6, rof1);    obspower(tpwr);    decpower(pwxlvl180);    zgradpulse(ZZgsign*0.6 * hsglvl, 1.2 * hsgt);    delay(1e-3);    rgpulse(pw, v3, rof1, rof1);    obspower(tpwr180);    shaped_pulse(pw180ad,pw180,zero,rof1,rof1);    zgradpulse(gzlvl5,gtE/2.0);    delay(tau-gtE/2.0+2.0*POWER_DELAY);    simshaped_pulse(pw180ad,pwx180ad,pw180,pwx180,zero,zero,rof1,rof2);    zgradpulse(gzlvl5+icosel * 2.0*gzlvlE/EDratio, gtE/2.0);    delay(tau-gtE/2.0);    decpower(dpwr);  status(C);}
开发者ID:timburrow,项目名称:OpenVnmrJ,代码行数:101,


示例25: pulsesequence

pulsesequence(){   double	   slpwrT = getval("slpwrT"),		   slpwT = getval("slpwT"),		   mixT = getval("mixT"),		   trim = getval("trim"),		   tauz1 = getval("tauz1"), 		   tauz2 = getval("tauz2"), 		   tauz3 = getval("tauz3"), 		   tauz4 = getval("tauz4"),                   selpwrA = getval("selpwrA"),                   selpwA = getval("selpwA"),                   gzlvlA = getval("gzlvlA"),                   gtA = getval("gtA"),                   selpwrB = getval("selpwrB"),                   selpwB = getval("selpwB"),                   gzlvlB = getval("gzlvlB"),                   gtB = getval("gtB"),                   gstab = getval("gstab"),		   selfrq = getval("selfrq");   char            selshapeA[MAXSTR],                   selshapeB[MAXSTR],   		   slpatT[MAXSTR];//synchronize gradients to srate for probetype='nano'//   Preserve gradient "area"        gtA = syncGradTime("gtA","gzlvlA",1.0);        gzlvlA = syncGradLvl("gtA","gzlvlA",1.0);        gtB = syncGradTime("gtB","gzlvlB",1.0);        gzlvlB = syncGradLvl("gtB","gzlvlB",1.0);   getstr("slpatT",slpatT);   getstr("selshapeA",selshapeA);   getstr("selshapeB",selshapeB);   if (strcmp(slpatT,"mlev17c") &&        strcmp(slpatT,"dipsi2") &&        strcmp(slpatT,"dipsi3") &&        strcmp(slpatT,"mlev17") &&        strcmp(slpatT,"mlev16"))        abort_message("SpinLock pattern %s not supported!./n", slpatT);   assign(ct,v6);   if (getflag("zqfilt"))      {  hlv(v6,v6); hlv(v6,v6); }   settable(t1,4,ph1);   getelem(t1,v6,v1);   settable(t3,8,ph3);   getelem(t3,v6,v11);   settable(t4,8,ph4);      settable(t2,4,ph2);   getelem(t2,v6,v2);   settable(t7,8,ph7);   getelem(t7,v6,v7);   settable(t8,4,ph8);   getelem(t8,v6,v8);      if (getflag("zqfilt"))     getelem(t4,v6,oph);   else     assign(v1,oph);   sub(v2,one,v3);   add(v2,two,v4);   add(v3,two,v5);   mod4(ct,v10);/* BEGIN THE ACTUAL PULSE SEQUENCE */   status(A);      obspower(tpwr);   delay(5.0e-5);   if (getflag("sspul"))        steadystate();   if (satmode[0] == 'y')     {        if ((d1-satdly) > 0.02)                delay(d1-satdly);        else                delay(0.02);        satpulse(satdly,v6,rof1,rof1);     }   else        delay(d1);   if (getflag("wet"))     wet4(zero,one);   status(B);      rgpulse(pw, v1, rof1, rof1);      if (selfrq != tof)	obsoffset(selfrq);        zgradpulse(gzlvlA,gtA);        delay(gstab);        obspower(selpwrA);        shaped_pulse(selshapeA,selpwA,v1,rof1,rof1);        obspower(tpwr);        zgradpulse(gzlvlA,gtA);        delay(gstab);//.........这里部分代码省略.........
开发者ID:timburrow,项目名称:ovj3,代码行数:101,


示例26: pulsesequence

pulsesequence(){   double 	d3 = getval("d3"),                vtcomplvl = getval("vtcomplvl"),		gzlvl = getval("gzlvl"),		shapedpw90 = getvalnwarn("shapedpw90"),		shapedpw180 = getvalnwarn("shapedpw180"),		shapedpwr90 = getvalnwarn("shapedpwr90"),		shapedpwr180 = getvalnwarn("shapedpwr180"),		gt,gts,lvlf;   int		hs_gradtype;   char		shaped[MAXSTR], shapename90[MAXSTR], shapename180[MAXSTR];   getstrnwarn("shaped", shaped);   getstrnwarn("shapename90", shapename90);   getstrnwarn("shapename180", shapename180);   settmpgradtype("tmpgradtype");   hs_gradtype = ((specialGradtype == 'h') || (specialGradtype == 'a'));   if ((p1==0.0) && ((vtcomplvl>0.5) || (hs_gradtype)))   {      p1 = 2.0*pw;   }   if ((vtcomplvl==2) && ((hs_gradtype) || (spin>0)))   {      vtcomplvl = 1;      if (ix==1)      {         text_message("gmapz: vtcomplvl set to 1/n");         putCmd("setvalue('vtcomplvl',%.0f)/n",vtcomplvl);         putCmd("setvalue('vtcomplvl',%.0f,'processed')/n",vtcomplvl);      }   }/* lvlf, gt, gts only used for convection compensation */   if (gradtype[2]=='l')      lvlf=2.5;   else     lvlf=3.0;   if ((hs_gradtype) || (spin>0))     lvlf=1.0;   gt = (0.5*at + d2)/lvlf;   gts=0.18*at/lvlf;   gts = 0.2*at/lvlf;   if (vtcomplvl==2)      gt += gts;   gt *= 2.0;   settable(t1,16,ph1);   settable(t2,2,ph2);   settable(t3,8,ph3);   settable(t4,16,ph4);   sub(ct,ssctr,v12);   getelem(t1,v12,v1);   getelem(t2,v12,v2);   getelem(t3,v12,v3);   getelem(t4,v12,oph);    if (vtcomplvl < 0.5)   {      getelem(t4,v12,v1);       getelem(t1,v12,v2);   }/* --- equilibration period --- */   status(A);      delay(d1);/* --- initial pulse --- */   status(B);      if (shaped[A] == 'y') {	obspower(shapedpwr90);	shaped_pulse(shapename90,shapedpw90,v1,rof1,rof2);	obspower(tpwr);	}      else        pulse(pw,v1);/*    instead of hard pulse, could use shapedpulse("gauss",pw,oph,rof1,rof2);        or "bir4_90_512" or other shape for selective excitation.        selective inversion pulses may or may not work as well. *//* --- shim phase encode, not during PFG recovery --- */      delay(2e-5+d3);/* First case: No convection compensation, traditional sequence */   if (vtcomplvl < 0.5)   {      if (p1 > 0)       {         zgradpulse(gzlvl,at/2+d2);         delay(d2);         if (shaped[A] == 'y') {	   obspower(shapedpwr180);	   shaped_pulse(shapename180,shapedpw180,v2,rof1,rof2);	   obspower(tpwr);	   }         else           pulse(p1,v2);//.........这里部分代码省略.........
开发者ID:timburrow,项目名称:ovj3,代码行数:101,


示例27: pulsesequence

//.........这里部分代码省略.........   if(t1_counter % 2) 	{ tsadd(t3,2,4); tsadd(t11,2,4); }   if( ix == 1) d3_init = d3;   t2_counter = (int) ( (d3-d3_init)*sw2 + 0.5 );   if(t2_counter % 2) 	{ tsadd(t5,2,4); tsadd(t11,2,4); }/*   BEGIN PULSE SEQUENCE   */status(A);        if ( dm3[B] == 'y' )          lk_sample();          if ((ni/sw1-d2)>0)          delay(ni/sw1-d2);       /*decreases as t1 increases for const.heating*/        if ((ni2/sw2-d3)>0)          delay(ni2/sw2-d3);      /*decreases as t2 increases for const.heating*/   	delay(d1);        if ( dm3[B] == 'y' )          { lk_hold(); lk_sampling_off();}  /*freezes z0 correction, stops lock pulsing*/	rcvroff();	obspower(tpwr);	decpower(pwClvl); 	dec2power(pwNlvl);	decpwrf(rf0);	obsoffset(tof);	txphase(t3);	delay(1.0e-5);	decrgpulse(pwC, zero, 0.0, 0.0);	   /*destroy C13 magnetization*/	zgradpulse(gzlvl1, 0.5e-3);	delay(1.0e-4);	decrgpulse(pwC, one, 0.0, 0.0);	zgradpulse(0.7*gzlvl1, 0.5e-3);	delay(5.0e-4);      if ( dm3[B] == 'y' )     /* begins optional 2H decoupling */        {          dec3rgpulse(1/dmf3,one,10.0e-6,2.0e-6);          dec3unblank();          dec3phase(zero);          delay(2.0e-6);          setstatus(DEC3ch, TRUE, 'w', FALSE, dmf3);        }	rgpulse(pw, t3, 0.0, 0.0);                    /* 1H pulse excitation */        decphase(zero);	delay(0.5*del + tau1 - 2.0*pwC);        decrgpulse(2.0*pwC, zero, 0.0, 0.0);        txphase(zero);	delay(tau1);	rgpulse(2.0*pw, zero, 0.0, 0.0);                if (mag_flg[A] == 'y')                {                   magradpulse(icosel1*gzcal*gzlvl1,0.1*gt1);                }                else                {                   zgradpulse(icosel1*gzlvl1, 0.1*gt1);
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:67,


示例28: pulsesequence

//.........这里部分代码省略.........   ctdelay = timeTN1-gt1-1.0e-4;   // ctdelay = timeTN1-gt1-1.0e-4-2.0*GRADIENT_DELAY-4*POWER_DELAY-4*PWRF_DELAY-(4/PI)*pwN;   if (ni2 > 1)   {   halfT2 = 0.5*(ni2-1)/sw2;   t2b = (double) t2_counter*((halfT2 - ctdelay)/((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 = ctdelay - tau2*0.5 + t2b;    if(t2a < 0.2e-6)  t2a = 0.0;    }    else    {    t2b = 0.0;    t2a = ctdelay - 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(gzlvl4, gt4);       delay(1.0e-4);       delay(d1-gt4);lk_hold();        h_shapedpulse("pc9f",shbw,shofs,zero, 2.0e-6, 0.0);  	delay(lambda-pwS5*0.5-pwS6*0.4);    	h_sim3shapedpulse("reburp",shbw,shofs,0.0,2.0*pwN, one, zero, zero, 0.0, 0.0);	delay(lambda-pwS5*0.5-pwS6*0.4);     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);           zgradpulse(gzlvl4, gt4*4.0);           delay(1.0e-4);   obspower(shlvl1);/**************************************************************************//*   xxxxxxxxxxxxxxxxxxxxxx   N-> CA transfer           xxxxxxxxxxxxxxxxxx    *//**************************************************************************/      dec2rgpulse(pwN,zero,0.0,0.0);           delay(timeTN1);      sim3_c13pulse("", "ca", "co", "square", "", 0.0, 180.0, 2.0*pwN,                                             zero, zero, zero, 2.0e-6, 2.0e-6);           delay(Delta);	c13pulse("co", "ca", "sinc", 180.0, zero, 0.0, 0.0);      
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:67,


示例29: pulsesequence

//.........这里部分代码省略.........    if (tpwrsf_d<4095.0) tpwrs=tpwrs+6;   /* nominal tpwrsf_d ~ 2048 */         /* tpwrsf_d,tpwrsf_u can be used to correct for radiation damping  *//* BEGIN ACTUAL PULSE SEQUENCE */status(A);   obspower(satpwr);            /* Set power for presaturation    */   decpower(pwClvl);             /* Set decoupler1 power to pwClvl  */   decpwrf(rf90onco);   dec2power(pwNlvl);            /* Set decoupler2 power to pwNlvl *//* Presaturation Period */  if (satmode[0] == 'y')    {      rgpulse(d1,zero,rof1,0.0);      obspower(tpwr);                   /* Set power for hard pulses  */    }  else      {      obspower(tpwr);                   /* Set power for hard pulses  */      delay(d1);    }status(B);   rcvroff();   decpwrf(rf90onco);   /* Set decoupler1 power to rf90onco */   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 */
开发者ID:DanIverson,项目名称:OpenVnmrJ,代码行数:66,


示例30: pulsesequence

//.........这里部分代码省略.........  {    tsadd(t5, 2, 4);    tsadd(t11, 2, 4);  }  /*   BEGIN PULSE SEQUENCE   */  status(A);  if (dm3[B] == 'y')    lk_sample();  if ((ni / sw1 - d2) > 0)    delay(ni / sw1 - d2);	/*decreases as t1 increases for const.heating */  if ((ni2 / sw2 - d3) > 0)    delay(ni2 / sw2 - d3);	/*decreases as t2 increases for const.heating */  delay(d1);  if (dm3[B] == 'y')  {    lk_hold();    lk_sampling_off();  }				/*freezes z0 correction, stops lock pulsing */  rcvroff();  obspower(tpwr);  decpower(pwClvl);  dec2power(pwNlvl);  decpwrf(rf0);  obsoffset(tof);  txphase(t3);  delay(1.0e-5);  decrgpulse(pwC, zero, 0.0, 0.0);	/*destroy C13 magnetization */  zgradpulse(gzlvl0, 0.5e-3);  delay(1.0e-4);  decrgpulse(pwC, one, 0.0, 0.0);  zgradpulse(0.7 * gzlvl0, 0.5e-3);  delay(5.0e-4);  if (dm3[B] == 'y')		/* begins optional 2H decoupling */  {    dec3rgpulse(1 / dmf3, one, 10.0e-6, 2.0e-6);    dec3unblank();    dec3phase(zero);    delay(2.0e-6);    setstatus(DEC3ch, TRUE, 'w', FALSE, dmf3);  }  rgpulse(pw, t3, 0.0, 0.0);	/* 1H pulse excitation */  zgradpulse(gzlvl0, gt0);	/* 2.0*GRADIENT_DELAY */  decphase(zero);  delay(taua + tau1 - gt0 - 2.0 * GRADIENT_DELAY - 2.0 * pwC);  decrgpulse(2.0 * pwC, zero, 0.0, 0.0);  txphase(zero);  delay(tau1);  rgpulse(2.0 * pw, zero, 0.0, 0.0);  zgradpulse(gzlvl0, gt0);  txphase(one);  decphase(t5);  delay(taua - gt0);  rgpulse(pw, one, 0.0, 0.0);  zgradpulse(gzlvl3, gt3);  delay(2.0e-4);  decrgpulse(pwC, t5, 0.0, 0.0);  delay(tau2);  dec2rgpulse(2.0 * pwN, zero, 0.0, 0.0);
开发者ID:timburrow,项目名称:ovj3,代码行数:67,



注:本文中的zgradpulse函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ zhash_insert函数代码示例
C++ zgemv_函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。