path_trace.m

From Spinach Documentation Wiki
Revision as of 15:14, 5 June 2026 by Kuprov (talk | contribs) (Correct function page syntax from current Spinach source)
Jump to: navigation, search

Liouvillian path tracing. Treats the user-supplied Liouvillian as the adjacency matrix of a graph, computes the weakly connected subgraphs of that graph and returns a cell array of projectors into independently evolving populated subspaces.

Syntax

    projectors=path_trace(spin_system,L,rho)

Arguments

    L   -  Liouvillian matrix 

    rho -  the initial state (source state screening)
           or the detection state (destination state
           screening)

Outputs

  projectors - a cell array of projectors into independently
               evolving populated subspaces. The projectors 
               are to be used as follows:

                  L_reduced=P'*L*P;    (for matrices)
                  rho_reduced=P'*rho;  (for state vectors)

Notes

Further information on how this function works is available in our papers on this subject:

            http://dx.doi.org/10.1063/1.3398146
            http://dx.doi.org/10.1016/j.jmr.2011.03.010

A significant number of independently evolving or dropped subspaces is often an indication of an overlooked symmetry or a conservation law – it is a good idea to examine the dropped subspaces and try finding out why they are not being populated. The efficiency of the path tracing procedure depends on the choice of the basis set. For the spherical tensor basis sets used in Spinach, there are usually at least two (in some EPR examples), and sometimes over a hundred (in large HSQC examples) independent subspaces, depending on the calculation type and spin interactions present.

See also

reduce.m, zte.m, symmetry.m, krylov.m

Version 2.5, authors: Ilya Kuprov, Matthew Krzystyniak