BasisSet contains basis set data.
More...
#include <avogadro/core/basisset.h>
|
| enum | ElectronType {
Paired
,
Alpha
,
Beta
} |
| | The ElectronType enum describes the type of electrons being set or retrieved. If Paired, then Alpha and Beta cannot be set, if Alpha or Beta then both must be set.
|
|
| std::array< unsigned int, 2 > | m_electrons = {} |
| Molecule * | m_molecule = nullptr |
| std::string | m_name |
| std::string | m_theoryName |
| std::vector< std::string > | m_symmetryLabels [2] |
|
std::vector< double > | m_moEnergy [2] |
| | This block stores energies for the molecular orbitals (same convention as the molecular orbital coefficients).
|
|
std::vector< unsigned char > | m_moOccupancy [2] |
| | The occupancy of the molecular orbitals.
|
- Author
- Marcus D. Hanwell
This is the base class for basis sets, and has two derived classes - GaussianSet and SlaterSet. It must be populated with data, with other classes capable of performing calculations on the data or writing it out.
◆ BasisSet()
◆ ~BasisSet()
◆ clone()
◆ setElectronCount()
| void setElectronCount |
( |
unsigned int | n, |
|
|
ElectronType | type = Paired ) |
|
virtual |
Set the number of electrons in the BasisSet.
- Parameters
-
| n | The number of electrons in the BasisSet. |
| type | The type of the electrons (Alpha, Beta, or Paired). |
◆ electronCount()
| unsigned int electronCount |
( |
ElectronType | type = Paired | ) |
const |
- Parameters
-
| type | The type of the electrons (Alpha, Beta, or Paired). |
- Returns
- The number of electrons in the molecule.
◆ setMolecule()
| void setMolecule |
( |
Molecule * | molecule_ | ) |
|
Set the molecule for the basis set.
◆ molecule()
Get the molecule this basis set belongs to.
◆ setName()
| void setName |
( |
const std::string & | name | ) |
|
Set the name of the basis set.
◆ name()
| std::string name |
( |
| ) |
const |
Get the name of the basis set.
◆ setTheoryName()
| void setTheoryName |
( |
const std::string & | name | ) |
|
Set the name of the basis set.
◆ theoryName()
| std::string theoryName |
( |
| ) |
const |
Get the name of the basis set.
◆ molecularOrbitalCount()
| virtual unsigned int molecularOrbitalCount |
( |
ElectronType | type = Paired | ) |
const |
|
pure virtual |
◆ homo()
- Returns
- The molecular orbital number corresponding to the HOMO orbital.
◆ lumo()
- Returns
- The molecular orbital number corresponding to the LUMO orbital.
◆ isValid()
- Returns
- True of the basis set is valid, false otherwise. Default is true, if false then the basis set is likely unusable.
Implemented in GaussianSet, and SlaterSet.
◆ swapAtomIndices()
| virtual void swapAtomIndices |
( |
Index | , |
|
|
Index | ) |
|
virtual |
Exchange the atom indices a and b wherever this basis set records which atom a basis function is centred on.
Called when a molecule renumbers its atoms. Only the recorded indices change: the basis functions keep their order, so molecular orbital coefficients stay valid. The default does nothing, for basis sets that do not refer to atoms by index.
Reimplemented in GaussianSet, and SlaterSet.
◆ symmetryLabels()
| std::vector< std::string > symmetryLabels |
( |
ElectronType | type = Paired | ) |
const |
- Returns
- the orbital symmetry labels (if they exist) for the MOs
◆ setSymmetryLabels()
| void setSymmetryLabels |
( |
const std::vector< std::string > & | labels, |
|
|
ElectronType | type = Paired ) |
Set the orbital symmetry labels (a1, t2g, etc.) for the molecular orbitals
◆ setMolecularOrbitalEnergy()
| void setMolecularOrbitalEnergy |
( |
const std::vector< double > & | energies, |
|
|
ElectronType | type = Paired ) |
- Parameters
-
| energies | The vector containing energies for the MOs of type |
| type | The type of the electrons being set. |
◆ setMolecularOrbitalOccupancy()
| void setMolecularOrbitalOccupancy |
( |
const std::vector< unsigned char > & | occ, |
|
|
ElectronType | type = Paired ) |
- Parameters
-
| occ | The occupancies for the MOs of type. |
| type | The type of the electrons being set. |
◆ m_electrons
| std::array<unsigned int, 2> m_electrons = {} |
|
protected |
Total number of electrons, 0 is alpha electrons and 1 is beta electrons. For closed shell calculations alpha is doubly occupied and there are no beta electrons.
◆ m_molecule
The Molecule holds the atoms (and possibly bonds) read in from the output file. Most basis sets have orbitals around these atoms, but this is not necessarily the case.
◆ m_name
The name of the basis set, this is usually a string identifier referencing a standard basis set when only one is used.
◆ m_theoryName
The name of the theory used for the calculation.
◆ m_symmetryLabels
| std::vector<std::string> m_symmetryLabels[2] |
|
protected |
The orbital symmetry labels (if they exist) for the MOs
The documentation for this class was generated from the following file: