IsingModel#
- class IsingModel(lattice)[source]#
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, ), )
- প্যারামিটার:
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
- রিটার্নস:
The interaction matrix.
- রিটার্ন টাইপ:
- interpret(result)#
Interprets an
EigenstateResult
in this hamiltonians context.- প্যারামিটার:
result (EigenstateResult) -- the result to add meaning to.