# 1 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
;hncaTRv5.jlb
;updated 23-Jun-2011
;15N evolution automatically extended past CT period if l3 > d0/in0
;Ca Constant Time option selectable - for perdeuterated samples
;see footer for NOTES

;prosol relations=<triple.jlb>

;#include "/opt/topspin3.0/exp/stan/nmr/lists/pp/user/bits.jlb"
# 1 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv" 1
;bits.jlb for datav500 console  (an AVIII console)


# 10 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
define pulse PG1
define pulse PG2
define pulse PG3
define pulse PG4
define pulse PG5
define pulse PG6
define pulse PG7
define pulse PG8
define pulse PG9
define pulse PG10
define pulse PG11
define pulse PG12
define pulse PG13
define pulse PG14
define pulse PG15
define pulse PG16
define pulse PG17
define pulse PG18
define pulse PG20
define pulse PG21
define pulse PG22
define pulse PG23
define pulse PG24
define pulse PG25
define pulse PG26
define pulse PG27
define pulse PG28
define pulse PG29
define pulse PG30
define pulse PG31


;Avance3.incl
;   for AV III
;
;avance-version (07/12/14)
;
;$CLASS=HighRes Incl
;$COMMENT=
# 206 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;$Id: Avance3.incl,v 1.6.2.2 2007/12/14 16:06:46 ber Exp $
;Delay.incl  -  include file for commonly used delays
;
;version 00/02/07
;
;$CLASS=HighRes Incl
;$COMMENT=


;general delays
# 217 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
define delay DELTA
define delay DELTA1
define delay DELTA2
define delay DELTA3
define delay DELTA4
define delay DELTA5
define delay DELTA6
define delay DELTA7
define delay DELTA8
define delay DELTA9
define delay DELTA10
define delay DELTA11
define delay DELTA12


define delay TAU
define delay TAU1
define delay TAU2
define delay TAU3
define delay TAU4
define delay TAU5
# 240 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;delays for centering pulses

define delay CEN_HN1
define delay CEN_HN2
define delay CEN_HN3
define delay CEN_HC1
define delay CEN_HC2
define delay CEN_HC3
define delay CEN_HC4
define delay CEN_HP1
define delay CEN_HP2
define delay CEN_CN1
define delay CEN_CN2
define delay CEN_CN3
define delay CEN_CN4
define delay CEN_CP1
define delay CEN_CP2

# 259 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;loop counters

define loopcounter COUNTER
define loopcounter SCALEF
define loopcounter FACTOR1
define loopcounter FACTOR2
define loopcounter FACTOR3

# 269 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;$Id: Delay.incl,v 1.12 2005/11/10 12:16:58 ber Exp $
;Grad2.incl  -  include file for Gradient Spectroscopy
;   for TCU3
;
;avance-version (07/01/17)
;
;$CLASS=HighRes Incl
;$COMMENT=


# 296 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
define list<gradient> EA=<EA>


# 300 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;$Id: Grad2.incl,v 1.12 2007/01/22 14:22:35 ber Exp $
;De2.incl
;   for AVi
;
;avance-version (08/02/15)
;
;$CLASS=HighRes Incl
;$COMMENT=


define delay rde1
# 313 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
"rde1=de-de1"


# 324 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;for multi receive


# 333 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;$Id: De2.incl,v 1.3.6.3 2008/02/15 15:18:53 ber Exp $
;Daz.incl
;
;Dante-Z
;version  00/02/07
;
;$CLASS=HighRes Incl
;$COMMENT=


define delay DZ_TAU
define delay DZ_TAU2
define delay DZ_TAU3
define delay DZ_DELT			; 1/Bandwidth (cnst8)
# 348 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
define pulse DZ_THET
define pulse DZ_THE2
define pulse DZ_THE3
define pulse DZ_180
define pulse DZ_180a
define pulse DZ_180b
define pulse DZ_180c

define loopcounter DZ_LC1
define loopcounter DZ_LC2
define loopcounter DZ_LC3
define loopcounter DZ_LC4
define loopcounter DZ_LC5

define pulse P_TOTAL
# 365 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
"DZ_THET=10u"
"DZ_THE2=10u*0.5"
"DZ_THE3=10u*0.25"

"DZ_DELT=1s/cnst8"

"DZ_LC1=DZ_DELT/(dw)"
"DZ_LC2=(DZ_DELT/(dw))/3"
"DZ_LC3=(DZ_DELT/(dw))*2/3"
"DZ_LC4=(DZ_DELT/(dw))*2/9"
"DZ_LC5=(DZ_DELT/(dw))*6/9"
# 377 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
"DZ_TAU=dw*0.5"
"DZ_TAU2=dw*0.5*(DZ_LC1/(DZ_LC2*2+DZ_LC3))"
"DZ_TAU3=dw*0.5*(DZ_LC1/(DZ_LC4*4+DZ_LC5))"

"DZ_180=DZ_THET*DZ_LC1*2"
"DZ_180a=DZ_THET*DZ_LC1*2"
"DZ_180b=DZ_THET*DZ_LC2*2+DZ_THET*DZ_LC3*2" 	
				;=DZ_THE2*DZ_LC2*4+DZ_THET*DZ_LC3*2
"DZ_180c=DZ_THET*DZ_LC4+DZ_THET*DZ_LC4*2+DZ_THET*DZ_LC5*2"
				;=DZ_THE3*DZ_LC4*4+DZ_THE2*DZ_LC4*4+DZ_THET*DZ_LC5*2

# 391 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;next four lines commented out by BF 10/07/19
;#define DAZ11(phase1,phase2)                    \n\
;        1001 (DZ_TAU) (DZ_THET phase1):f1     \n\
;             (DZ_TAU) (DZ_THET phase2):f1     \n\
;             lo to 1001 times DZ_LC1            


;#define DAZ363(phase1,phase2)                  \n\
;        1011 (DZ_TAU2) (DZ_THE2 phase1):f1     \n\
;             (DZ_TAU2) (DZ_THE2 phase2):f1     \n\
;             lo to 1011 times DZ_LC2           \n\ 
;        1012 (DZ_TAU2) (DZ_THET phase1):f1     \n\
;             (DZ_TAU2) (DZ_THET phase2):f1     \n\
;             lo to 1012 times DZ_LC3           \n\ 
;        1013 (DZ_TAU2) (DZ_THE2 phase1):f1     \n\
;             (DZ_TAU2) (DZ_THE2 phase2):f1     \n\
;             lo to 1013 times DZ_LC2            
# 410 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;#define DAZ22622(phase1,phase2)                \n\
;        1021 (DZ_TAU3) (DZ_THE3 phase1):f1     \n\
;             (DZ_TAU3) (DZ_THE3 phase2):f1     \n\
;             lo to 1021 times DZ_LC4           \n\ 
;        1022 (DZ_TAU3) (DZ_THE2 phase1):f1     \n\
;             (DZ_TAU3) (DZ_THE2 phase2):f1     \n\
;             lo to 1022 times DZ_LC4           \n\ 
;        1023 (DZ_TAU3) (DZ_THET phase1):f1     \n\
;             (DZ_TAU3) (DZ_THET phase2):f1     \n\
;             lo to 1023 times DZ_LC5           \n\ 
;        1024 (DZ_TAU3) (DZ_THE2 phase1):f1     \n\
;             (DZ_TAU3) (DZ_THE2 phase2):f1     \n\
;             lo to 1024 times DZ_LC4           \n\ 
;        1025 (DZ_TAU3) (DZ_THE3 phase1):f1     \n\
;             (DZ_TAU3) (DZ_THE3 phase2):f1     \n\
;             lo to 1025 times DZ_LC4            
;


# 430 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/bits.vv"
;$Id: Daz.incl,v 1.12 2005/11/10 12:16:58 ber Exp $
# 11 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr" 2


# 14 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
;--- SWITCHES ------------


;#define DEUT_DEC
# 19 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
;#define CA_CT

;Gradient Pulses
"PG1=1.8m"
"PG2=240u"
"PG3=500u"
"PG4=101u"   ;decoding
"PG5=500u"   ;half-encoding
"PG20=500u"
"PG22=500u"
"PG23=500u"

"l5=1"
# 33 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
"p2=p1*2"
"p22=p21*2"

"in10=in0"
"in9=in0"

"in19=in20"
"in21=in20"
# 42 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
"d11=30m"
"d12=200u"
"d16=190u"  ;Grad Rec.
"d26=2.7m"
"d6=2.35m"
"d27=12m"
"d5=13.0m"  ;CT period for CA_CT
"d28=p27+5u+p1-p21"

"d0=12.5m-PG5-200u-larger(p24,p22)*0.5"
"d9=3u"
"d10=10u"
"d20=5u"
"d19=(d5-p14-4u)*0.5"
"d8=p24*0.5-p21-d9"
"d7=p24*0.5+d9-p21"

# 60 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
"DELTA=d6-PG1-3u-d16"
"DELTA2=2.35m-PG2-p29-d16"  ;adjust 2.35m to minimize anti-tr for n15, limited by pw
"DELTA3=d26-PG3-p27-205u"
"DELTA4=d0-p14-d10+d9"
"DELTA7=d5-larger(p14,p22)-d20*2"


"DELTA5=d20*4+p2*2+larger(p22,p14)-p14-4u"
# 72 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
"DELTA6=p21*1.274-p1"
"DELTA8=300u-PG4-25u-de+p1*0.637"  ;if PG4 is increased, make sure this Grad. Rec. is adequate.

; --- set C13 frequencies, set o2p=56ppm from command line -----
"cnst21=173.4"  ; 176 - 2.6
"cnst22=53.4"   ; 56 - 2.6 

"spoff2=0"
"spoff5=bf2*((cnst21-cnst22)/1000000)"
"spoff8=0"
"spoff9=0"
# 1 "mc_line 85 file /opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr dc-measurement inserted automatically"

    dccorr
# 85 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
# 85 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
1       d11 ze
        1m


# 93 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
2       10u do:f2
        d11
        d12*5
3       d12*6
4       d12*4
5       d12*2
6       10u


# 103 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
        1m setnmr3^0
        d1 
        1m setnmr3|0 setnmr0|34|32|33 ctrlgrad 0


# 109 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
        10u fq=cnst22(bf ppm):f2
        10u pl0:f1 
        10u pl3:f3
        10u pl0:f2
        10u pl0:f2
;------- start 90-degree on hn -----------------------
        (p29:sp21 ph11:r):f1
        3u 
        2u pl1:f1
        (p1 ph0):f1
        3u
        PG1:gp1
        DELTA 
        d16
        (center (p2 ph0):f1 (p22 ph0):f3)
        3u
        DELTA 
        PG1:gp1
        d16 
        (p1 ph8):f1
        5u
;goto 100    ;sp21 and phcor11
;        PG23:gp23
;        d16
;goto 100               ;WARNING - make sure pl12 is set to C' dec PL and
;                                  that AQ is short (<80ms) or turn off AQ cpd
;                                  before using this statement. Ditto for all
;                                  'goto 100's'.
        (p21 ph0):f3
        d27
        (center (p22 ph0):f3 (p24:sp9 ph0):f2)
        d27
        (p21 ph1):f3
        3u
        PG20:gp20
        d16 pl1:f1


# 150 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
; ------------------- CT Ca evolution ----------------------------
# 182 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"

        (p13:sp2 ph5):f2
        d20

        (p2 ph0):f1
# 188 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
        d20
        (center (p22 ph0):f3 (p14:sp5 ph0):f2)
        d20

        (p2 ph0):f1

        d20
        (p24:sp9 ph9):f2
        DELTA5
       (p14:sp5 ph0):f2          ;BS pulse
        4u
        (p13:sp8 ph6):f2
# 201 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
        3u 
        4u do:f4
        (p52 ph3):f4
        3u
        PG22:gp22 
        d16
        10u
 ;*****************************************       
  if "l5==1"
      {
      (p21 ph17):f3
      }
  else
      {
      (p21 ph7):f3
      }
      d10
      (p14:sp5 ph0):f2
      DELTA4
   if "l5==1"
     {
      PG5:gp6
      200u
      (center (d8 d9 p22 ph17 d7):f3 (p24:sp9 ph0 d9):f2)
      5u
      PG5:gp5
      }
  else
      {
      PG5:gp6*-1
      200u
      (center (d8 d9 p22 ph7 d7):f3 (p24:sp9 ph0 d9):f2)
      5u
      PG5:gp5*-1
      }
        190u
        DELTA6
        d0
        5u pl1:f1
        (p1 ph12):f1
        3u 
        2u pl0:f1
        (p29:sp1 ph21:r):f1
;goto 100    ;sp1 and phcor21
        5u
        PG2:gp2
        DELTA2
        d16 pl1:f1
        (center (p2 ph0):f1 (p22 ph0):f3)
        5u   
        DELTA2 
        PG2:gp2
        d16 pl0:f1
        (p29:sp11 ph22:r):f1
        3u 
        2u pl1:f1
        (p1 ph0):f1 
        (p21 ph14):f3
        5u
;goto 100    ;sp11 and phcor22
        PG3:gp3           
        195u pl18:f1
        DELTA3
       (150u p27 ph10:r 3u 2u pl1 p2 ph0 3u 2u pl18 p27 ph10:r):f1 (d28 p22 ph0):f3 
        3u 
;goto 100    ;pl18 and phcor10
        2u pl1:f1
        PG3:gp3
        DELTA3
        45u
        (p21 ph0):f3
        PG4:gp4               ;decoding gradient
        DELTA8
       10u fq=cnst21(bf ppm):f2
100     10u setnmr0^34^32^33 ctrlgrad 7
        5u pl12:f2
       go=2 ph31 cpd2:f2
        10u do:f2
        d11 wr #0 if #0 zd


        d12
        d12 ip12*2
        d12 ip21*2
        d12 ip14*2
        d12 iu5
        lo to 3 times 2
        d12 id10
        if "d0 < in0 + 3u"
        {
         d12 id9
        }
        else
        {
        d12 dd0
        }
        d12 ip7*2
        d12 ip17*2
        d12 ip31*2
        d12 ru5
        lo to 4 times l3
# 307 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
        d12 rd0
        d12 rd9
        d12 rd10
        d12 ip5
        lo to 5 times 2
        d12 ip31*2


# 317 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
        d12 id20

        lo to 6 times l4

# 322 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
1m do:f2


# 328 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
  1m setnmr3^0

exit    
        
ph0=0
ph1=1
ph2=2
ph3=3
ph4=0 2
ph5=1 1 3 3
ph6=3
ph7=1 3 1 3 0 2 0 2
ph8=1          ;original setting = 1     ;check right phase for Boltzmann !!!!! 
ph9=1 3
ph10=2
ph11=3         ;this must be 180 deg from ph8
ph12=3
ph14=3
ph17=1 3 1 3 2 0 2 0
ph21=1
ph22=0
ph31=1 3 3 1 2 0 0 2
;---- NOTES --------------
;CT for N15
;tested on an AVIII TS2-PL3 console
;   (must modify when using 2 13C channels)

;pulse program archived with 'go' cpd commented out
# 357 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
;     NOTE WELL!!!  f2=f2=f2 in bits.jlb for AVIII consoles; different
;                   designations are for ease of reading

;   (turn on C' cpd during AQ for c13 labeled samples)
; f2=f2(56ppm)  f2=f2(176ppm)   f3=f3 (119ppm)  f1=f1   f4=f5

;1H pulses:
;p1 = 90 deg (10us) hard 1H pulse @ pl1
;p27 = 1.2ms soft 90 deg pulse @ pl18
;p29 = 1.9m @ sp1, sp11, or sp21 
;p26 = 50u @ pl19
;pcpd1 = 50u
;cpdprg1 = waltz64
# 371 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
;15N pulses:
;p21 = 90 deg (50us) 15N pulse @pl3

;13C pulses:
;p13=sel. 90  Rectangle pulse (spnam2=spnam8=RECT.1000)
;p14=sel. C' 180  spnam5 = Sinc1.1000
;p24 = selective Cali 180 deg (spnam9=Q3.1000 @ 600MHz
;p50 = sel. Cali 180 deg for spnam15 = 180Square
;CPDPRG2 = garp  (aq C' dec program)
;pcpd2 = pw for C' aq dec (140u @ 600 MHz) @ pl12

;2H
;CPDPRG5 = waltz64
;pcpd5 = 300us for 2H Dec @ pl17
;p52 = pcpd5 @ pl17
# 388 "/opt/topspin3.1/exp/stan/nmr/lists/pp/user/hncaTRv5.jr"
;f3 SW = 1/(2*in0)
;echo-antiecho in N15
; CT evolution period
;l3 = number of steps in CT period

;Ca SW = 1/(4*in20)
;States
;l4 = number of increments for Ca evolution
;  note:  keep in20*4*l4 < 11 ms or will see Cb coupling for non-CT

;paired RECT grads do not work well on AVIII consoles
;gpz1 = 0%  sine.50 for cryoprobe
;gpz2 = +50%  sine.20
;gpz3 = +70   sine.100
;gpz4 = +70%  sine.20    Decoding gradient
;gpz5 = -70%  sine.20    half-Encoding gradient
;gpz6 = +70%  sine.20    half-Encoding gradient
;gpz20 = +50%  sine.50
;gpz22 = +40%  sine.50
