Function QCM::hopping_operator¶
Defined in File QCM.cpp
Function Documentation¶
-
void QCM::hopping_operator(const string &name, vector3D<int64_t> &link, double amplitude, int orb1, int orb2, int tau, int sigma)¶
Defines a hopping operator on the lattice.
Defines a hopping (one-body) operator.
The operator, given two sites labelled 1 and 2, is defined as: $c^\dagger_{is}\tau^a_{ij}\sigma^b_{ss’}c_{js’}$
- Parameters:
name – name given to the operator
link – bond vector on which the operator is defined
amplitude – default amplitude of the operator, that multiplies all matrix elements and its given value
orb1 – index of the first orbital (from 1 to nband)
orb2 – index of the second orbital (from 1 to nband)
tau – label (0,1,2,3) of the Pauli matrix defining the orbital component (a in the formula above)
sigma – label (0,1,2,3) of the Pauli matrix defining the spin component (b in the formula above)