Struct ECPBasis

Struct Documentation

struct ECPBasis

A lightweight container for a basis set of ECP objects.

Unnamed Group

ECP &getECP(const int i)
Parameters

i – - index of ECP required

Returns

a reference to the ith ECP in basis

const ECP &getECP(const int i) const

Public Functions

ECPBasis()

Constructs an empty ECPBasis (N = maxL = 0)

void addECP(const ECP &U, const int atom)

Adds an ECP to basis.

Parameters
  • U – - the ECP to be added

  • atom – - the index of that atom on which U is located

int getECPCore(const int q) const
Parameters

q – - an atomic number

Returns

the number of electrons in core of ECP for the atom with atomic number q, if defined, otherwise zero

inline int getAtom(int i) const
Parameters

i – - the index of ECP of interest

Returns

the index of the atom on which the ith ECP is located

inline int getMaxL() const
Returns

the maximum angular momentum GaussianECP in the entire ECP basis

inline int getN() const
Returns

the number of ECPs in basis

void addECP_from_file(const int q, const std::array<double, 3> &coords, const std::string &filename)

Creates and adds an ECP object to the basis by reading from the ECP library

Parameters
  • q – - the atomic number of the atom

  • coords – - the [x, y, z] coordinates (in bohr) of the ECP

  • filename – - path to the XML file containing the basis specification

Public Members

std::map<int, int> core_electrons

A map of atomic number to the number of electrons in core of ECP for that atom.