Difference between revisions of "Singlerot.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Sync syntax/arguments/outputs with current Spinach source)
(Update function See also links and function index membership)
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{DISPLAYTITLE:singlerot.m}} __NOTOC__
 
{{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.
 
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==
 
==Syntax==
  
[answer,sph_grid]=singlerot(spin_system,pulse_sequence,parameters,assumptions)
 
  
==Arguments==
+
    [answer,sph_grid]=singlerot(spin_system,pulse_sequence,...
 +
                                  parameters,assumptions)
  
pulse_sequence      - pulse sequence function handle. See the
+
==Parameters==
 +
 
 +
  pulse_sequence      - pulse sequence function handle. See the
 
                         experiments directory for the list of
 
                         experiments directory for the list of
 
                         pulse sequences that ship with Spinach.
 
                         pulse sequences that ship with Spinach.
 
+
 
   parameters.rate    - spinning rate in Hz. Positive numbers
 
   parameters.rate    - spinning rate in Hz. Positive numbers
 
                         for JEOL, negative for Varian and Bruker
 
                         for JEOL, negative for Varian and Bruker
 
                         due to different rotation directions.
 
                         due to different rotation directions.
 
+
 
   parameters.axis    - spinning axis, given as a normalized
 
   parameters.axis    - spinning axis, given as a normalized
                         3-element vector; this is the direction
+
                         3-element vector
                        around which the rotor is turning
+
 
+
   parameters.spins    - a cell array giving the spins that  
   parameters.spins    - a cell array giving the spins that
+
                         the pulse sequence involves, e.g.  
                         the pulse sequence involves, e.g.
 
 
                         {'1H','13C'}
 
                         {'1H','13C'}
 
+
 
   parameters.offset  - a cell array giving transmitter off-
 
   parameters.offset  - a cell array giving transmitter off-
 
                         sets in Hz on each of the spins listed
 
                         sets in Hz on each of the spins listed
 
                         in parameters.spins array
 
                         in parameters.spins array
 
+
   parameters.max_rank - maximum rotor harmonic rank to retain
+
   parameters.max_rank - maximum harmonic rank to retain in
                         in the solution (increase till conver-
+
                         the solution (increase till conver-
                         gence is achieved, a good guess value
+
                         gence is achieved, approximately
                         is the number of spinning sidebands
+
                         equal to the number of spinning si-
                         expected in the spectrum)
+
                         debands in the spectrum)
 
+
 
   parameters.rframes  - rotating frame specification, e.g.
 
   parameters.rframes  - rotating frame specification, e.g.
                         {{'13C',2},{'14N',3}} requests second
+
                         {{'13C',2},{'14N,3}} requests second
 
                         order rotating frame transformation
 
                         order rotating frame transformation
 
                         with respect to carbon-13 and third
 
                         with respect to carbon-13 and third
Line 44: Line 44:
 
                         on the respective spins should be
 
                         on the respective spins should be
 
                         laboratory frame.
 
                         laboratory frame.
 
+
   parameters.grid    - spherical grid file name; see grids
+
   parameters.grid    - [[Appendix I: powder grids|powder averaging grid]]
                        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-
 
   parameters.needs    - a cell array of character strings spe-
 
                         cifying additional requirements that
 
                         cifying additional requirements that
 
                         the sequence has:
 
                         the sequence has:
 
+
 
                           'iso_eq' - thermal equilibrium state
 
                           'iso_eq' - thermal equilibrium state
 
                           of the isotropic Hamiltonian will be
 
                           of the isotropic Hamiltonian will be
 
                           placed into parameters.rho0
 
                           placed into parameters.rho0
 
+
 
   parameters.sum_up  - when set to 1 (default), returns the
 
   parameters.sum_up  - when set to 1 (default), returns the
 
                         powder average. When set to 0, returns
 
                         powder average. When set to 0, returns
                         individual answers for each point in
+
                         individual answers for each point in  
 
                         the powder as a cell array.
 
                         the powder as a cell array.
 
+
   parameters.*       - additional subfields may be required
+
   parameters.*       - additional subfields may be required by your
                        by the pulse sequence - check its do-
+
                        pulse sequence - check its documentation page  
                        cumentation page
+
 
+
   assumptions       - context-specific assumptions ('nmr', 'epr',
   assumptions         - context-specific assumptions ('nmr', 'epr',
 
 
                         'labframe', etc.) - see the pulse sequence
 
                         'labframe', etc.) - see the pulse sequence
 
                         header for information on this setting.
 
                         header for information on this setting.
  
The parameters structure is passed to the pulse sequence with the follo-
+
The parameters structure is passed to the pulse sequence with the following additional parameters set:
wing 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
  
 
==Outputs==
 
==Outputs==
  
This function returns the powder average of whatever it is that the pulse sequence returns.
+
answer  - powder average, or a cell array, of whatever the pulse sequence returns
 +
 
 +
sph_grid - spherical grid used in the calculation
  
 
==Notes==
 
==Notes==
 
 
# Arbitrary order rotating frame transformation is supported, including infinite order. See [[rotframe.m]] for further information.
 
# 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.
 
# Use 'single_crystal' powder grid for spinning single crystal simulations.
Line 92: Line 87:
  
 
==See also==
 
==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]]
[[Kernel contexts]]
 
 
 
[[Built-in_experiments#Solid_state_NMR_experiments|Solid state NMR experiments]]
 
 
 
  
 
''Version 2.8, authors: [[Ilya Kuprov]]''
 
''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