Difference between revisions of "Doublerot.m"
(→Arguments) |
|||
| Line 54: | Line 54: | ||
parameters.grid - [[Appendix I: powder grids|powder averaging grid]] | parameters.grid - [[Appendix I: powder grids|powder averaging grid]] | ||
| − | + | ||
parameters.needs - a cell array of character strings spe- | parameters.needs - a cell array of character strings spe- | ||
cifying additional requirements that | cifying additional requirements that | ||
Revision as of 14:26, 29 July 2023
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:
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.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.serial - if set to true, disables automatic pa-
rallelisation
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.
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
Version 2.8, authors: Ilya Kuprov