#include <tdvp.h>
Collaboration diagram for syten::T3N::TDVP::Worker: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.