tkwant.manybody.make_boundstates_time_dependent¶
-
tkwant.manybody.
make_boundstates_time_dependent
(boundstate_psi, boundstate_tasks, syst, boundaries, params=None, onebody_wavefunction=<class 'tkwant.onebody.onebody.WaveFunction'>)[source]¶ Make boundstates time dependent, such that they can evolve in time.
- Parameters
boundstate_psi (dict) – Dictionary with all boundstate wavefunctions. If a wavefunction is of type
tkwant.onebody.WaveFunction
and has an evolve() method, it is not changed. Otherwise, the wavefunction must be andarray
array and is taken as the initial value to construct a time dependent boundstate wave function from it. The the original wavefunction is then replaced by the time dependent one in place. For load balancing the dictionary should be distributed over all MPI ranks.boundstate_tasks (dict of
tkwant.onebody.Task
) –Each element in the dict represents a single boundstate state. An element must have at least the following attribute:
weight : float, weighting factor
energy : float, the energy of the bound state.
boundstate_tasks
must include all boundstates stored inboundstate_psi
(all keys must be identical) and must be the same on all MPI ranks.syst (
kwant.builder.FiniteSystem
) – The low level system.boundaries (sequence of
BoundaryBase
) – The boundary conditions for each lead attached tosyst
. Must have the same length assyst.leads
.params (dict, optional) – Extra arguments to pass to the Hamiltonian of
syst
, excluding time.onebody_wavefunction (
tkwant.onebody.WaveFunction
, optional) – Class to evolve a single-particle wavefunction in time.
Notes
This routine changes
boundstate_psi
in place.