powder.m
Static powder interface to pulse sequences. Generates a Liouvillian superoperator, the initial state and the coil state, then passes them on to the pulse sequence function.
Syntax
answer=powder(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.spins - a cell array giving the spins that the
pulse sequence works on, in the order
of channels, e.g. {'1H','13C'}
parameters.offset - a cell array giving transmitter offsets
in Hz on each of the spins listed in
parameters.spins
parameters.grid - name of the spherical averaging grid
file (see the grids directory in the
kernel).
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.needs - a cell array of strings specifying ad-
ditional information required by the
sequence:
'zeeman_op' - Zeeman part of the Hami-
ltonian in the laboratory frame, to be
placed into parameters.hzeeman and sent
to the pulse sequence
'aniso_eq' - thermal equilibrium is re-
computed using the full anisotropic Ha-
miltonian at each orientation, and sent
to pulse sequence via parameters.rho0
parameters.* - additional subfields may be required by
the pulse sequence - check its documen-
tation page
assumptions - context-specific assumptions ('nmr', 'epr',
'labframe', etc.) - see the pulse sequence
header for information on this setting.
Outputs
This function returns a powder average of whatever it is that the pulse sequence returns. If a structure is returned by the pulse sequence, the structures are powder averaged field-by-field.
Examples
There are over 100 examples using this context in the example set. The following cases are representative:
dnp_solids/crosspol_powder_static_1.m - electron-nuclear cross-polarisation DNP
esr_solids/hyscore_nitroxide_powder.m - HYSCORE spectrum of a nitroxide radical
giant_spin/triple_dy_eqmag_temp.m - temperature dependence of equilibrium magnetisation in a dysprosium cluster
nmr_solids/cp_powder_match_3.m - Hartmann-Hahn matching condition under MAS
Notes
- THIS IS FOR STATIC POWDERS - use singlerot.m for MAS simulations.
- Arbitrary order rotating frame transformation is supported, including infinite order. See the header of rotframe.m for further information.
- The function supports parallel processing via Matlab's Distributed Computing Toolbox - different system orientations are evaluated on different labs.
See also
crystal.m, liquid.m, roadmap.m, singlerot.m, doublerot.m, imaging.m, gridfree.m, floquet.m
Version 2.2, authors: Ilya Kuprov, Luke Edwards