Difference between revisions of "Expmint.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Add NOTOC to Spinach function page header)
(Update function See also links and function index membership)
 
(One intermediate revision by the same user not shown)
Line 10: Line 10:
 
     R=expmint(spin_system,A,B,C,T)
 
     R=expmint(spin_system,A,B,C,T)
  
==Arguments==
+
==Parameters==
  
 
     A,B,C  - the three matrices involved in the integral
 
     A,B,C  - the three matrices involved in the integral
Line 26: Line 26:
  
 
==See also==
 
==See also==
[[intrep.m]], [[propagator.m]], [[average.m]], [[rotframe.m]], [[dirdiff.m]]
+
[[intrep.m]], [[propagator.m]], [[average.m]], [[rotframe.m]], [[dirdiff.m]], [[acomm.m]], [[arnoldi.m]], [[atranspose.m]], [[aux_mat.m]], [[binpack.m]], [[cheap_norm.m]], [[cheb_coeff.m]], [[clean_up.m]], [[eigenfields.m]], [[expdrop.m]], [[expmint2.m]], [[fftdiff.m]], [[fourdif.m]], [[fourlap.m]], [[frob_chop.m]], [[gaussfun.m]], [[hdot.m]], [[herm_spline.m]], [[jacobianest.m]], [[keep_rank.m]], [[krondelta.m]], [[kronm_new.m]], [[logfactorial.m]], [[lorentzcon.m]], [[lorentzfun.m]], [[md5_hash.m]], [[mprealloc.m]], [[remncomm.m]], [[remtrace.m]], [[rspert.m]], [[rspt_eig.m]], [[snormpdf.m]], [[svd_shrink.m]], [[tikhoind.m]], [[tikhonov.m]], [[trapdiff.m]], [[unit_oper.m]], [[unit_state.m]], [[vvpert.m]], [[Kernel_utilities]]
  
 
''Version 2.2, authors: [[Luke Edwards]], [[David Goodwin]], [[Ilya Kuprov]]''
 
''Version 2.2, authors: [[Luke Edwards]], [[David Goodwin]], [[Ilya Kuprov]]''

Latest revision as of 19:36, 6 June 2026

Computes matrix exponential integrals of the following general type:

            Integrate[expm(-i*A*t)*B*expm(i*C*t),{t,0,T}]

Matrix A must be Hermitian. For further info see the paper by Charles van Loan (http://dx.doi.org/10.1109/TAC.1978.1101743).

Syntax

    R=expmint(spin_system,A,B,C,T)

Parameters

   A,B,C   - the three matrices involved in the integral

       T   - integration time

Outputs

       R   - the resulting integral

Notes

The auxiliary matrix method is massively faster than either commutator series or diagonalisation.

This is the most memory-intensive stage in many calculations; memory recycling is aggressive.

See also

intrep.m, propagator.m, average.m, rotframe.m, dirdiff.m, acomm.m, arnoldi.m, atranspose.m, aux_mat.m, binpack.m, cheap_norm.m, cheb_coeff.m, clean_up.m, eigenfields.m, expdrop.m, expmint2.m, fftdiff.m, fourdif.m, fourlap.m, frob_chop.m, gaussfun.m, hdot.m, herm_spline.m, jacobianest.m, keep_rank.m, krondelta.m, kronm_new.m, logfactorial.m, lorentzcon.m, lorentzfun.m, md5_hash.m, mprealloc.m, remncomm.m, remtrace.m, rspert.m, rspt_eig.m, snormpdf.m, svd_shrink.m, tikhoind.m, tikhonov.m, trapdiff.m, unit_oper.m, unit_state.m, vvpert.m, Kernel_utilities

Version 2.2, authors: Luke Edwards, David Goodwin, Ilya Kuprov