Time evloves a ground state. More...
#include <TimeEvolver.h>
Public Member Functions | |
TimeEvolver () | |
virtual | ~TimeEvolver () |
void | run () |
void | setCallback (bool(*callback)(TimeEvolver *timeEvolver)) |
void | setMaxSCIterations (int maxIterations) |
void | setNumTimeSteps (int numTimeSteps) |
void | setTimeStep (double dt) |
void | setNumberOfParticles (int numberOfParticles) |
int | getNumberOfParticles () |
void | fixParticleNumber (bool particleNumberIsFixed) |
double | getOccupancy (int state) |
Diagonalizer * | getDiagonalizer () |
double | getEigenValue (int state) |
Public Member Functions inherited from TBTK::Solver::Solver | |
Solver () | |
virtual | ~Solver () |
virtual void | setModel (Model &model) |
Model & | getModel () |
const Model & | getModel () const |
Time evloves a ground state.
TBTK::Solver::TimeEvolver::TimeEvolver | ( | ) |
Constructor.
|
virtual |
Destructor.
|
inline |
Fix particle number. If set to true, the number of particles remain the same throughout the calculation.
|
inline |
Get the Diagonalizer, which contains the eigenvectors, energies, etc.
|
inline |
Get eigenvalue.
|
inline |
Get number of particles.
|
inline |
Get occupancy of state.
void TBTK::Solver::TimeEvolver::run | ( | ) |
Run calculation. First self-consistently finds the ground state, and then time evolves the state. The callback set by setCallback is called at each iteration of both the self-consistent loop and time stepping loop.
|
inline |
Set callback used to update the Hamiltonian.
|
inline |
Set max iterations for the self-consistent loop.
|
inline |
Set number of particles.
Number | of occupied particles. If set to a negative number, the number of particles is determined by the Fermi level. For fixed particle number the Fermi level at the first time step sets the number of paticles, for non-fixed particle number the Fermi level determines the number of particles in each time step. |
|
inline |
Set number of time steps for time evolution.
|
inline |
Set length of time step used for time evolution.