File RawParameterProcessor.h

Copyright

This code is licensed under the 3-clause BSD license.

Copyright ETH Zurich, Laboratory for Physical Chemistry, Reiher Group.

See LICENSE.txt for details.

namespace Scine
namespace Sparrow
namespace nddo
class RawParameterProcessor
#include <RawParameterProcessor.h>

This class implements functions for the conversion between raw parameters published for PM6 and parameters useful at runtime.

Public Functions

RawParameterProcessor(const RawParametersContainer &rawParameters, BasisFunctions basisFunctions = BasisFunctions::spd)
std::unique_ptr<PM6DiatomicParameters> runtimeDiatomicParameters(Utils::ElementType e1, Utils::ElementType e2)
std::pair<std::unique_ptr<AtomicParameters>, std::unique_ptr<OneCenterTwoElectronIntegrals>> processAtomicParameters(Utils::ElementType e)

Private Functions

std::unique_ptr<OneCenterTwoElectronIntegrals> get1c2eIntegrals(Utils::ElementType e, const RawAtomicParameters &p) const
void computeSlaterCondonParameters(AtomicParameters &runtimeAtomicPar, const RawAtomicParameters &p)
void setKlopman(AtomicParameters &par, const RawAtomicParameters &p) const
void setChargeSeparations(Utils::ElementType e, AtomicParameters &par, const RawAtomicParameters &p) const
void setGTOExpansion(Utils::ElementType e, AtomicParameters &par, const RawAtomicParameters &p) const
void setDiatomicExponent(PM6DiatomicParameters &par, Utils::ElementType e1, Utils::ElementType e2, const RawDiatomicParameters &p)

Private Members

const RawParametersContainer &rawParameters_
SlaterCondonParameters scParameters_
BasisFunctions basisFunctions_