REM *********************************************************************** REM * * REM * HOMO2DJ - GMB 2000 * REM * * REM * Separation of J-coupling and chemical shift experiment. Uses pulse * REM * sequence: * REM * * REM * rd - 90(x) - d1- 90(y) - d1 - acquire(x) * REM * * REM * CYCLOPS is included on the aqcuisition. d1 is incremented so that * REM * the f1 size ends up as the value entered by the user. The increment * REM * should therefore be 1/f1, where f1 is the maximum frequency (i.e., * REM * coupling) in the f1 dimenssion. The phase cylce corresponds to * REM * EXORCYCLE (as per Ernt, Bodenhausen, and Wokaun). * REM * * REM *********************************************************************** REM read in homo2dj conditions (4 scans...) re "c:\eft\h1\homo2dj.ini" showwin cls print "HOMO2DJ acquisition program" print print "The relaxation delay needs to be set in the range 1 to 5" print "times the expected T1 for the sample. 2.0 seconds is a" print "good general purpose value." print input "Enter a relaxation delay (S):",d0 cls print "HOMO2DJ acquisition program" print define p0 h90 pulses.txt if p0=0 then input "Enter 90 degree pulsewidth: ",p0 if p0>0 then print "The 90 degree pulsewidth chosen is ",p0 p1=2*p0 SLEEP 1 cls print "HOMO2DJ acquisition program" print print "Enter the size of the F1 domain in Hz. It has to be at" print "least 50% larger than the largest J-coupling constant" print "of the system. The default is set to 50 Hz." input "Size of the F1 domain (Hz): ",v if v=0 then v=50 REM We need to sample twice as much in F1 (good'ol Nyquist...) d2=1e6/(2*v) cls print "HOMO2DJ acquisition program" print print "Enter the number of experiment in the F1 dimenssion." print "Usually, 64 are enough, and more will not be beneficial" print "due to relaxation." input "Number of experiments in F1: ",x REM if the user selects more than 128, force it to 128... if x=0 then x=64 if x>128 then x=128 print print "Resolution in F1 dimenssion (Hz): ",v/x REM This can be improved by zero-filling... SLEEP 1 cls print "HOMO2DJ acquisition program" print print "Enter a file name for the data. The default file" print "my_homo2dj can be used by pressing . Files with" print "the same name will be overwritten without warning." input "Enter output file name, e.g. data\my_homo2dj. ",f$ if f$="" then f$="data\my_homo2dj" REM first pulse phase a$="0000" REM second pulse phase b$="0123" REM receiver phase c$="0202" REM will use 3*dw/16 delay before turning receiver on e=3*d/16 REM will use dw/16 delay before turning digitizer on f=d/16 REM set up the program for GS PROGRAM "clear" PROGRAM 0 d0 S PROGRAM + 2.0 uS PROGRAM + p0 uS TX a$ PROGRAM + e uS PROGRAM + f uS RX PROGRAM + 1.0 uS ADC RX PROGRAM + a S RX PROGRAM "coadd" c$ PROGRAM + 2.0 uS ZERO cls print "Running GS..." print print "If the FID is RED, reduce the gain. " print print " to exit GS and continue with HOMO2DJ." STARTGS REM now run the HOMO2DJ experiment REM initial t1 delay d1=1.0 'microseconds REM calculate the run time with the revised RD. w=n*x*(a+d0+x*d2/2e6)/60 REM print decent significant figures. w=(10*w - (10*w)%1)/10 REM define nucleus for 2nd dimension h$="H1" REM Write the 2D file header WH2D f$ x v h$ cls print "Running HOMO2DJ..." print print "Time, in minutes, to complete the experiment: ",w print PROGRAM "clear" PROGRAM 0 d0 S PROGRAM + 2.0 uS PROGRAM + p0 uS TX a$ PROGRAM + d1 uS PROGRAM + p1 uS TX b$ PROGRAM + d1 uS PROGRAM + e uS PROGRAM + f uS RX PROGRAM + 1.0 uS ADC RX PROGRAM + a S RX PROGRAM "coadd" c$ PROGRAM + 2.0 uS FOR i=1 to x ZERO START rem Write the data to the 2D file WF f$ i 0 REM Increment the t1 delay by d2 and update pulse programer... d1=d1+d2 PROGRAM 3 d1 uS PROGRAM 5 d1 uS cls print "Running HOMO2DJ..." print REM calculate the remaining time. w=n*(x-i)*(a+d0+x*d2/2e6)/60 REM print decent significant figures. w=(10*w - (10*w)%1)/10 print "Slice",i,"of",x,"completed - Time remaining",w,"minutes..." NEXT cls print "HOMO2DJ Experiment Completed." print print "Data written to file ",f$ print print "Use NutsMacro usp_homo2dj.mac, , for processing." input " to exit the pulse program.",g$ END