Difference between revisions of "Propagator.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Created page with "Calculates exponential propagators. Syntax: P=propagator(spin_system,L,timestep) returns exp(-i*L*t). The following calculation methods are supported: 'cpu' ...")
 
Line 1: Line 1:
Calculates exponential propagators. Syntax:
+
{{DISPLAYTITLE:function.m}}
 +
Calculates exponential propagator exp(-1i*L*timestep) using scaled and squared Taylor series method.
  
            P=propagator(spin_system,L,timestep)
+
==Syntax==
  
returns exp(-i*L*t). The following calculation methods are
+
    P=propagator(spin_system,L,timestep)
supported:
 
  
  'cpu'      - Taylor series with scaling and squaring
+
==Arguments==
                on CPU, spmd parallel if possible
 
  
  'gpu'      - Taylor series with scaling and squaring
+
    L          - Hamiltonian or Liouvillian matrix
                on GPU
+
 +
    timestep  -  propagation time step
  
The propagator calculation method is chosen by setting the
+
==Outputs==
sys.enable parameter during the call to create.m function.
 
  
Notes: we did have Chebyshev and Newton series here at one
+
    P          -  propagator matrix
point, as well as the Pade method. None of them has
+
 
lived up to their marketing.
+
==Notes==
 +
# GPUs are supported, add 'gpu' to sys.enable array during calculation setup.
 +
# Propagator caching (https://doi.org/10.1063/1.4928978) is supported, add 'caching' to sys.enable array during calculation setup.
 +
# We did have Chebyshev and Newton series here at one point, as well as the Pade method. None of them lived up to their marketing.
 +
 
 +
==See also==
 +
[[evolution.m]], [[krylov.m]], [[step.m]], [[shaped_pulse_af.m]], [[shaped_pulse_xy.m]], [[equilibrium.m]]
 +
 
 +
 
 +
''Version 2.2, authors: [[Ilya Kuprov]], [[Luke Edwards]]''

Revision as of 15:26, 27 August 2018

Calculates exponential propagator exp(-1i*L*timestep) using scaled and squared Taylor series method.

Syntax

    P=propagator(spin_system,L,timestep)

Arguments

   L          -  Hamiltonian or Liouvillian matrix

   timestep   -  propagation time step

Outputs

   P          -  propagator matrix

Notes

  1. GPUs are supported, add 'gpu' to sys.enable array during calculation setup.
  2. Propagator caching (https://doi.org/10.1063/1.4928978) is supported, add 'caching' to sys.enable array during calculation setup.
  3. We did have Chebyshev and Newton series here at one point, as well as the Pade method. None of them lived up to their marketing.

See also

evolution.m, krylov.m, step.m, shaped_pulse_af.m, shaped_pulse_xy.m, equilibrium.m


Version 2.2, authors: Ilya Kuprov, Luke Edwards