Struct interaction_operator¶
Defined in File interaction_operator.hpp
Inheritance Relationships¶
Base Type¶
public Hermitian_operator(Struct Hermitian_operator)
Struct Documentation¶
-
struct interaction_operator : public Hermitian_operator¶
Density-density interaction operator.
Public Functions
Constructor from name and matrix elements.
- Parameters:
_name – name of the operator
_the_model – model
_elements – nonzero one-body matrix elements
-
void check_spin_symmetry()¶
determines whether the operator is symmetric under the exchange of up and down spins
-
virtual void set_target(vector<bool> &in_bath)¶
set the target of an operator 1 : cluster 2 : bath only 3 : hybridization
- Parameters:
in_bath – vector of bool defining the status of each site
-
virtual shared_ptr<HS_Hermitian_operator> build_HS_operator(sector sec, bool complex_Hilbert_space)¶
returns a pointer to, and constructs the associated HS operator in the sector with basis B.
-
inline virtual void set_hopping_matrix(double value, matrix<double> &tc, bool spin_down, int sys_mixing)¶
-
inline virtual void set_hopping_matrix(double value, matrix<Complex> &tc, bool spin_down, int sys_mixing)¶
-
void diag(vector<double> &d, double z)¶
-
virtual void print(ostream &fout)¶
prints definition to a file
- Parameters:
fout – output stream
-
virtual vector<matrix_element<Complex>> matrix_elements()¶
returns a list of complexified matrix elements
-
inline virtual string type()¶
Public Members
-
vector<matrix_element<double>> elements¶
matrix elements
-
map<index_pair, double> element_map¶
temporary map form of elements, for checks