Representation
HilbertSpaceRepresentation
A HilbertSpaceRepresentation
is a representation of the Hilbert space, with the list of basis vectors in a ascending order of their binary representations, and a lookup table for them. The HilbertSpaceRepresentation
can be constructed using represent_array
which uses FrozenSortedArrayIndex
for the lookup table, or represent_dict
which uses Dict
.
QuantumHamiltonian.represent
— Methodrepresent(hs, binary_type=UInt, basis_type=SortedIndexedVector)
Make a HilbertSpaceRepresentation with all the basis vectors of the specified HilbertSpace. This function defaults to represent_array
.
QuantumHamiltonian.represent_array
— Methodrepresent_array(hs, binary_type=UInt)
Make a HilbertSpaceRepresentation with all the basis vectors of the specified HilbertSpace using FrozenSortedArrayIndex
.
QuantumHamiltonian.represent_dict
— Methodrepresent_dict(hs, binary_type=UInt)
Make a HilbertSpaceRepresentation with the provided list of basis vectors using Dict{binary_type, Int}
.
You can also explicitly supply a list of basis vectors
QuantumHamiltonian.represent
— Methodrepresent(hs, basis_list, basis_type=SortedIndexedVector)
Make a HilbertSpaceRepresentation with the provided list of basis vectors. This defaults to represent_array
.
QuantumHamiltonian.represent_array
— Methodrepresent_array(hs, basis_list)
Make a HilbertSpaceRepresentation with the provided list of basis vectors using FrozenSortedArrayIndex
.
QuantumHamiltonian.represent_dict
— Methodrepresent_dict(hs, basis_list)
Make a HilbertSpaceRepresentation with the provided list of basis vectors using Dict
.
OperatorRepresentation
An OperatorRepresentation
is a representation of an operator in the given Hilbert space representation.
QuantumHamiltonian.represent
— Methodrepresent(hilbert_space_representation, operator)
Create an OperatorRepresentation
of the operator
in the hilbert_space_representation
.