FermionHamiltonian Class

Definition

public class FermionHamiltonian : Microsoft.Quantum.Chemistry.Generic.Hamiltonian<Microsoft.Quantum.Chemistry.TermType.Fermion,Microsoft.Quantum.Chemistry.Fermion.HermitianFermionTerm,Microsoft.Quantum.Chemistry.DoubleCoeff>
type FermionHamiltonian = class
    inherit Hamiltonian<TermType.Fermion, HermitianFermionTerm, DoubleCoeff>
Public Class FermionHamiltonian
Inherits Hamiltonian(Of TermType.Fermion, HermitianFermionTerm, DoubleCoeff)
Inheritance

Constructors

FermionHamiltonian()

Fields

SystemIndices

Indices to systems (e.g. fermions, qubits, or orbitals) the Hamiltonian acts on.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
Terms

Container for all terms in a Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)

Methods

Add(TTermClassification, TTermIndexing, TTermValue)

Adds a term to a Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
Add(TTermIndexing, TTermValue)

Adds a term to a Hamiltonian. This method infers the term category from the term index if possible.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
AddHamiltonian(Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)

Method for add all terms from a source Hamiltonian into this Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
AddRange(IEnumerable<ValueTuple<TTermIndexing,TTermValue>>)

Add multiple terms to a Hamiltonian. This method infers the term category from the term index if possible.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
AddRange(TTermClassification, IEnumerable<ValueTuple<TTermIndexing,TTermValue>>)

Adds multiple term to a Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
AddToSystemIndices(HermitianFermionTerm)

Method for collecting all distinct system (orbital) indices.

AddToSystemIndices(TTermIndexing)

Method that add system indices to the systemIndices hashset.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
CountTerms()

Counts the number of terms in a Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
CountUniqueSystemIndices()

Counts the number of systems (fermions) in a Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
GetTerm(TTermIndexing)

Method for retrieving a term to a Hamiltonian. This method infers the term category from the term index if possible.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
Norm(Double)

Computes the L_p norm of coefficients of all terms in a Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
Norm(IEnumerable<TTermClassification>, Double)

Computes the L_p norm of coefficients of categories of terms in a Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)
ToString()

String representation of Hamiltonian.

(Inherited from Hamiltonian<TTermClassification,TTermIndexing,TTermValue>)

Extension Methods

CreateHartreeFockState(FermionHamiltonian, Int32)

This approximates the Hamiltonian ground state by a greedy algorithm
that minimizes only the PP term energies. If there are no PP terms, states will be occupied in lexicographic order.

ToPauliHamiltonian(FermionHamiltonian, QubitEncoding)

Method for constructing a Pauli Hamiltonian from a fermion Hamiltonina.

Applies to