Spin-half fermion Model#
-
class spinhalf
Represents a single orbital with spin-up and spin-down operators.
This model can be used to construct the Single Impurity Anderson Model (SIAM). It includes methods to calculate eigenvalues, quantum numbers, and operators.
Public Functions
-
inline spinhalf(double teps, double tUint, double tmag = 0)
Constructs the
spinhalf
model.- Parameters:
teps – Onsite energy of the SIAM.
tUint – Coulomb interaction energy of the SIAM.
tmag – Magnetic field of the SIAM (default is 0).
-
inline std::vector<std::vector<int>> get_basis() const
Returns the quantum numbers of the basis states.
- Returns:
A vector of quantum numbers.
-
inline std::vector<std::vector<double>> get_eigenvaluesQ() const
Returns the eigenvalues of the Hamiltonian.
- Returns:
A vector of eigenvalues for each quantum number block.
-
inline std::vector<double> get_chi_Q() const
Returns the fermion sign for each basis state.
- Returns:
A vector of fermion signs.
-
inline auto getDoubleOcc() const
Returns the double occupancy operator.
This operator is useful for static or dynamic calculations.
- Returns:
A vector of
qOperator
objects representing double occupancy.
Public Members
-
std::vector<qOperator> f_dag_operator
\( f^\dagger\) operator
-
std::vector<std::vector<double>> eigenvalues_Q
Eigenvalues of the Hamiltonian.
-
std::vector<double> chi_Q
Fermion sign of the each basis states. \( (-1)^ {n_{particle}}\).
-
std::vector<std::vector<int>> n_Q
Quantum numbers of the basis states.
-
inline spinhalf(double teps, double tUint, double tmag = 0)