|
MPQC 2.3.1
|
The CartMolecularCoor class implements Cartesian coordinates in a way suitable for use in geometry optimizations. More...
#include <coor.h>


Public Member Functions | |
| CartMolecularCoor (Ref< Molecule > &mol) | |
| CartMolecularCoor (StateIn &) | |
| *The KeyVal constructor | CartMolecularCoor (const Ref< KeyVal > &) |
| 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. | |
| *These implement virtual the functions inherited from virtual MolecularCoor RefSCDimension | dim () |
| Returns a smart reference to an SCDimension equal to the number of coordinates (be they Cartesian, internal, or whatever) that are being optimized. | |
| virtual int | to_cartesian (const Ref< Molecule > &, const RefSCVector &internal) |
| virtual int | to_internal (RefSCVector &internal) |
| virtual int | to_cartesian (RefSCVector &cartesian, RefSCVector &internal) |
| Given a set of displaced internal coordinates, update the cartesian coordinates of the Molecule contained herein. | |
| virtual int | to_internal (RefSCVector &internal, RefSCVector &cartesian) |
| Convert the Cartesian coordinate gradients in cartesian'' to
internal coordinates and copy these internal coordinate gradients
to internal''. | |
| virtual int | to_cartesian (RefSymmSCMatrix &cart, RefSymmSCMatrix &internal) |
| Convert the internal coordinate Hessian internal'' to Cartesian
coordinates and copy the result to cartesian''. | |
| virtual int | to_internal (RefSymmSCMatrix &internal, RefSymmSCMatrix &cart) |
| Convert the Cartesian coordinate Hessian cartesian'' to internal
coordinates and copy the result to internal''. | |
| virtual void | print (std::ostream &=ExEnv::out0()) const |
| Print the coordinate. | |
| virtual void | print_simples (std::ostream &=ExEnv::out0()) const |
| void | guess_hessian (RefSymmSCMatrix &hessian) |
| RefSymmSCMatrix | inverse_hessian (RefSymmSCMatrix &) |
| Calculate an approximate hessian and place the result in ``hessian''. | |
| Public Member Functions inherited from sc::MolecularCoor | |
| MolecularCoor (Ref< Molecule > &) | |
| MolecularCoor (StateIn &) | |
| MolecularCoor (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. | |
| RefSCDimension | dim_natom3 () |
| Returns a smart reference to an SCDimension equal to the number of atoms in the molecule times 3. | |
| Ref< Molecule > | molecule () const |
| Returns the molecule. | |
| *Returns the number of constrained virtual coordinates int | nconstrained () |
| virtual Ref< NonlinearTransform > | change_coordinates () |
| When this is called, MoleculeCoor may select a new internal coordinate system and return a transform to it. | |
| Ref< SCMatrixKit > | matrixkit () const |
| Public Member Functions inherited from sc::SavableState | |
| SavableState & | operator= (const SavableState &) |
| void | save_state (StateOut &) |
| Save the state of the object as specified by the StateOut object. | |
| void | save_object_state (StateOut &) |
| This can be used for saving state when the exact type of the object is known for both the save and the restore. | |
| virtual void | save_vbase_state (StateOut &) |
| Save the virtual bases for the object. | |
| Public Member Functions inherited from sc::DescribedClass | |
| DescribedClass (const DescribedClass &) | |
| DescribedClass & | operator= (const DescribedClass &) |
| ClassDesc * | class_desc () const throw () |
| This returns the unique pointer to the ClassDesc corresponding to the given type_info object. | |
| const char * | class_name () const |
| Return the name of the object's exact type. | |
| int | class_version () const |
| Return the version of the class. | |
| Public Member Functions inherited from sc::RefCount | |
| int | lock_ptr () const |
| Lock this object. | |
| int | unlock_ptr () const |
| Unlock this object. | |
| void | use_locks (bool inVal) |
| start and stop using locks on this object | |
| refcount_t | nreference () const |
| Return the reference count. | |
| refcount_t | reference () |
| Increment the reference count and return the new count. | |
| refcount_t | dereference () |
| Decrement the reference count and return the new count. | |
| int | managed () const |
| void | unmanage () |
| Turn off the reference counting mechanism for this object. | |
| int | managed () const |
| Return 1 if the object is managed. Otherwise return 0. | |
| Public Member Functions inherited from sc::Identity | |
| Identifier | identifier () |
| Return the Identifier for this argument. | |
Protected Member Functions | |
| *Initializes the virtual dimensions void | init () |
| Protected Member Functions inherited from sc::SavableState | |
| SavableState (const SavableState &) | |
| SavableState (StateIn &) | |
| Each derived class StateIn CTOR handles the restore corresponding to calling save_object_state, save_vbase_state, and save_data_state listed above. | |
| Protected Member Functions inherited from sc::RefCount | |
| RefCount (const RefCount &) | |
| RefCount & | operator= (const RefCount &) |
Protected Attributes | |
| RefSCDimension | dim_ |
| Protected Attributes inherited from sc::MolecularCoor | |
| Ref< Molecule > | molecule_ |
| RefSCDimension | dnatom3_ |
| Ref< SCMatrixKit > | matrixkit_ |
| int | debug_ |
Additional Inherited Members | |
| Static Public Member Functions inherited from sc::SavableState | |
| static void | save_state (SavableState *s, StateOut &) |
| static SavableState * | restore_state (StateIn &si) |
| Restores objects saved with save_state. | |
| static SavableState * | key_restore_state (StateIn &si, const char *keyword) |
| Like restore_state, but keyword is used to override values while restoring. | |
| static SavableState * | dir_restore_state (StateIn &si, const char *objectname, const char *keyword=0) |
The CartMolecularCoor class implements Cartesian coordinates in a way suitable for use in geometry optimizations.
CartMolecularCoor is a SavableState has StateIn and KeyVal constructors. CartMolecularCoor is derived from MolecularCoor.
|
virtual |
Returns a smart reference to an SCDimension equal to the number of coordinates (be they Cartesian, internal, or whatever) that are being optimized.
Implements sc::MolecularCoor.
|
virtual |
Calculate an approximate hessian and place the result in ``hessian''.
*/ virtual void guess_hessian(RefSymmSCMatrix&hessian) = 0;
/** Given an Hessian, return the inverse of that hessian. For singular matrices this should return the generalized inverse.
Implements sc::MolecularCoor.
|
virtual |
|
virtual |
Implements sc::MolecularCoor.
|
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.
|
virtual |
Given a set of displaced internal coordinates, update the cartesian coordinates of the Molecule contained herein.
This function does not change the vector ``internal''. */ int to_cartesian(const RefSCVector&internal); virtual int to_cartesian(const Ref<Molecule>&mol, const RefSCVector&internal) = 0;
/** Fill in the vector ``internal'' with the current internal coordinates. Note that this member will update the values of the variable internal coordinates. */ virtual int to_internal(RefSCVector&internal) = 0;
/** Convert the internal coordinate gradients in internal'' to Cartesian coordinates and copy these Cartesian coordinate gradients to cartesian''. Only the variable internal coordinate gradients are transformed.
Implements sc::MolecularCoor.
|
virtual |
Convert the internal coordinate Hessian internal'' to Cartesian coordinates and copy the result to cartesian''.
Only the variable internal coordinate force constants are transformed.
Implements sc::MolecularCoor.
|
virtual |
Convert the Cartesian coordinate gradients in cartesian'' to internal coordinates and copy these internal coordinate gradients to internal''.
Only the variable internal coordinate gradients are calculated.
Implements sc::MolecularCoor.
|
virtual |
Convert the Cartesian coordinate Hessian cartesian'' to internal coordinates and copy the result to internal''.
Only the variable internal coordinate force constants are calculated.
Implements sc::MolecularCoor.