tkwant.onebody.ScatteringStates¶
-
class
tkwant.onebody.
ScatteringStates
(syst, energy, lead, tmax=None, params=None, spectra=None, boundaries=None, equilibrium_solver=<bound method SparseSolver.wave_function of <kwant.solvers.mumps.Solver object>>, wavefunction_type=<bound method WaveFunction.from_kwant of <class 'tkwant.onebody.onebody.WaveFunction'>>)[source]¶ Calculate time-dependent wavefunctions starting in an equilibrium scattering state
- Parameters
syst (
kwant.builder.FiniteSystem
) – The low level system for which the wave functions are to be calculated.energy (float) – Energy of the scattering eigenstate.
lead (int) – Lead index to construct the scattering state.
tmax (float, optional) – The maximum time up to which to simulate. Sets the boundary conditions such that they are guaranteed to be correct up to ‘tmax’. Mutually exclusive with ‘boundaries’.
params (dict, optional) – Extra arguments to pass to the Hamiltonian of
syst
, excluding time.spectra (sequence of
kwantspectrum.spectrum
, optional) – Energy dispersion \(E_n(k)\) for the leads. Must have the same length assyst.leads
. Required only if noboundaries
are provided. If needed but not present, it will be calculated on the fly from syst.leads.boundaries (sequence of BoundaryBase, optional) – The boundary conditions for each lead attached to
syst
. Mutually exclusive with ‘tmax’.equilibrium_solver (
kwant.wave_function
, optional) – Solver for initial equilibrium scattering problem.wavefunction_type (
WaveFunction
, optional) – One-body time-dependent wave function. Name of the time argument and initial time are taken from this class. If this is not possible, default values are used as a fallback.
Notes
An instance of this class behaves like a sequence of
WaveFunction
instances. The index in the sequence corresponds to the scattering mode. The name of the time argument (time_name) and the initial time of the evolution (time_start) are taken from the default values of theWaveFunction.__init__
method. Changing the default values by partial prebind (e.g. via functools) is possible.Methods