singlerot.m
Fokker-Planck single 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,sph_grid]=singlerot(spin_system,pulse_sequence,parameters,assumptions)
Arguments
pulse_sequence - pulse sequence function handle. See the
experiments directory for the list of
pulse sequences that ship with Spinach.
parameters.rate - spinning rate in Hz. Positive numbers
for JEOL, negative for Varian and Bruker
due to different rotation directions.
parameters.axis - spinning axis, given as a normalized
3-element vector; this is the direction
around which the rotor is turning
parameters.spins - a cell array giving the spins that
the pulse sequence involves, e.g.
{'1H','13C'}
parameters.offset - a cell array giving transmitter off-
sets in Hz on each of the spins listed
in parameters.spins array
parameters.max_rank - maximum rotor harmonic rank to retain
in the solution (increase till conver-
gence is achieved, a good guess value
is the number of spinning sidebands
expected in the spectrum)
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. When
this option is used, the assumptions
on the respective spins should be
laboratory frame.
parameters.grid - spherical grid file name; see grids
directory in the kernel. Two-angle
grids should be used in Liouville
space and three-angle grids in Hil-
bert space.
parameters.needs - a cell array of character strings spe-
cifying additional requirements that
the sequence has:
'iso_eq' - thermal equilibrium state
of the isotropic Hamiltonian will be
placed into parameters.rho0
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 the pulse sequence - check its do-
cumentation page
assumptions - context-specific assumptions ('nmr', 'epr',
'labframe', etc.) - see the pulse sequence
header for information on this setting.
The parameters structure is passed to the pulse sequence with the follo- wing 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.
Notes
- Arbitrary order rotating frame transformation is supported, including infinite order. See rotframe.m for further information.
- Use 'single_crystal' powder grid for spinning single crystal simulations.
- The function supports parallel processing via Matlab's Distributed Computing Toolbox - different system orientations are evaluated on different Matlab workers.
See also
Version 2.8, authors: Ilya Kuprov