Difference between revisions of "Singlerot.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Update function See also links and function index membership)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Fokker-Planck magic angle spinning context. Generates a Liouvillian superoperator and passes it on to the pulse sequence function, which should be supplied as a handle. Syntax:
+
{{DISPLAYTITLE:singlerot.m}} __NOTOC__
 +
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.
  
    answer=singlerot(spin_system,pulse_sequence,parameters,assumptions)
+
==Syntax==
  
where pulse sequence is 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 and parameters is a structure with the following subfields:
 
  
     parameters.rate    - spinning rate in Hz
+
     [answer,sph_grid]=singlerot(spin_system,pulse_sequence,...
    parameters.axis    - spinning axis, given as a normalized
+
                                  parameters,assumptions)
                          3-element vector
 
    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 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)
 
    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.
 
    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.
 
  
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==
 +
 
 +
  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
 +
 +
  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 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)
 +
 +
  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    - [[Appendix I: powder grids|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.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
 +
 +
  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 following additional parameters set:
  
 
   parameters.spc_dim  - matrix dimension for the spatial
 
   parameters.spc_dim  - matrix dimension for the spatial
 
                         dynamics subspace
 
                         dynamics subspace
 +
 
   parameters.spn_dim  - matrix dimension for the spin  
 
   parameters.spn_dim  - matrix dimension for the spin  
 
                         dynamics subspace
 
                         dynamics subspace
  
This function returns the powder average of whatever it is that the pulse sequence returns.
+
==Outputs==
 +
 
 +
answer  - powder average, or a cell array, of whatever the pulse sequence returns
 +
 
 +
sph_grid - spherical grid used in the calculation
 +
 
 +
==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==
 +
[[rotframe.m]], [[crystal.m]], [[doublerot.m]], [[floquet.m]], [[gridfree.m]], [[imaging.m]], [[liquid.m]], [[meshflow.m]], [[powder.m]], [[Kernel contexts]], [[Built-in_experiments]]
  
Note: arbitrary order rotating frame transformation is supported, including infinite order. See [[rotframe.m]] for further information.
+
''Version 2.8, authors: [[Ilya Kuprov]]''

Latest revision as of 19:41, 6 June 2026

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)

Parameters

  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

  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 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)

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

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

answer - powder average, or a cell array, of whatever the pulse sequence returns

sph_grid - spherical grid used in the calculation

Notes

  1. Arbitrary order rotating frame transformation is supported, including infinite order. See rotframe.m for further information.
  2. Use 'single_crystal' powder grid for spinning single crystal simulations.
  3. The function supports parallel processing via Matlab's Distributed Computing Toolbox - different system orientations are evaluated on different Matlab workers.

See also

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

Version 2.8, authors: Ilya Kuprov