#include <tdvp.h>
Public Member Functions | |
void | do_step () |
Does an entire time step sweeping forward and backward. More... | |
std::tuple< Timer, SRDef, SRDef, SRDef, SRDef, SRDef > | do_step_dmft (bool const &use_mt=false) |
Performs a single time step. More... | |
Errors | get_errs () const |
Returns errors. More... | |
std::vector< DenseTensor< 2 > > const & | get_global_Us () const |
Gives back the rotation. More... | |
SRDef | get_last_norm () const |
Returns the last norm. More... | |
syten::TDVP::Mode | get_tdvp_mode () |
Returns the current TDVP Mode More... | |
SDef | get_tdvp_timestep () |
Returns the current TDVP timestep More... | |
Timer const & | get_timer () const |
Returns timer. More... | |
SRDef | get_total_norm_change () const |
Returns the current norm. More... | |
void | initArgs (int argc_, char **argv_) |
Initialses arguments. More... | |
template<class Archive > | |
void | load (Archive &ar, unsigned int const in_version) |
Load. More... | |
bool | reached_final_T () const |
True if final time is reached. More... | |
void | run (bool const do_step_=false) |
Run TDVP. More... | |
template<class Archive > | |
void | save (Archive &ar, unsigned int const in_version) const |
Overload to satisty boost. More... | |
template<class Archive > | |
void | save (Archive &ar, unsigned int const) |
Save. More... | |
void | set_tdvp_mode (syten::TDVP::Mode new_mode) |
Overwrites the current TDVP Mode More... | |
void | set_tdvp_timestep (SDef time_step) |
Overwrites the current TDVP timestep. More... | |
Conf const & | showConf () const |
Shows the TDVP Configuration. More... | |
std::vector< Operator > const & | showHamiltonian () const |
Returns the operators. More... | |
State const & | showPsi () const |
Gives a const. More... | |
Worker ()=default | |
Default ctor. More... | |
Worker (State &&psi_, Vec< Operator > &&ops_, Conf &&conf_, Vec< Operator > &&obs_=Vec< Operator >()) | |
Standard ctor. More... | |
Static Public Attributes | |
static constexpr unsigned int | version = 1 |
Version. More... | |
Private Member Functions | |
bool | checkSignals () const |
Checks for signals. More... | |
void | contract (Position const &pos, LegType const dir) |
Forwarder to build the contraction on node cptr from the neighbours of cptr , pptr and optr in direction dir . More... | |
void | evolve_bond (Position const &pos, STensor &bond, SDef const prefactor, LegType const dir) |
Back evolves the bond in direction to the next site. More... | |
void | evolve_branching_1site (Position const &pos, Vec< std::reference_wrapper< T3NTensor const > > const &w_refs, SDef const prefactor) |
Evolves one Branching Node. More... | |
void | evolve_phys_1site (Position const &pos, Vec< std::reference_wrapper< T3NTensor const > > const &w_refs, SDef const prefactor) |
Evolves one Physical Node. More... | |
void | evolve_phys_2site (STensor &site, Vec< T3NTensor > const &ws, SDef const prefactor, LegType const dir, Position const &pos) |
Evolves two Physical Nodes. More... | |
void | evolve_phys_branch (STensor &site, Vec< STensor > const &ws, SDef const prefactor, LegType const direction, Position const &pos) |
Evolves physical branching contraction. More... | |
void | evolve_phys_branch_phys (STensor &site, Vec< STensor > const &ws, SDef const prefactor, LegType const direction, LegType const secondDir, Position const &pos) |
Evolves physical branching physical contraction. More... | |
void | expandPhysical (Position const &pos, LegType const direction, STensor &bond) |
expandes the next virtual leg More... | |
void | initialise_path_rec (Position &pos, bool &rightMostReached) |
void | log_time_step (SRDef const &res_norm, std::string const &filename) |
Prints the time step information. More... | |
void | mode_transform_2phys (Position const &pos, LegType const dir) |
Actually performs the mt on two neighbouring physical nodes. More... | |
void | mode_transform_2phys_branch (Position const &pos, LegType const dir, LegType const second) |
Actually performs the mt on two physical and a branching node. More... | |
void | mode_transform_node (Position const &pos, LegType const dir) |
Switch to decide which mt scheme to choose. More... | |
void | mode_transform_rec (Position &pos) |
Applies mode transformation recursively. More... | |
STensor | norm_bond (Position const &pos, LegType const &direction) |
Returns the bond in direction to the next site. More... | |
void | normalise_network (Position const &pos, LegType towards) |
Normalises the network from position pos towards towards . More... | |
void | project_onto_orthogonal_complement (Position const &pos, LegType const direction, STensor &bond, Vec< STensor > &expander, Vec< SBasis > &ex_basis) |
projects the expansion tensor onto the orthogonal compliment of the site tensor More... | |
void | resetPosition () |
Set position to start. More... | |
void | update (Position &pos) |
Updates a subtree recursively. More... | |
void | update_branch (LegType const direction, Position const &pos) |
Performs the actual update on a Branching Node. More... | |
void | update_node (Position const &pos, LegType const dir, LegType const secondDir, bool const backEvolveSecondPhysOnly) |
A helper function in order to distinguish the kinds of updates. More... | |
void | update_phys (LegType const direction, Position const &pos) |
Performs the actual update on a Physical Node. More... | |
void | update_phys_branch (LegType const dir, Position const &pos) |
Updates a contraction of a physical and a branching node. More... | |
void | update_phys_branch_phys (LegType const dir, LegType const secondDir, Position const &pos, bool const backEvolveSecondPhysOnly) |
Updates two physical sites. More... | |
void | update_phys_phys (LegType const dir, Position const &pos) |
Two site updates an MP constallation. More... | |
Contraction of operator and state. | |
void | build_rootContr (Position const &pos) const |
Build a local root-pointing contraction of the operator with the state (based on) the nodes given as arguments. More... | |
void | build_rootContr_rec (Position &pos) const |
Recursively build an entire tree of root-pointing contractions. More... | |
void | build_descendantContr (LegType const which, Position const &pos) const |
Build a contraction pointing towards the requested direction. More... | |
Private Attributes | |
int | argc |
char ** | argv |
Vec< LegType > | backward_path |
Path which is went during backwards step. More... | |
Conf | conf |
configuration More... | |
Contractions | contrs |
Contractions of op & psi . More... | |
Index | count = 0 |
Counts the number of time-steps made. More... | |
DenseTensor< 2, SDef > | expect |
Dense tensor storing the expectation values. More... | |
Vec< LegType > | forward_path |
Path which is went during forward timestep. More... | |
SRDef | krylov_error = 0. |
Krylov error. More... | |
SRDef | last_norm |
tracks the last norm change More... | |
SRDef | max_trunc_error = 0. |
Maximal truncation error. More... | |
Vec< Operator > | obs |
time dependent observables More... | |
Vec< Operator > | ops |
Operator H in exp(-i dt H) More... | |
Position | position |
Shows the current position during optimisation. More... | |
SRDef | proj_error = NAN |
Projection error. More... | |
State | psi |
current state More... | |
Index | step_id = 0 |
Current step number. More... | |
Timer | timer |
Timer for performance information. More... | |
SRDef | total_norm_change |
tracks the total norm change More... | |
SRDef | trunc_error = 0. |
Truncation error. More... | |
Vec< DenseTensor< 2 > > | Us = {} |
For transforming the creation and annihilation operators. More... | |
Static Private Attributes | |
static std::string const | uuid = "6b0c9bfa-cf5d-11eb-b8bc-0242ac130003" |
UUID. More... | |
TDVP worker.