SpinOrbital Class

Definition

Indexing scheme representing a spin-orbital.

public class SpinOrbital : IComparable<Microsoft.Quantum.Chemistry.OrbitalIntegrals.SpinOrbital>, IEquatable<Microsoft.Quantum.Chemistry.OrbitalIntegrals.SpinOrbital>
type SpinOrbital = class
    interface IEquatable<SpinOrbital>
    interface IComparable<SpinOrbital>
Public Class SpinOrbital
Implements IComparable(Of SpinOrbital), IEquatable(Of SpinOrbital)
Inheritance
SpinOrbital
Implements

Constructors

SpinOrbital()

Empty spin-orbital constructor.

SpinOrbital(Int32, Spin)

Spin-orbital constructor.

SpinOrbital(ValueTuple<Int32,Int32>)

Spin-orbital constructor.

SpinOrbital(ValueTuple<Int32,Spin>)

Spin-orbital constructor.

Fields

Orbital

orbital is the orbital index. This integer must satisfy '0 <= orbital < Int32.ManValue'.

Spin

spin is the spin index. For electrons, spin=0 is spin up, and spin=1 is spin down. This integer must satisfy '0 <= orbital < Int16.MaxValue'.

Methods

CompareTo(SpinOrbital)

Default comparer for spin orbitals first compares the orbital index, then second compares the spin index.

Enumerate(Int32[], Int32)

This creates all possible spin-orbitals Hamiltonian terms given an array of an even number of orbital indices.

Equals(Object)
Equals(SpinOrbital)
GetHashCode()
ThrowIfInvalid()

Throws an exception if spin-orbital is invalid.

ToInt()

This maps the separate orbital and spin indices of a SpinOrbital to a single integer index according to 2*orbitalIndex + spinIndex.

ToInt(IndexConvention, Int32)

This maps the separate orbital and spin indices of a SpinOrbital to a single integer index.

ToString()

Override for string representation of spin-orbital data.

Operators

Equality(SpinOrbital, SpinOrbital)

Boolean equality operator definition.

Implicit(ValueTuple<Int32,Spin> to SpinOrbital)

Implicit operator for creating a spin-orbital.

Inequality(SpinOrbital, SpinOrbital)

Boolean inequality operator definition.

Applies to