2.1.1.1.4. moha.system.operator package

2.1.1.1.4.1. Submodules

2.1.1.1.4.2. moha.system.operator.base module

class moha.system.operator.base.BaseOperator(integral, name)[source]

Bases: numpy.ndarray

Base operator class.

nameOperatorNames

Name of the operator.

__new__(cls, integral, name)

Generate new operator.

__init__(self, integral, name)

Initialize the operator.

assign_name(self,name)

Assign name to the operator.

assign_name(name)[source]

Assign name to the operator.

nameOperatorNames

Name of the operator.

TypeError

If name of operator is not OperatorNames.

classmethod ones(shape, dtype=<class 'float'>)[source]

generate instance with ones elements ndarray.

shapetuple/list

Shape of the ndarray.

dtypefloat

Data type of the ndarray.

TypeError

If shape is not tuple or list.

classmethod random(shape, dtype=<class 'float'>)[source]

generate instance with random elements ndarray.

shapetuple/list

Shape of the ndarray.

dtypefloat/complex

Data type of the ndarray.

TypeError

If shape is not tuple or list.

classmethod zeros(shape, dtype=<class 'float'>)[source]

generate instance with zeros elements ndarray.

shapetuple/list

Shape of the ndarray.

dtypefloat

Data type of the ndarray.

TypeError

If shape is not tuple or list.

class moha.system.operator.base.OperatorNames(value)[source]

Bases: enum.Enum

Operator Names.

Ienum.auto

Identity operator.

Senum.auto

Overlap operator.

Tenum.auto

Kinetic energy operator.

Venum.auto

Nuclear attraction operator.

Hcoreenum.auto

Core Hamiltonian operator.

MMenum.auto

Multipole moment operator.

Diffenum.auto

Differential operator.

LMenum.auto

Linear momentum operator.

AMenum.auto

Angular momentum operator.

Erienum.auto

Electron repulsion operator.

CIenum.auto

Configuration interaction operator.

__repr__(cls)

Self defined output.

AM = 10
CI = 12
Diff = 8
Enuc = 2
Eri = 11
Hcore = 6
I = 1
LM = 9
MM = 7
S = 3
T = 4
V = 5

2.1.1.1.4.3. moha.system.operator.one_electron module

class moha.system.operator.one_electron.AngularMomentumOperator(integral, name)[source]

Bases: moha.system.operator.one_electron.OneElectronOperator

Angular momentum operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtypefloat64, complex128

Data type of the integrals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,nelectron=1,integra=None)

Initialize the Operator.

build(cls,basis_set,*args)

Build the operator instance.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix)

Rotate orbitals with a transformation matrix.

classmethod build(basis_set)[source]

Build the nuclear repulsion operator.

basis_setBasisSet

Hatree Fock basis set instance.

TypeError

If basis_set parameter is not a BasisSet instance.

class moha.system.operator.one_electron.DifferentialOperator(integral, name)[source]

Bases: moha.system.operator.one_electron.OneElectronOperator

Differential operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtypefloat64, complex128

Data type of the integrals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,nelectron=1,integra=None)

Initialize the Operator.

build(cls,basis_set,*args)

Build the operator instance.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix)

Rotate orbitals with a transformation matrix.

classmethod build(basis_set, *args)[source]

Build the nuclear repulsion operator.

basis_setBasisSet

Hatree Fock basis set instance.

*args

Arguments for multipole moment.

TypeError

If basis_set parameter is not a BasisSet instance.

class moha.system.operator.one_electron.KineticOperator(integral, name)[source]

Bases: moha.system.operator.one_electron.OneElectronOperator

Kinetic operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtypefloat64, complex128

Data type of the integrals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,nelectron=1,integra=None)

Initialize the Operator.

build(cls,molecule,basis_set)

Build the operator instance.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix)

Rotate orbitals with a transformation matrix.

classmethod build(basis_set)[source]

Build the nuclear repulsion operator.

basis_setBasisSet

Hatree Fock basis set instance.

TypeError

If basis_set parameter is not a BasisSet instance.

class moha.system.operator.one_electron.LinearMomentumOperator(integral, name)[source]

Bases: moha.system.operator.one_electron.OneElectronOperator

Linear momentum operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtypefloat64, complex128

Data type of the integrals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,nelectron=1,integra=None)

Initialize the Operator.

build(cls,basis_set,*args)

Build the operator instance.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix)

Rotate orbitals with a transformation matrix.

classmethod build(basis_set)[source]

Build the nuclear repulsion operator.

basis_setBasisSet

Hatree Fock basis set instance.

TypeError

If basis_set parameter is not a BasisSet instance.

class moha.system.operator.one_electron.MultipoleMomentOperator(integral, name)[source]

Bases: moha.system.operator.one_electron.OneElectronOperator

Multipole moment operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtypefloat64, complex128

Data type of the integrals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,nelectron=1,integra=None)

Initialize the Operator.

build(cls,basis_set,*args)

Build the operator instance.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix)

Rotate orbitals with a transformation matrix.

classmethod build(basis_set, *args)[source]

Build the nuclear repulsion operator.

basis_setBasisSet

Hatree Fock basis set instance.

*args

Arguments for multipole moment

TypeError

If basis_set parameter is not a BasisSet instance.

class moha.system.operator.one_electron.NuclearAttractionOperator(integral, name)[source]

Bases: moha.system.operator.one_electron.OneElectronOperator

Nuclear attraction operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtypefloat64, complex128

Data type of the integrals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,nelectron=1,integra=None)

Initialize the Operator.

build(cls,molecule,basis_set)

Build the operator instance.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix)

Rotate orbitals with a transformation matrix.

classmethod build(molecule, basis_set)[source]

Build the nuclear repulsion operator.

moleucleMolecule

Molecule instance.

basis_setBasisSet

Hatree Fock basis set instance.

TypeError

If molecule parameter is not a Molecule instance. If basis_set parameter is not a BasisSet instance.

class moha.system.operator.one_electron.OneElectronOperator(integral, name)[source]

Bases: moha.system.operator.base.BaseOperator

One electron operator class.

integralnp.ndarray

Integral of the operator.

nameOperatorNames

Name of the operator.

npatialint

Number of spatial orbitals.

npsinint

Number of spin orbitals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self, integral, name)

Initialize the operator

assign_name(self,name)

Assign name to the operator.

basis_transformation(self,matrix):

Rotate orbitals with a transformation matrix.

basis_transformation(matrix)[source]

Rotate orbitals with a transformation matrix.

\[\widetilde{h}_{ab} &= \sum_{ij} C^\dagger_{ai} h_{ij} C_{jb}\ \widetilde{g}_{abcd} &= \sum_{ijkl} C^\dagger_{ai} C^\dagger_{bj} g_{ijkl} C_{kc} C_{ld}\]
matrixnp.ndarray(K, L)

Transformation matrix.

TypeError

If matrix is not a numpy array.

ValueError

If shape of matrix does not match up with the shape of the integrals.

classmethod ones(shape, dtype=<class 'float'>)[source]

generate instance with ones elements ndarray.

shapetuple/list

Shape of the ndarray.

ValueError

If shape is not two dimension.

classmethod random(shape, dtype=<class 'float'>)[source]

generate instance with random elements ndarray.

shapetuple/list

Shape of the ndarray.

ValueError

If shape is not two dimension.

classmethod zeros(shape, dtype=<class 'float'>)[source]

generate instance with zeros elements ndarray.

shapetuple/list

Shape of the ndarray.

ValueError

If shape is not two dimension.

property nspatial

Number of spatial orbitals.

nspatialint

Number of spatial orbitals.

property nspin

Number of spin orbitals.

nspinint

Number of spin orbitals.

property spin_orbital_basis_integral

Return integral in spin orbitals basis.

integralnp.ndarray

Integral of the operator in spin orbital basis.

class moha.system.operator.one_electron.OverlapOperator(integral, name)[source]

Bases: moha.system.operator.one_electron.OneElectronOperator

Overlap operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtypefloat64, complex128

Data type of the integrals.

spin_orbital_basis_integralnp.ndarray

Return integral matrix in spin orbitals basis.

__init__(self, integral)

Initialize the operator

assign_name(self,name)

Assign name to the operator.

basis_transformation(self,matrix):

Rotate orbitals with a transformation matrix.

classmethod build(basis_set)[source]

Build the nuclear repulsion operator.

basis_setBasisSet

Hatree Fock basis set instance.

TypeError

If basis_set parameter is not a BasisSet instance.

2.1.1.1.4.4. moha.system.operator.two_electron module

class moha.system.operator.two_electron.ElectronRepulsionOperator(integral, name)[source]

Bases: moha.system.operator.two_electron.TwoElectronOperator

Electron repulsion operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

spin_orbital_basis_integral(self)

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,integral)

Initialize the Operator.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix)

Rotate orbitals with a transformation matrix.

classmethod build(basis_set)[source]

Build the nuclear repulsion operator.

basis_setBasisSet

Hatree Fock basis set instance.

TypeError

If basis_set parameter is not a BasisSet instance.

property coulomb

Coulomb integral.

integralnp.ndarray

Coulomb integral.

property double_bar

Antisymmetrized two electron integral.

integralnp.ndarray

Antisymmetrized two electron integral.

property exchange

Exchange integral.

integralnp.ndarray

Exchange integral.

class moha.system.operator.two_electron.TwoElectronOperator(integral, name)[source]

Bases: moha.system.operator.base.BaseOperator

Two electron operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralnp.ndarray

Integral of the operator.

npsinint

Number of spin orbitals.

dtype

Data type of the integrals.

spin_orbital_basis_integral

Return integral matrix in spin orbitals basis.

__init__(self,name,nspatial,integral)

Initialize the Operator.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral value for the operator.

basis_transformation(self,matrix):

Rotate orbitals with a transformation matrix.

basis_transformation(matrix)[source]

Rotate orbitals with a transformation matrix.

\[\widetilde{h}_{ab} &= \sum_{ij} C^\dagger_{ai} h_{ij} C_{jb}\ \widetilde{g}_{abcd} &= \sum_{ijkl} C^\dagger_{ai} C^\dagger_{bj} g_{ijkl} C_{kc} C_{ld}\]
matrixnp.ndarray(K, L)

Transformation matrix.

TypeError

If matrix is not a numpy array.

ValueError

If shape of matrix does not match up with the shape of the integrals.

classmethod ones(shape, dtype=<class 'float'>)[source]

generate instance with ones elements ndarray.

shapetuple/list

Shape of the ndarray.

ValueError

If shape is not two dimension.

classmethod random(shape, dtype=<class 'float'>)[source]

generate instance with random elements ndarray.

shapetuple/list

Shape of the ndarray.

ValueError

If shape is not two dimension.

classmethod zeros(shape, dtype=<class 'float'>)[source]

generate instance with zeros elements ndarray.

shapetuple/list

Shape of the ndarray.

ValueError

If shape is not two dimension.

property nspatial

Number of spatial orbitals.

nspatialint

Number of spatial orbitals.

property nspin

Number of spin orbitals.

nspinint

Number of spin orbitals.

property spin_orbital_basis_integral

Return integral in spin orbitals basis.

integralnp.ndarray

Integral of the operator in spin orbital basis.

2.1.1.1.4.5. moha.system.operator.zero_electron module

class moha.system.operator.zero_electron.NuclearRepulsionOperator(integral, name)[source]

Bases: moha.system.operator.base.BaseOperator

Nuclear repulsion operator class.

namestr

Name of the operator.

nspatialint

Number of the spatial orbitals.

nelectronint

Number of electrons.

integralint,float

Integral of the operator.

npsinint

Number of spin orbitals.

dtypeint,float

Data type of the integrals.

__init__(self,name,nspatial,nelectron,integral)

Initialize the Operator.

build(cls,molecule,basis_set)

Build the operator instance.

assign_name(self,name)

Assign name to the operator.

assign_nspatial(self,nspatial)

Assign number of spatial orbitals for the operator.

assign_nelectron(self,nelectron)

Assign number of elctrons involved in the integral.

assign_integral(self,integral)

Assign integral for the operator.

classmethod build(molecule)[source]

Build the nuclear repulsion operator.

moleucleMolecule

Molecule instance.

TypeError

If molecule parameter is not a Molecule instance.

2.1.1.1.4.6. Module contents