ergo
Molecule Class Reference

Representation of a molecule as a set of nuclei and total charge. More...

#include <molecule.h>

List of all members.

Public Member Functions

 Molecule ()
void addAtom (ergo_real c, ergo_real x, ergo_real y, ergo_real z)
void getExtremeInternuclearDistances (ergo_real &minDist, ergo_real &maxDist) const
 Compute smallest and largest internuclear distances.
ergo_real getNuclearRepulsionEnergy () const
 Compute nuclear repulsion energy.
ergo_real getNuclearElectricFieldEnergy (const Vector3D &electricField) const
 Compute nuclear energy in given electric field.
int getNumberOfElectrons () const
 Compute total number of electrons.
int setFromMoleculeFile (const char *fileName, int netCharge, char **basissetFile)
 Loads molecule from a given file name, assuming given net charge.

Public Attributes

Atom atoms [MAX_NO_OF_ATOMS]
ergo_real netCharge
int noOfAtoms

Static Public Attributes

static const int MAX_NO_OF_ATOMS = 200000

Detailed Description

Representation of a molecule as a set of nuclei and total charge.

It provides I/O methods and basic manipulation routines.


Constructor & Destructor Documentation

Molecule::Molecule ( ) [inline]

Member Function Documentation

void Molecule::addAtom ( ergo_real  c,
ergo_real  x,
ergo_real  y,
ergo_real  z 
) [inline]

References noOfAtoms, MAX_NO_OF_ATOMS, atoms, Atom::charge, and Atom::coords.

Referenced by main(), and test_small().

void Molecule::getExtremeInternuclearDistances ( ergo_real minDist,
ergo_real maxDist 
) const

Compute smallest and largest internuclear distances.

References A, noOfAtoms, B, atoms, and get_distance_between_atoms().

Referenced by SCF_general::SCF_general().

ergo_real Molecule::getNuclearElectricFieldEnergy ( const Vector3D electricField) const

Compute nuclear energy in given electric field.

References noOfAtoms, do_output(), LOG_CAT_INFO, LOG_AREA_MAIN, A, atoms, Atom::charge, Atom::coords, and Vector3D::v.

Referenced by SCF_general::do_SCF_iterations().

ergo_real Molecule::getNuclearRepulsionEnergy ( ) const

Compute nuclear repulsion energy.

References A, B, noOfAtoms, do_output(), LOG_CAT_INFO, LOG_AREA_MAIN, atoms, Atom::charge, and get_distance_between_atoms().

Referenced by SCF_general::do_SCF_iterations().

int Molecule::getNumberOfElectrons ( ) const

Compute total number of electrons.

The result is sum of atomic charges plus netCharge.

References noOfAtoms, atoms, charge, and netCharge.

Referenced by dft_lin_respao(), dft_lin_resp_mt(), dft_get_xc(), dft_get_xc_mt(), dft_get_uxc_mt(), es_run(), es_getexc(), es_get_polarisability(), SCF_general::SCF_general(), calculation_shared(), and test_mol().

int Molecule::setFromMoleculeFile ( const char *  fileName,
int  netCharge,
char **  basissetFile 
)

Loads molecule from a given file name, assuming given net charge.

basissetFile will be set if the file contains basis set and basissetFile is NULL.

References readMoleculeFileInMolFormat(), and readMoleculeFileInXyzFormat().

Referenced by es_mol_read_molecule(), main(), mol_calculation(), and test_mol().


Member Data Documentation


The documentation for this class was generated from the following files: