|
|
| SpinlessFermionsU1 () |
|
| SpinlessFermionsU1 (Mpo< Symmetry > &Mpo_input, const vector< Param > ¶ms) |
|
| SpinlessFermionsU1 (const size_t &L, const vector< Param > ¶ms, const BC &boundary=BC::OPEN, const DMRG::VERBOSITY::OPTION &VERB=DMRG::VERBOSITY::OPTION::ON_EXIT) |
|
| Mpo () |
|
| Mpo (MpoTerms< Sym::U1< Sym::ChargeU1 >, double > &Terms) |
|
| Mpo (size_t L_input) |
|
| Mpo (std::size_t L_input, qType Qtot_input, std::string label_input="Mpo", bool HERMITIAN_input=false, bool UNITARY_input=false, BC BC_input=BC::OPEN, DMRG::VERBOSITY::OPTION VERB_input=DMRG::VERBOSITY::OPTION::SILENT) |
|
void | construct_from_pushlist (const PushType< OperatorType, CouplScalar > &pushlist, const std::vector< std::vector< std::string > > &labellist, size_t Lcell) |
|
void | calc_reversedData_from_pushlist (const PushType< OperatorType, CouplScalar > &pushlist, double tolerance=::mynumeric_limits< double >::epsilon()) |
|
void | push_qpath (const std::size_t loc, const std::vector< OperatorType > &opList, const std::vector< qType > &qList, const double lambda=1.0) |
|
void | setLocal (std::size_t loc, const OperatorType &op) |
|
void | setLocal (std::size_t loc, const OperatorType &op, const OperatorType &signOp) |
|
void | setLocal (std::size_t loc, const OperatorType &op, const std::vector< OperatorType > &signOp) |
|
void | setLocal (const std::vector< std::size_t > &locs, const std::vector< OperatorType > &ops) |
|
void | setLocal (const std::vector< std::size_t > &locs, const std::vector< OperatorType > &ops, const OperatorType &signOp) |
|
void | setLocal (const std::vector< std::size_t > &locs, const std::vector< OperatorType > &ops, const std::vector< OperatorType > &signOps) |
|
void | setLocalStag (std::size_t loc, const OperatorType &op, const std::vector< OperatorType > &stagSignOps) |
|
void | setLocalSum (const OperatorType &op, double(*f)(int)=localSumTrivial) |
|
void | setLocalSum (const std::vector< OperatorType > &op, std::vector< double > coeffs) |
|
void | setProductSum (const OperatorType &op1, const OperatorType &op2) |
|
void | precalc_TwoSiteData (bool FORCE=false) |
|
std::string | info (bool REDUCED=false) const |
|
int | get_dAux_max (int power=1) const |
|
std::size_t | length () const |
|
std::size_t | volume () const |
|
int | locality () const |
|
void | set_locality (std::size_t LocalSite_input) |
|
OperatorType | localOperator () const |
|
void | set_localOperator (OperatorType LocalOp_input) |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | Identity () const |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | Zero () const |
|
bool | IS_UNITARY () const |
|
bool | IS_HERMITIAN () const |
|
bool | IS_HAMILTONIAN () const |
|
bool | HAS_TWO_SITE_DATA () const |
|
bool | HAS_W () const |
|
boost::multi_array< double, 4 > | H2site (std::size_t loc, bool HALF_THE_LOCAL_TERM=false) const |
|
void | generate_label (std::size_t Lcell) |
|
void | push_width (const std::size_t n, const std::size_t loc, const double lambda, const OperatorType &outOp, const std::vector< OperatorType > &trans, const OperatorType &inOp) |
|
void | push_local (const std::size_t loc, const double lambda, const OperatorType &op) |
|
void | push_tight (const std::size_t loc, const double lambda, const OperatorType &op1, const OperatorType &op2) |
|
void | push_nextn (const std::size_t loc, const double lambda, const OperatorType &op1, const OperatorType &trans, const OperatorType &op2) |
|
void | reconstruct (const std::vector< std::map< std::array< qType, 2 >, std::vector< std::vector< std::map< qType, OperatorType > > > > > &O_in, const std::vector< Qbasis< Symmetry > > &qAux_in, const std::vector< std::vector< qType > > &qPhys_in, const bool FINALIZED_IN, const BC boundary_condition_in, const qType &qTot_in=Symmetry::qvacuum()) |
|
| MpoTerms (const std::size_t L=0, const BC boundary_condition_in=BC::OPEN, const qType &qTot_in=Symmetry::qvacuum(), const DMRG::VERBOSITY::OPTION &VERB_in=DMRG::VERBOSITY::OPTION::SILENT) |
|
void | initialize (const std::size_t L, const BC boundary_condition_in, const qType &qTot_in) |
|
virtual void | push (const std::size_t loc, const std::vector< OperatorType > &opList, const std::vector< qType > &qList, const Scalar lambda=1.0) |
|
void | push (const std::size_t loc, const std::vector< OperatorType > &opList, const Scalar lambda=1.0) |
|
void | show () const |
|
void | save_label (const std::size_t loc, const std::string &info_label) |
|
void | set_name (const std::string &label_in) |
|
const std::string | get_name () const |
|
std::vector< std::string > | get_info () const |
|
void | scale (const Scalar factor, const Scalar offset=0., const std::size_t power=0ul, const double tolerance=1.e-14) |
|
template<typename OtherScalar > |
MpoTerms< Symmetry, OtherScalar > | cast () |
|
void | set_qPhys (const std::size_t loc, const std::vector< qType > &qPhys_in) |
|
void | finalize (const bool COMPRESS=true, const std::size_t power=1, const double tolerance=::mynumeric_limits< double >::epsilon()) |
|
void | calc (const std::size_t power) |
|
bool | is_finalized () const |
|
const std::vector< std::map< std::array< qType, 2 >, std::vector< std::vector< std::map< qType, OperatorType > > > > > & | get_O () const |
|
const std::vector< std::vector< std::vector< std::vector< Biped< Symmetry, MatrixType > > > > > & | get_W () const |
|
const std::vector< Qbasis< Symmetry > > & | get_qAux () const |
|
const std::vector< std::vector< qType > > & | get_qOp () const |
|
const std::vector< std::vector< qType > > & | get_qPhys () const |
|
const std::vector< std::vector< std::vector< std::vector< Biped< Symmetry, MatrixType > > > > > & | get_W_power (std::size_t power) const |
|
const std::vector< Qbasis< Symmetry > > & | get_qAux_power (std::size_t power) const |
|
const std::vector< std::vector< qType > > & | get_qOp_power (std::size_t power) const |
|
std::size_t | get_hilbert_dimension (const std::size_t loc) const |
|
BC | get_boundary_condition () const |
|
const qType & | get_qVac () const |
|
const qType & | get_qTot () const |
|
const std::size_t | get_pos_qTot () const |
|
bool | check_qPhys () const |
|
bool | check_power (std::size_t power) const |
|
std::size_t | maxPower () const |
|
std::size_t | size () const |
|
void | transform_base (const qType &qShift, const bool PRINT=false, const int factor=-1, const std::size_t powre=0ul) |
|
std::vector< std::vector< TwoSiteData< Symmetry, Scalar > > > | calc_TwoSiteData () const |
|
std::vector< std::pair< qType, std::size_t > > | base_order_IBC (const std::size_t power=1) const |
|
double | memory (MEMUNIT memunit=kB) const |
|
double | sparsity (const std::size_t power=1, const bool PER_MATRIX=false) const |
|
void | set_Identity (const typename Symmetry::qType &Q=Symmetry::qvacuum()) |
|
void | set_Zero () |
|
void | set_verbosity (const DMRG::VERBOSITY::OPTION VERB_in) |
|
DMRG::VERBOSITY::OPTION | get_verbosity () const |
|
void | save (std::string filename) |
|
void | load (std::string filename) |
|
const std::vector< std::vector< std::vector< Biped< Symmetry, MatrixType > > > > & | W_at (const std::size_t loc) const |
|
const std::vector< std::vector< std::vector< std::vector< Biped< Symmetry, MatrixType > > > > > & | W_full () const |
|
const std::vector< std::vector< qType > > & | locBasis () const |
|
const std::vector< qType > & | locBasis (const std::size_t loc) const |
|
const std::vector< Qbasis< Symmetry > > & | auxBasis () const |
|
const Qbasis< Symmetry > & | auxBasis (const std::size_t loc) const |
|
const Qbasis< Symmetry > & | inBasis (const std::size_t loc) const |
|
const Qbasis< Symmetry > & | outBasis (const std::size_t loc) const |
|
const std::vector< std::vector< qType > > & | opBasis () const |
|
const std::vector< qType > & | opBasis (const std::size_t loc) const |
|
const qType & | Qtarget () const |
|
void | setLocBasis (const std::vector< std::vector< qType > > &q) |
|
void | setLocBasis (const std::vector< qType > &q, std::size_t loc) |
|
const std::vector< std::vector< std::vector< Biped< Symmetry, MatrixType > > > > & | Wsq_at (const std::size_t loc) const |
|
const std::vector< qType > & | opBasisSq (const std::size_t loc) const |
|
const std::vector< std::vector< qType > > & | opBasisSq () const |
|
const bool | check_SQUARE () const |
|
double | sparsity (bool USE_SQUARE, bool PER_MATRIX) const |
|
void | setQtarget (const qType &q) |
|
| SpinlessFermionsObservables () |
|
| SpinlessFermionsObservables (const size_t &L) |
|
| SpinlessFermionsObservables (const size_t &L, const vector< Param > ¶ms, const std::map< string, std::any > &defaults) |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | c (size_t locx, size_t locy=0) const |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | cdag (size_t locx, size_t locy=0) const |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | n (size_t locx, size_t locy=0) const |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | nph (size_t locx, size_t locy=0) const |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | nn (size_t locx1, size_t locx2, size_t locy1=0, size_t locy2=0) const |
|
| ParamReturner () |
|
| ParamReturner (const std::map< string, std::any > &defaults_input) |
|
DMRG::CONTROL::DYN | get_DmrgDynParam (const vector< Param > ¶ms={}) const |
|
DMRG::CONTROL::GLOB | get_DmrgGlobParam (const vector< Param > ¶ms={}) const |
|
VUMPS::CONTROL::DYN | get_VumpsDynParam (const vector< Param > ¶ms={}) const |
|
VUMPS::CONTROL::GLOB | get_VumpsGlobParam (const vector< Param > ¶ms={}) const |
|
|
Symmetry::qType | qVac |
|
bool | GOT_TWO_SITE_DATA |
|
std::vector< std::vector< TwoSiteData< Sym::U1< Sym::ChargeU1 >, double > > > | TSD |
|
bool | UNITARY |
|
bool | HERMITIAN |
|
bool | HAMILTONIAN |
|
bool | GOT_SEMIOPEN_LEFT |
|
bool | GOT_SEMIOPEN_RIGHT |
|
OperatorType | LocalOp |
|
int | LocalSite |
|
std::vector< std::vector< qType > > | qOp |
|
std::vector< Qbasis< Symmetry > > | qAux |
|
std::vector< std::vector< qType > > | qPhys |
|
std::vector< std::vector< std::vector< std::vector< Biped< Symmetry, MatrixType > > > > > | W |
|
std::vector< std::vector< std::vector< qType > > > | qOp_powers |
|
std::vector< std::vector< Qbasis< Symmetry > > > | qAux_powers |
|
std::vector< std::vector< std::vector< std::vector< std::vector< Biped< Symmetry, MatrixType > > > > > > | W_powers |
|
std::size_t | N_sites |
|
std::size_t | N_phys = 0ul |
|
reversedData | reversed |
|
std::string | label = "MPO" |
|
void | increment_auxdim (const std::size_t loc, const qType &q) |
|
void | increment_first_auxdim_OBC (const qType &qIn) |
|
void | increment_last_auxdim_OBC (const qType &qOut) |
|
void | decrement_auxdim (const std::size_t loc, const qType &q) |
|
void | decrement_first_auxdim_OBC (const qType &qIn) |
|
void | decrement_last_auxdim_OBC (const qType &qOut) |
|
void | add (const std::size_t loc, const OperatorType &op, const qType &qIn, const qType &qOut, const std::size_t IndexIn, const std::size_t IndexOut) |
|
std::size_t | get_auxdim (const std::size_t loc, const qType &q) const |
|
void | assert_hilbert (const std::size_t loc, const std::size_t dim) |
|
bool | eliminate_linearlyDependent_rows (const std::size_t loc, const qType &qIn, const double tolerance) |
|
bool | eliminate_linearlyDependent_cols (const std::size_t loc, const qType &qOut, const double tolerance) |
|
std::map< qType, std::vector< std::map< qType, OperatorType > > > | delete_row (const std::size_t loc, const qType &qIn, const std::size_t row_to_delete, const bool SAMESITE) |
|
std::map< qType, std::vector< std::map< qType, OperatorType > > > | delete_col (const std::size_t loc, const qType &qOut, const std::size_t col_to_delete, const bool SAMESITE) |
|
void | add_to_row (const std::size_t loc, const qType &qIn, const std::size_t row, const std::map< qType, std::vector< std::map< qType, OperatorType > > > &ops, const Scalar factor) |
|
void | add_to_col (const std::size_t loc, const qType &qOut, const std::size_t col, const std::map< qType, std::vector< std::map< qType, OperatorType > > > &ops, const Scalar factor) |
|
void | calc_qOp () |
|
void | calc_qAux () |
|
void | calc_W () |
|
void | got_update () |
|
void | initialize () |
|
void | compress (const double tolerance) |
|
void | renormalize () |
|
void | clear_opLabels () |
|
std::tuple< std::size_t, std::size_t, std::size_t, std::size_t > | auxdim_infos () const |
|
std::vector< qType > | calc_qList (const std::vector< OperatorType > &opList) |
|
void | fill_O_from_W () |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | make_local (size_t locx, size_t locy, const OperatorType &Op, double factor, bool FERMIONIC=false, bool HERMITIAN=false) const |
|
Mpo< Sym::U1< Sym::ChargeU1 >, double > | make_corr (string name1, string name2, size_t locx1, size_t locx2, size_t locy1, size_t locy2, const OperatorType &Op1, const OperatorType &Op2, bool BOTH_HERMITIAN=false) const |
|
static void | prod_swap_IBC (std::vector< std::map< std::array< qType, 2 >, std::vector< std::vector< std::map< qType, OperatorType > > > > > &O_out, std::vector< std::size_t > &row_qVac, std::vector< std::size_t > &col_qVac, std::vector< std::size_t > &row_qTot, std::vector< std::size_t > &col_qTot) |
|
static void | prod_delZeroCols_OBC (std::map< std::array< qType, 2 >, std::vector< std::vector< std::map< qType, OperatorType > > > > &O_last, Qbasis< Symmetry > &qAux_last, Qbasis< Symmetry > &qAux_prev, const qType &qTot, const std::size_t col_qTot) |
|
static std::string | power_to_string (std::size_t power) |
|
static std::pair< std::string, std::size_t > | detect_and_remove_power (const std::string &name_w_power) |
|
std::vector< std::map< std::array< qType, 2 >, std::vector< std::vector< std::map< qType, OperatorType > > > > > | O |
|
std::vector< std::map< qType, std::size_t > > | auxdim |
|
qType | qTot |
|
qType | qVac = Symmetry::qvacuum() |
|
std::size_t | pos_qTot |
|
std::size_t | pos_qVac |
|
BC | boundary_condition |
|
std::vector< std::vector< std::string > > | info |
|
std::vector< int > | hilbert_dimension |
|
MPO_STATUS::OPTION | status = MPO_STATUS::ALTERABLE |
|
DMRG::VERBOSITY::OPTION | VERB = DMRG::VERBOSITY::OPTION::SILENT |
|
std::string | before_verb_set |
|
std::size_t | current_power = 1 |
|
bool | GOT_QOP = false |
|
bool | GOT_QAUX = false |
|
bool | GOT_W = false |
|
std::vector< bool > | GOT_QPHYS |
|
vector< SpinlessFermionBase< Sym::U1< Sym::ChargeU1 > > > | F |
|