doublerot.m

Fokker-Planck double angle spinning context. Generates a Liouvillian superoperator and passes it on to the pulse sequence function, which should be supplied as a handle.

Syntax

    answer=doublerot(spin_system,pulse_sequence,parameters,assumptions)


Arguments

    pulse_sequence  - function handle to a pulse sequence, which must have
the following call syntax:

where parameters is a structure described below, H is
the Hamiltonian, R is relaxation superoperator, and K
is the kinetics superoperator

assumptions     - the string that will be passed to assume.m when
the Hamiltonian is built

parameters.rate_outer - outer rotor spinning rate in Hz

parameters.rate_inner - inner rotor spinning rate in Hz

parameters.axis_outer - spinning axis of the outer rotor,
given as a normalized 3-element
vector

parameters.axis_inner - spinning axis of the inner rotor,
given as a normalized 3-element
vector

parameters.rank_outer - maximum harmonic rank to retain in
the solution (increase till conver-
gence is achieved, approximately
equal to the number of spinning si-
debands in the spectrum) for the
outer rotor

parameters.rank_inner - maximum harmonic rank to retain in
the solution (increase till conver-
gence is achieved, approximately
equal to the number of spinning si-
debands in the spectrum) for the
inner rotor

parameters.rframes    - rotating frame specification, e.g.
{{'13C',2},{'14N,3}} requests second
order rotating frame transformation
with respect to carbon-13 and third
order rotating frame transformation
with respect to nitrogen-14

parameters.grid       - powder averaging grid

parameters.sum_up     - when set to 1 (default), returns the
powder average. When set to 0, returns
individual answers for each point in
the powder as a cell array.

parameters.*          - additional subfields may be required by your
pulse sequence - check its documentation page


The parameters structure is passed to the pulse sequence with the following additional parameters set:

    parameters.spc_dim  - matrix dimension for the spatial
dynamics subspace

parameters.spn_dim  - matrix dimension for the spin
dynamics subspace


Outputs

This function returns the powder average of whatever it is that the pulse sequence returns.

Examples

The following example files in the Spinach example set make use of this context function:

nmr_soilds/dor_powder_nav_fplanck_freq.m - 14N DOR NMR spectrum of N-acetylvaline, frequency domain simulation

nmr_soilds/dor_powder_nav_fplanck_time.m - 14N DOR NMR spectrum of N-acetylvaline, time domain simulation

nmr_overtone/dor_glycine.m - 14N overtone DOR NMR spectrum of glycine, frequency domain simulation

Notes

1. Arbitrary order rotating frame transformation is supported, including infinite order. See rotframe.m for further information.
2. The state projector assumes a powder - single crystal DOR is not currently supported.
3. The function supports parallel processing via Matlab's Distributed Computing Toolbox - different system orientations are evaluated on different labs.