3.4. tkwant.manybody – Solving the many-body time-dependent Schrödinger equation

3.4.1. States

Solving the many-body time-dependent Schrödinger equation.

State(syst[, tmax, occupations, params, …])

Solve the time-dependent many-particle Schrödinger equation.

WaveFunction(psi_init, tasks[, comm])

Evolve a many-particle wavefunction in time.

3.4.2. Helper functions

lead_occupation([chemical_potential, …])

Set the occupation (\(T, \mu, f(E)\)) for one lead.

calc_intervals(spectra, occupations[, …])

Return a list of momentum intervals to perform the manybody integration.

split_intervals(intervals, number_subintervals)

Divide each interval in number_subintervals equidistant intervals.

combine_intervals(intervals[, atol, rtol])

Group leads for similar intervals together.

calc_tasks(intervals, spectra, occupations)

Return all tasks (set of quantum numbers that uniquely identify a onebody state) that will form the manybody state.

calc_initial_state(syst, tasks[, …])

Calculate the initial manybody scattering wave function using MPI.


Extract upper and lower energy cutoffs from the lead occupations.

make_boundstates_time_dependent(…[, …])

Make boundstates time dependent, such that they can evolve in time.

add_boundstates(solver, boundstate_psi, …)

Add a sequence of boundstates to the manybody solver

3.4.3. Data types

Occupation(distribution[, energy_range, bands])

Data format for the lead occupation, see tkwant.manybody.lead_occupation.

Interval(lead, band, kmin, kmax[, order, …])

Data format for a quadrature interval, see tkwant.manybody.calc_intervals.