!=================================== ! SPINAL DECOUPLING ! BENJAMIN WYLIE !=================================== ! WTF wrote includes file ! 1. Put into Macros. ! 2. Added more "do" loops. ! 3. Changed variable/Macro naming conventions ! 4. Added acq params here.(010906) !=================================== include "../includes/SPINAL1.inc"; .long extern SPINAL_t2_flag = 1; .phase extern SPINAL_t2_phi = 15.0; .phase extern SPINAL_t2_alp = 15.0; .phase extern SPINAL_t2_bet = 15.0; .ampl extern autofix aH_SPINAL_t2 = 0.75; .time extern pw_SPINAL_t2 = 100us; .time autofix PW_SPINAL_t2 = 100us; .phase list spinal_t2[8]; ch++ ch2; .long list fixed pSPINAL_t2[128]; ch--; !Add to .acq file !pw_SPINAL_t2;SPINAL dcpl pulse;7;u;0.1;1000;2;3;float !SPINAL_t2_phi;SPINAL phi phase;10.0;-;0.0;360.0;2;3;float !SPINAL_t2_alp;SPINAL alpha phase;5.0;-;0.0;360.0;2;3;float !SPINAL_t2_bet;SPINAL beta phase;10.0;-;0.0;360.0;2;3;float !SPINAL_t2_flag;super cycle; 1;-; 1; 4; 0; 3;long !aH_SPINAL_t2;H t2 ampl;0.0;-;0.0;1.0;4;3;float DEFINE SPINAL2_PROG PW_SPINAL_t2 = pw_SPINAL_t2; ch++ ch2; spinal_t2=spinal_t2.start; @spinal_t2++ = SPINAL_t2_phi; @spinal_t2++ = -SPINAL_t2_phi; @spinal_t2++ = (SPINAL_t2_phi + SPINAL_t2_alp); @spinal_t2++ = (-SPINAL_t2_phi - SPINAL_t2_alp); @spinal_t2++ = (SPINAL_t2_phi + SPINAL_t2_bet); @spinal_t2++ = (-SPINAL_t2_phi - SPINAL_t2_bet); @spinal_t2++ = (SPINAL_t2_phi + SPINAL_t2_alp); @spinal_t2++ = (-SPINAL_t2_phi - SPINAL_t2_alp); pSPINAL_t2=pSPINAL_t2.start; super16=super16.start; super32=super32.start; super64=super64.start; spinal_t2=spinal_t2.start; do(16){ spinal_t2=spinal_t2.start; if(SPINAL_t2_flag <= 1){ do(8){@pSPINAL_t2++ = TG | OUTP phase(@spinal_t2++);} } if(SPINAL_t2_flag == 2){ do(8){@pSPINAL_t2++ = TG | OUTP phase((@spinal_t2++ * @super16));} super16++; } if(SPINAL_t2_flag == 3){ do(8){@pSPINAL_t2++ = TG | OUTP phase((@spinal_t2++ * @super32));} super32++; } if(SPINAL_t2_flag == 4){ do(8){@pSPINAL_t2++ = TG | OUTP phase((@spinal_t2++ * @super64));} super64++; } } ch--; ENDDEF DEFINE SPINAL_t2_DEC(aDEC,cycles,xcyclerm) pSPINAL_t2=pSPINAL_t2.start; if(SPINAL_t2_flag == 0){ TPPM_DEC_H(a_tmp,cycles,xcyclerm) } if(SPINAL_t2_flag <> 0){ out time(xcyclerm) ch2: TG | aDEC | @pSPINAL_t2++; do(cycles){ out PW_SPINAL_t2 ch2: TG | aDEC | @pSPINAL_t2++; } } ENDDEF