System

Problem

1) Table 1 of the JMR paper compares the efficiency of SpinEvolution with that of SIMPSON in simulations of TPPM decoupling in CHn spin systems for a range of n values. In order to obtain data for this table, one may create an individual set of input files (main input file, coordinates, CS, and CSA files) for each n. This is not very convenient, however.

Make a single “universal” input file that can be used to run these simulations for any n. This file should load the coordinates from ch9.cor and CSA’s from ch9.csa. Hint: Use the extended molecule functionality and the -macro and -sys options.

2) The spin system size cannot be changed within a single simulation, so a separate computation for each n must be run even with the file you just created. This can be done manually, from a script, or from some other program. Do this from another SpinEvolution simulation. To be more specific: create an input file that runs such simulations for n from 1 to 6, loads the spectra obtained in these simulations, and saves them all in one file. Hints: Define n as a scan parameter and run the simulations for different n using the system() function. You will also need to use the cat(), num2str(), eval(), save(), and load() functions.

 

Solution

1) tppmchn
****** The System *******
spectrometer(MHz)  500
spinning_freq(kHz) 15.625
channels           C13 H1
nuclei             *
atomic_coords      ch9.cor
cs_isotropic       0.0 -0.3 0.5 0.5 0.2 0.2 0.2 0.0 0.0 0.0
csa_parameters     ch9.csa
j_coupling         *
quadrupole         *
dip_switchboard    *
csa_switchboard    *
exchange_nuclei    *
bond_len_nuclei    *
bond_ang_nuclei    *
tors_ang_nuclei    *
groups_nuclei      *
******* Pulse Sequence ******************************
CHN 1
timing(usec)      (8)256x625
power(kHz)         0
phase(deg)         0
freq_offs(kHz)     0
CHN 2         
timing(usec)      (4   4)
power(kHz)        125 125
phase(deg)         0   15
freq_offs(kHz)     0   0
****** Variables **************************************
spinning_freq=15.625
n=8
t=500/spinning_freq/n
pulse_1_1_1=2*t
pulse_2_1_[1:2]=t
power_2_1_[1:2]=500/t
******* Options etc ***********************************
rho0               I1x
observables        F1p
EulerAngles        rep168
n_gamma            8
line_broaden(Hz)   2
zerofill           *
FFT_dimensions     1 Hz
options            -sysch$N
*****************************************
The option -macro'$N'= where  is the number of protons must be specified from the command line
  2) tppm-driver
****** The System *******
spectrometer(MHz)  *
spinning_freq(kHz) *
channels           H1
nuclei             H1
atomic_coords      *
cs_isotropic       *
csa_parameters     *
j_coupling         *
quadrupole         *
dip_switchboard    *
csa_switchboard    *
exchange_nuclei    *
bond_len_nuclei    *
bond_ang_nuclei    *
tors_ang_nuclei    *
groups_nuclei      *
******* Pulse Sequence ******************************
CHN 1
timing(usec)       0
power(kHz)         0
phase(deg)         0
freq_offs(kHz)     0
****** Variables **************************************
data=(["0:0:256"])'*["0:0:6"]
scan_par n/1:6/
system("spinev tppmchn -v0 -vclk -macro'$N'=" & num2str(n))
data(:,n)=(eval(load("tppmchn_re.dat"),n))(:,2)
save(data,"tppmd_out.dat")
******* Options etc ***********************************
rho0               I1x
observables        I1x
EulerAngles        *
n_gamma            *
line_broaden(Hz)   *
zerofill           *
FFT_dimensions     *
options            -o0