FermiHubbardModel#
- class FermiHubbardModel(lattice, onsite_interaction)[fuente]#
Bases:
LatticeModel
The Fermi-Hubbard model.
This class implements the following Hamiltonian:
\[H = \sum_{i, j}\sum_{\sigma = \uparrow, \downarrow} t_{i, j} c_{i, \sigma}^\dagger c_{j, \sigma} + U \sum_{i} n_{i, \uparrow} n_{i, \downarrow},\]where \(c_{i, \sigma}^\dagger\) and \(c_{i, \sigma}\) are creation and annihilation operators of a fermion at the site \(i\) with spin \(\sigma\). The operator \(n_{i, \sigma}\) is the number operator, which is defined by \(n_{i, \sigma} = c_{i, \sigma}^\dagger c_{i, \sigma}\). The matrix \(t_{i, j}\) is a Hermitian matrix called the interaction matrix. The parameter \(U\) represents the strength of the on-site interaction.
This model is instantiated using a
Lattice
. For example, using aLineLattice
:line_lattice = LineLattice(num_nodes=10, boundary_condition=BoundaryCondition.OPEN) fermi_hubbard_model = FermiHubbardModel( line_lattice.uniform_parameters( uniform_interaction=-1.0, uniform_onsite_potential=0.0, ), onsite_interaction=5.0, )
- Parámetros:
Attributes
- lattice#
Return the input lattice.
Note, that this returns the internal lattice object without copying it. Thus, changing the returned lattice object, will affect the internal lattice stored in this Hamiltonian.
- register_length#
Methods
- interaction_matrix()#
Return the interaction matrix
- Devuelve:
The interaction matrix.
- Tipo del valor devuelto:
- interpret(result)#
Interprets an
EigenstateResult
in this hamiltonians context.- Parámetros:
result (EigenstateResult) – the result to add meaning to.