gridfree.m

From Spinach Documentation Wiki
Revision as of 06:52, 30 August 2026 by Kuprov (talk | contribs) (sync with Spinach main f053e432: parameters block restructured per source header; tau_c tensor definition and spinning rate sign conventions added)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Fokker-Planck magic angle spinning and SLE context that uses full Wigner D-function basis and therefore solved directly for the powder average - a spherical grid is not required. This function generates the Fokker-Planck Hamiltonian, external relaxation superoperator, kinetics superoperator, applies the necessary offsets, updates the parameter set, and passes all of that to the pulse sequence, which should be supplied as a handle.

Syntax

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

Parameters

   pulse_sequence - a function handle to one of the pulse sequences
                    located in the experiments directory

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

   parameters     - a structure with the following subfields:

        .rate     - spinning rate in Hz. Positive numbers
                    for JEOL, negative for Varian and Bruker
                    due to different rotation directions.

        .axis     - spinning axis, given as a normalized
                    3-element vector

        .spins    - a cell array giving the spins that 
                    the pulse sequence involves, e.g. 
                    {'1H','13C'}

        .offset   - a cell array giving transmitter off-
                    sets in Hz on each of the spins listed
                    in parameters.spins array

        .max_rank - maximum D-function rank to retain in
                    the solution (increase till conver-
                    gence is achieved, approximately
                    equal to the number of spinning si-
                    debands in the spectrum)

        .tau_c    - correlation times (in seconds) for rotational
                    diffusion. Single number for isotropic rotati-
                    onal diffusion, and a symmetric positive defi-
                    nite 3x3 correlation time tensor for anisotro-
                    pic rotational diffusion; the rotational dif-
                    fusion tensor is inv(6*tau_c).

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

Additional subfields may be required by the pulse sequence. 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

  1. The choice of the Wigner D function rank truncation level depends on on the spinning rate (the slower the spinning, the greater ranks are required). The rank should be set approximately equal to the expected number of spinning sidebands. For diffusive dynamics, increase till the answer stops changing.
  2. Rotational correlation times for SLE go into parameters.tau_c, not inter.tau_c (the latter is only used by the Redfield theory module).
  3. The state projector assumes a powder - single crystal MAS is not supported, use singlerot.m instead.
  4. Perturbative corrections to the rotating frame transformation are not supported - use singlerot.m if you need them.

See also

singlerot.m, crystal.m, doublerot.m, floquet.m, imaging.m, liquid.m, meshflow.m, powder.m, Kernel contexts, Built-in_experiments

Version 2.8, authors: Ilya Kuprov