sc::SumIntCoor Class Reference

SumIntCoor is used to construct linear combinations of internal coordinates. More...

#include <coor.h>

Inheritance diagram for sc::SumIntCoor:

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

Public Member Functions

 SumIntCoor (StateIn &)
 SumIntCoor (const char *)
 This constructor takes a string containing a label for this coordinate.
 SumIntCoor (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.
int n ()
 Returns the number of coordinates in this linear combination.
void add (Ref< IntCoor > &, double coef)
 Add a coordinate to the linear combination.
void normalize ()
 This function normalizes all the coefficients.
double preferred_value () const
 Returns the value of the coordinate in a.u. and radians.
const char * ctype () const
 Always returns ``SUM''.
void print_details (const Ref< Molecule > &, std::ostream &=ExEnv::out0()) const
 Print the individual coordinates in the sum with their coefficients.
double force_constant (Ref< Molecule > &)
 Returns the weighted sum of the individual force constants.
void update_value (const Ref< Molecule > &)
 Recalculate the value of the coordinate.
void bmat (const Ref< Molecule > &, RefSCVector &bmat, double coef=1.0)
 Fill in a row the the B matrix.
int equivalent (Ref< IntCoor > &)
 Always returns 0.

Detailed Description

SumIntCoor is used to construct linear combinations of internal coordinates.

The following is a sample ParsedKeyVal input for a SumIntCoor object:

  sumintcoor<SumIntCoor>: (
    coor: [
      <StreSimpleCo>:( atoms = [ 1 2 ] )
      <StreSimpleCo>:( atoms = [ 2 3 ] )
      ]
    coef = [ 1.0 1.0 ]
    )


Constructor & Destructor Documentation

sc::SumIntCoor::SumIntCoor ( const char *   ) 

This constructor takes a string containing a label for this coordinate.

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

The KeyVal constructor.

coor
A vector of IntCoor objects that define the summed coordinates.

coef
A vector of floating point numbers that gives the coefficients of the summed coordinates.


Member Function Documentation

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

void sc::SumIntCoor::add ( Ref< IntCoor > &  ,
double  coef 
)

Add a coordinate to the linear combination.

coef is the coefficient for the added coordinate.


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