Google

Main Page   Class Hierarchy   Compound List   File List   Compound 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:

Inheritance graph
[legend]
Collaboration diagram for sc::SetIntCoor:

Collaboration graph
[legend]
List of all members.

Public Methods

 SetIntCoor ()
 SetIntCoor (StateIn &)
 SetIntCoor (const Ref< KeyVal > &)
 The KeyVal constructor. More...

virtual ~SetIntCoor ()
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. More...

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. More...

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>: [
    <SumIntCoor>: (
      coor: [
        <StreSimpleCo>:( atoms = [ 1 2 ] )
        <StreSimpleCo>:( atoms = [ 2 3 ] )
        ]
      coef = [ 1.0 1.0 ]
      )
    <BendSimpleCo>:( 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 for , 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 Jan 10 08:16:53 2003 for MPQC 2.1.3 using the documentation package Doxygen 1.2.14.