IsingModel#
- class IsingModel(lattice)[fuente]#
Bases:
LatticeModel
The transverse-field Ising model.
This class implements the following Hamiltonian:
\[H = -\sum_{\langle i, j \rangle} J_{ij} Z_{i} Z_{j} - \sum_{i} g_{i} X_{i},\]where \(i,j\) refer to lattice nodes. The \(\sum_{\langle i, j \rangle}\) is performed over adjacent lattice nodes. This model assumes spin-\(\frac{1}{2}\) particles. Thus, \(X_i\) and \(Z_i\) represent the respective Pauli matrices. \(J_{ij}\) are constants with dimensions of energy and \(g_{i}\) are coupling parameters that determine the relative strength between the external transverse field and the nearest neighbor interactions.
This model is instantiated using a
Lattice
. For example, using aLineLattice
:line_lattice = LineLattice(num_nodes=10, boundary_condition=BoundaryCondition.OPEN) ising_model = IsingModel( line_lattice.uniform_parameters( uniform_interaction=-1.0, uniform_onsite_potential=0.0, ), )
- Parámetros:
lattice (Lattice) – Lattice on which the model is defined.
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.