File RawParametersContainer.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 RawParametersContainer
#include <RawParametersContainer.h>

Class containing the PM6 parameters in a raw form.

Public Functions

RawParametersContainer(std::string path = {})
~RawParametersContainer()
RawParametersContainer(RawParametersContainer &&rhs)
RawParametersContainer &operator=(RawParametersContainer &&rhs)
bool isAvailable(Utils::ElementType e) const

Verify whether atomic parameters for e are available.

bool isAvailable(Utils::ElementType e1, Utils::ElementType e2) const

Verify whether diatomic parameters for the pair e1 - e2 are available.

RawAtomicParameters &getAtomicParameters(Utils::ElementType e)

Returns reference to already existing raw atomic parameters.

const RawAtomicParameters &getAtomicParameters(Utils::ElementType e) const

Returns const reference to already existing raw atomic parameters.

RawDiatomicParameters &getDiatomicParameters(Utils::ElementType e1, Utils::ElementType e2)

Returns reference to already existing raw diatomic parameters.

const RawDiatomicParameters &getDiatomicParameters(Utils::ElementType e1, Utils::ElementType e2) const

Returns const reference to already existing raw diatomic parameters.

void setAtomicParameters(Utils::ElementType e, const RawAtomicParameters &par)

Set atomic parameters for element type e.

void setDiatomicParameters(Utils::ElementType e1, Utils::ElementType e2, const RawDiatomicParameters &par)

Set diatomic parameters for element type pair e1 - e2.

void writeParameterXMLFile(std::string fileName)

Writes the current parameters into an XML file.

Parameters
  • fileName: The name and path to the file to be written.

Private Functions

unsigned int index(Utils::ElementType e) const
unsigned int firstIndex(Utils::ElementType e1, Utils::ElementType e2) const
unsigned int secondIndex(Utils::ElementType e1, Utils::ElementType e2) const

Private Members

std::string path_
std::map<std::string, RawAtomicParameters> atomics_
std::map<std::string, RawDiatomicParameters> diatomics_