MPQC  3.0.0-alpha
mpqc.Chemistry.Molecule

Classes

class  sc::Atom
 Atom represents an atom in a Molecule. More...
 
class  sc::AtomInfo
 The AtomInfo class provides information about atoms. More...
 
class  sc::IntCoor
 The IntCoor abstract class describes an internal coordinate of a molecule. More...
 
class  sc::SumIntCoor
 SumIntCoor is used to construct linear combinations of internal coordinates. More...
 
class  sc::SetIntCoor
 The SetIntCoor class describes a set of internal coordinates. More...
 
class  sc::IntCoorGen
 IntCoorGen generates a set of simple internal coordinates for a molecule. More...
 
class  sc::MolecularCoor
 The MolecularCoor abstract class describes the coordinate system used to describe a molecule. More...
 
class  sc::IntMolecularCoor
 The IntMolecularCoor abstract class describes a molecule's coordinates in terms of internal coordinates. More...
 
class  sc::SymmMolecularCoor
 The SymmMolecularCoor class derives from IntMolecularCoor. More...
 
class  sc::RedundMolecularCoor
 The RedundMolecularCoor class provides a redundant set of simple internal coordinates. More...
 
class  sc::CartMolecularCoor
 The CartMolecularCoor class implements Cartesian coordinates in a way suitable for use in geometry optimizations. More...
 
class  sc::MolecularHessian
 MolecularHessian is an abstract class that computes a molecule's second derivatives of the energy with respect to changes in the nuclear coordinates. More...
 
class  sc::ReadMolecularHessian
 ReadMolecularHessian is an implementation of MolecularHessian that reads the hessian from a file. More...
 
class  sc::GuessMolecularHessian
 GuessMolecularHessian is an implementation of MolecularHessian that estimates the hessian based on the internal coordinates. More...
 
class  sc::DiagMolecularHessian
 DiagMolecularHessian is an implementation of MolecularHessian that returns a hessian that is a diagonal matrix. More...
 
class  sc::MolecularGradient
 MolecularGradient is an abstract class that computes a molecule's first derivatives of the energy with respect to changes in the nuclear coordinates. More...
 
class  sc::MolecularEnergy
 The MolecularEnergy abstract class inherits from the Function class. More...
 
class  sc::SumMolecularEnergy
 linear combination of MolecularEnergy objects More...
 
class  sc::MolEnergyConvergence
 
class  sc::Displacements< Value >
 Maps displacements in terms of symmetrized coordinates to property values. More...
 
struct  sc::EGH
 energy + gradient + hessian More...
 
class  sc::FinDispMolecularHessian
 Computes the molecular hessian by finite displacements of gradients (or, if not available, energies). More...
 
class  sc::FinDispMolecularGradient
 Computes the molecular gradient by finite differences of energies. More...
 
class  sc::MolecularFormula
 The MolecularFormula class is used to calculate the molecular formula of a Molecule. More...
 
class  sc::MolecularFragment
 MolecularFragment is a Molecule that is a fragment of another Molecule object. More...
 
class  sc::Molecule
 The Molecule class contains information about molecules. More...
 
class  sc::MolecularFrequencies
 The MolecularFrequencies class is used to compute the molecular frequencies and thermodynamic information. More...
 
class  sc::MolFreqAnimate
 
class  sc::SimpleCo
 The SimpleCo abstract class describes a simple internal coordinate of a molecule. More...
 
class  sc::StreSimpleCo
 The StreSimpleCo class describes an stretch internal coordinate of a molecule. More...
 
class  sc::BendSimpleCo
 The BendSimpleCo class describes an bend internal coordinate of a molecule. More...
 
class  sc::TorsSimpleCo
 The TorsSimpleCo class describes an torsion internal coordinate of a molecule. More...
 
class  sc::ScaledTorsSimpleCo
 The ScaledTorsSimpleCo class describes an scaled torsion internal coordinate of a molecule. More...
 
class  sc::OutSimpleCo
 
class  sc::LinIPSimpleCo
 The LinIPSimpleCo class describes an in-plane component of a linear bend internal coordinate of a molecule. More...
 
class  sc::LinOPSimpleCo
 The LinOPSimpleCo class describes an out-of-plane component of a linear bend internal coordinate of a molecule. More...
 
class  sc::TaylorMolecularEnergy
 

Macros

#define SimpleCo_DECLARE(classname)
 
#define SimpleCo_IMPL_eq(classname)
 
#define SimpleCo_IMPL_StateIn(classname)
 
#define SimpleCo_IMPL_save_data_state(classname)
 
#define SimpleCo_IMPL(classname)
 

Typedefs

typedef StreSimpleCo sc::Stre
 
typedef BendSimpleCo sc::Bend
 
typedef TorsSimpleCo sc::Tors
 
typedef ScaledTorsSimpleCo sc::ScaledTors
 
typedef OutSimpleCo sc::Out
 
typedef LinIPSimpleCo sc::LinIP
 
typedef LinOPSimpleCo sc::LinOP
 

Functions

void sc::ToStateOut (const Atom &a, StateOut &so, int &count)
 writes Atom to sc::StateOut
 
void sc::FromStateIn (Atom &a, StateIn &si, int &count)
 reads Atom from sc::StateIn
 
bool sc::operator== (const Atom &a, const Atom &b)
 
bool sc::operator!= (const Atom &a, const Atom &b)
 
template<>
void sc::FromStateIn< EGH > (EGH &v, StateIn &s, int &count)
 
template<>
void sc::ToStateOut< EGH > (const EGH &v, StateOut &so, int &count)
 
bool sc::operator== (const Molecule &mol1, const Molecule &mol2)
 

Detailed Description

Provides Molecule class and related functionality.

Macro Definition Documentation

◆ SimpleCo_DECLARE

#define SimpleCo_DECLARE (   classname)
Value:
public: \
virtual classname& operator=(const classname&); \
SimpleCo& operator=(const SimpleCo&); \
double calc_force_con(Molecule&); \
double calc_intco(Molecule&, double* =0, double =1); \
classname(StateIn&); \
void save_data_state(StateOut&)

◆ SimpleCo_IMPL

#define SimpleCo_IMPL (   classname)
Value:
SimpleCo_IMPL_eq(classname) \
SimpleCo_IMPL_StateIn(classname) \
SimpleCo_IMPL_save_data_state(classname)

◆ SimpleCo_IMPL_eq

#define SimpleCo_IMPL_eq (   classname)
Value:
SimpleCo& classname::operator=(const SimpleCo& c) \
{ \
classname *cp = dynamic_cast<classname*>((SimpleCo*)&c); \
if(cp) { \
*this=*cp; \
} \
else { \
natoms_ = 0; \
atoms = 0; \
} \
\
return *this; \
}

◆ SimpleCo_IMPL_save_data_state

#define SimpleCo_IMPL_save_data_state (   classname)
Value:
void classname::save_data_state(StateOut&so) \
{ \
SimpleCo::save_data_state(so); \
}

◆ SimpleCo_IMPL_StateIn

#define SimpleCo_IMPL_StateIn (   classname)
Value:
classname::classname(StateIn&si): \
SimpleCo(si) \
{ \
}

Function Documentation

◆ operator!=()

bool sc::operator!= ( const Atom a,
const Atom b 
)
inline
Returns
false if a and b are exactly identical

◆ operator==() [1/2]

bool sc::operator== ( const Atom a,
const Atom b 
)
Returns
true if a and b are exactly identical

◆ operator==() [2/2]

bool sc::operator== ( const Molecule mol1,
const Molecule mol2 
)
Returns
true is mol1 and mol2 are exactly identical (this includes symmetry, frame, atom ordering, and fragments)

Generated at Sun Jan 26 2020 23:24:02 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.16.