sc::IntCoor(3) The IntCoor abstract class describes an internal coordinate of a molecule.

SYNOPSIS


#include <coor.h>

Inherits sc::SavableState.

Inherited by sc::SimpleCo, and sc::SumIntCoor.

Public Member Functions


IntCoor (StateIn &)

IntCoor (const IntCoor &)

IntCoor (const char *label=0)
This constructor takes a string containing a label for the internal coordinate.
IntCoor (const Ref< KeyVal > &)
The KeyVal constructor.
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.
virtual const char * label () const
Returns the string containing the label for the internal coordinate.
virtual double value () const
Returns the value of the coordinate in atomic units or radians.
virtual void set_value (double)
Sets the value of the coordinate in atomic units or radians.
virtual double preferred_value () const
Returns the value of the coordinate in more familiar units.
virtual const char * ctype () const =0
Returns a string representation of the type of coordinate this is.
virtual void print (std::ostream &o=ExEnv::out0()) const
Print information about the coordinate.
virtual void print_details (const Ref< Molecule > &, std::ostream &=ExEnv::out0()) const

virtual double force_constant (Ref< Molecule > &)=0
Returns the value of the force constant associated with this coordinate.
virtual void update_value (const Ref< Molecule > &)=0
Recalculate the value of the coordinate.
virtual void bmat (const Ref< Molecule > &, RefSCVector &bmat, double coef=1.0)=0
Fill in a row the the B matrix.
virtual int equivalent (Ref< IntCoor > &)=0
Test to see if this internal coordinate is equivalent to that one.

Protected Attributes


char * label_

double value_

Static Protected Attributes


static double bohr_conv

static double radian_conv

Detailed Description

The IntCoor abstract class describes an internal coordinate of a molecule.

Constructor & Destructor Documentation

sc::IntCoor::IntCoor (const char * label = 0)

This constructor takes a string containing a label for the internal coordinate. The string is copied.

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

The KeyVal constructor. .IP "label" 1c A label for the coordinate using only to identify the coordinate to the user in printouts. The default is no label.

value
A value for the coordinate. In the way that coordinates are usually used, the default is to compute a value from the cartesian coordinates in a Molecule object.

unit
The unit in which the value is given. This can be bohr, anstrom, radian, and degree. The default is bohr for lengths and radian for angles.

Member Function Documentation

virtual int sc::IntCoor::equivalent (Ref< IntCoor > &) [pure virtual]

Test to see if this internal coordinate is equivalent to that one. The definition of equivalence is left up to the individual coordinates.

virtual double sc::IntCoor::force_constant (Ref< Molecule > &) [pure virtual]

Returns the value of the force constant associated with this coordinate.

Implemented in sc::SumIntCoor, and sc::SimpleCo.

void sc::IntCoor::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::SumIntCoor, and sc::SimpleCo.

Author

Generated automatically by Doxygen for MPQC from the source code.