# 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.

## Contents

## 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: answer=pulse_sequence(spin_system,parameters,H,R,K) 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

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

## See also

powder.m, liquid.m, roadmap.m, singlerot.m, crystal.m, imaging.m, gridfree.m, floquet.m

*Version 2.2, authors: Ilya Kuprov*