Main Page | Class Hierarchy | Class List | File List | Class Members | Related Pages

sc::SetIntCoor Class Reference

The SetIntCoor class describes a set of internal coordinates. More...

#include <coor.h>

Inheritance diagram for sc::SetIntCoor:

sc::SavableState sc::DescribedClass sc::RefCount sc::Identity List of all members.

Public Member Functions

 SetIntCoor (StateIn &)
 SetIntCoor (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.

void add (const Ref< IntCoor > &)
 Adds an internal coordinate to the set.

void add (const Ref< SetIntCoor > &)
 Adds all the elements of another set to this one.

void pop ()
 Removes the last coordinate from this set.

void clear ()
 Removes all coordinates from the set.

int n () const
 Returns the number of coordinates in the set.

Ref< IntCoorcoor (int i) const
 Returns a reference to the i'th coordinate in the set.

virtual void fd_bmat (const Ref< Molecule > &, RefSCMatrix &)
 Compute the B matrix by finite displacements.

virtual void bmat (const Ref< Molecule > &, RefSCMatrix &)
 Compute the B matrix the old-fashioned way.

virtual void guess_hessian (Ref< Molecule > &, RefSymmSCMatrix &)
 Create an approximate Hessian for this set of coordinates.

virtual void print_details (const Ref< Molecule > &, std::ostream &=ExEnv::out0()) const
 Print the coordinates in the set.

virtual void update_values (const Ref< Molecule > &)
 Recalculate the values of the internal coordinates in the set.

virtual void values_to_vector (const RefSCVector &)
 Copy the values of the internal coordinates to a vector.


Detailed Description

The SetIntCoor class describes a set of internal coordinates.

It can automatically generate these coordinates using a integral coordinate generator object (see the IntCoorGen class) or the internal coordinates can be explicity given.

The following is a sample ParsedKeyVal input for a SetIntCoor object.

setintcoor<SetIntCoor>: [ : ( coor: [ :( atoms = [ 1 2 ] ) :( atoms = [ 2 3 ] ) ] coef = [ 1.0 1.0 ] ) :( atoms = [ 1 2 3 ] ) ]


Constructor & Destructor Documentation

sc::SetIntCoor::SetIntCoor const Ref< KeyVal > &   ) 
 

The KeyVal constructor.

generator
A IntCoorGen object that will be used to generate the internal coordinates.

i
A sequence of integer keywords, all $i$ for $0 \leq i < n$, can be assigned to IntCoor objects.


Member Function Documentation

virtual void sc::SetIntCoor::guess_hessian Ref< Molecule > &  ,
RefSymmSCMatrix
[virtual]
 

Create an approximate Hessian for this set of coordinates.

This Hessian is a symmetric matrix whose i'th diagonal is the force constant for the i'th coordinate in the set.

void sc::SetIntCoor::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.


The documentation for this class was generated from the following file:
Generated at Fri Mar 19 10:48:41 2004 for MPQC 2.2.1 using the documentation package Doxygen 1.3.5.