sc::MolecularHessian Class Reference

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

#include <hess.h>

Inheritance diagram for sc::MolecularHessian:

sc::SavableState sc::DescribedClass sc::RefCount sc::Identity sc::DiagMolecularHessian sc::FinDispMolecularHessian sc::GuessMolecularHessian sc::ReadMolecularHessian List of all members.

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< SCMatrixKitmatrixkit () 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 MolecularEnergyenergy () 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< Moleculemol_
RefSCDimension d3natom_
Ref< SCMatrixKitmatrixkit_

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

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.

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.

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.


The documentation for this class was generated from the following file:
Generated at Mon Dec 3 23:23:47 2007 for MPQC 2.3.1 using the documentation package Doxygen 1.5.2.