sc::MolecularHessian(3) MolecularHessian is an abstract class that computes a molecule's second derivatives of the energy with respect to changes in the nuclear coordinates.

SYNOPSIS


#include <hess.h>

Inherits sc::SavableState.

Inherited by sc::DiagMolecularHessian, sc::FinDispMolecularHessian, sc::GuessMolecularHessian, and sc::ReadMolecularHessian.

Public Member Functions


MolecularHessian (const Ref< KeyVal > &)
The MolecularHessian KeyVal constructor is used to generate a MolecularHessian derivative object from the input.
MolecularHessian (StateIn &)

void save_data_state (StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.
RefSCDimension d3natom ()

Ref< SCMatrixKit > matrixkit () const

virtual RefSymmSCMatrix cartesian_hessian ()=0
Return the cartesian hessian.
virtual void set_energy (const Ref< MolecularEnergy > &energy)
Some MolecularHessian specializations require a molecular energy object.
virtual MolecularEnergy * energy () const
This returns a MolecularEnergy object, if used by this specialization.

Static Public Member Functions


static RefSCMatrix cartesian_to_symmetry (const Ref< Molecule > &m, Ref< PointGroup > pg=0, Ref< SCMatrixKit > kit=0)
Find transformation matrix from cartesian to symmetry coordinates.
static void write_cartesian_hessian (const char *filename, const Ref< Molecule > &m, const RefSymmSCMatrix &hess)
Write the hessian in a simple text format.
static void read_cartesian_hessian (const char *filename, const Ref< Molecule > &m, const RefSymmSCMatrix &hess)
Read the hessian from a simple text format.

Protected Attributes


Ref< Molecule > mol_

RefSCDimension d3natom_

Ref< SCMatrixKit > matrixkit_

Detailed Description

MolecularHessian is an abstract class that computes a molecule's second derivatives of the energy with respect to changes in the nuclear coordinates.

Constructor & Destructor Documentation

sc::MolecularHessian::MolecularHessian (const Ref< KeyVal > &)

The MolecularHessian KeyVal constructor is used to generate a MolecularHessian derivative object from the input. It reads the keywords below.

KeywordTypeDefaultDescription moleculeMoleculenoneThe Molecule object.

Member Function Documentation

static RefSCMatrix sc::MolecularHessian::cartesian_to_symmetry (const Ref< Molecule > & m, Ref< PointGroup > pg = 0, Ref< SCMatrixKit > kit = 0) [static]

Find transformation matrix from cartesian to symmetry coordinates.

virtual MolecularEnergy* sc::MolecularHessian::energy () const [virtual]

This returns a MolecularEnergy object, if used by this specialization. Otherwise null is returned.

Reimplemented in sc::FinDispMolecularHessian.

void sc::MolecularHessian::save_data_state (StateOut &) [virtual]

Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. This must be implemented by the derived class if the class has data.

Reimplemented from sc::SavableState.

Reimplemented in sc::FinDispMolecularHessian, sc::ReadMolecularHessian, sc::GuessMolecularHessian, and sc::DiagMolecularHessian.

virtual void sc::MolecularHessian::set_energy (const Ref< MolecularEnergy > & energy) [virtual]

Some MolecularHessian specializations require a molecular energy object. The default implementations of this ignores the argument.

Reimplemented in sc::FinDispMolecularHessian.

Author

Generated automatically by Doxygen for MPQC from the source code.