Reduce.m

From Spinach Documentation Wiki
Jump to: navigation, search

Symmetry and trajectory-level state space restriction for a user-specified Liouvillian L and initial state rho. Applies all reduction methods (unless disabled during the call to create.m) and returns a cell array of projectors into a set of independent reduced subspaces. See the Kuprov group publications for the details and validity conditions of the many methods and approximations involved. The default settings guarantee accurate simulations in all cases, but considerable speed-ups can often be achieved by relaxing the various tolerances from their ultra-conservative default values. Syntax:

    projectors=reduce(spin_system,L,rho)

where L is the Liouvillian and rho is the initial state (in the case of source state screening) or the detection state (if destination state screening is used). The output is a cell array of projectors into independently evolving reduced subspaces. Those projectors are to be used as follows:

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

Further information is available here:

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

Unless they are specifically disabled, symmetry and trajectory-level pruning algorithms are applied automatically and transparently every time a call is made to the time evolution.m function. See function header for more information.