Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
sc::MolecularCoor(3)		     MPQC		  sc::MolecularCoor(3)

NAME
       sc::MolecularCoor - The MolecularCoor abstract class describes the
       coordinate system used to describe a molecule.

SYNOPSIS
       #include	<coor.h>

       Inherits	sc::SavableState.

       Inherited by sc::CartMolecularCoor, and sc::IntMolecularCoor.

   Public Member Functions
       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.
       virtual void print (std::ostream	&=ExEnv::out0()) const =0
	   Print the coordinate.
       virtual void print_simples (std::ostream	&=ExEnv::out0()) const =0
       virtual RefSCDimension dim ()=0
	   Returns a smart reference to	an SCDimension equal to	the number of
	   coordinates (be they	Cartesian, internal, or	whatever) that are
	   being optimized.
       int to_cartesian	(const RefSCVector &internal)
	   Given a set of displaced internal coordinates, update the cartesian
	   coordinates of the Molecule contained herein.
       virtual int to_cartesian	(const Ref< Molecule > &mol, const RefSCVector
	   &internal)=0
       virtual int to_internal (RefSCVector &internal)=0
	   Fill	in the vector ``internal'' with	the current internal
	   coordinates.
       virtual int to_cartesian	(RefSCVector &cartesian, RefSCVector
	   &internal)=0
	   Convert the internal	coordinate gradients in	``internal'' to
	   Cartesian coordinates and copy these	Cartesian coordinate gradients
	   to ``cartesian''.
       virtual int to_internal (RefSCVector &internal, RefSCVector
	   &cartesian)=0
	   Convert the Cartesian coordinate gradients in ``cartesian'' to
	   internal coordinates	and copy these internal	coordinate gradients
	   to ``internal''.
       virtual int to_cartesian	(RefSymmSCMatrix &cartesian, RefSymmSCMatrix
	   &internal)=0
	   Convert the internal	coordinate Hessian internal'' to Cartesian
	   coordinates and copy	the result tocartesian''.
       virtual int to_internal (RefSymmSCMatrix	&internal, RefSymmSCMatrix
	   &cartesian)=0
	   Convert the Cartesian coordinate Hessian cartesian''	to internal
	   coordinates and copy	the result tointernal''.
       virtual void guess_hessian (RefSymmSCMatrix &hessian)=0
	   Calculate an	approximate hessian and	place the result in
	   ``hessian''.
       virtual RefSymmSCMatrix inverse_hessian (RefSymmSCMatrix	&)=0
	   Given an Hessian, return the	inverse	of that	hessian.
       virtual int nconstrained	()
	   Returns the number of constrained coordinates.
       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

   Protected Attributes
       Ref< Molecule > molecule_
       RefSCDimension dnatom3_
       Ref< SCMatrixKit	> matrixkit_
       int debug_

   Additional Inherited	Members
Detailed Description
       The MolecularCoor abstract class	describes the coordinate system	used
       to describe a molecule.

       It is used to convert a molecule's cartesian coordinates	to and from
       this coordinate system.

Constructor & Destructor Documentation
   sc::MolecularCoor::MolecularCoor (const Ref<	KeyVal > &)
       The KeyVal constructor.

       molecule
	   A Molecule object. There is no default.

       debug
	   An integer which, if	nonzero, will cause extra output.

       matrixkit
	   A SCMatrixKit object. It is usually unnecessary to give this
	   keyword.

       natom3
	   An SCDimension object for the dimension of the vector of cartesian
	   coordinates.	It is usually unnecessary to give this keyword.

Member Function	Documentation
   virtual Ref<NonlinearTransform> sc::MolecularCoor::change_coordinates ()
       [virtual]
       When this is called, MoleculeCoor may select a new internal coordinate
       system and return a transform to	it. The	default	action is to not
       change anything and return an IdentityTransform.

       Reimplemented in	sc::SymmMolecularCoor.

   virtual RefSymmSCMatrix sc::MolecularCoor::inverse_hessian (RefSymmSCMatrix
       &) [pure	virtual]
       Given an	Hessian, return	the inverse of that hessian. For singular
       matrices	this should return the generalized inverse.

       Implemented in sc::CartMolecularCoor, sc::RedundMolecularCoor, and
       sc::SymmMolecularCoor.

   void	sc::MolecularCoor::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::CartMolecularCoor, sc::RedundMolecularCoor,
       sc::SymmMolecularCoor, and sc::IntMolecularCoor.

   int sc::MolecularCoor::to_cartesian (const RefSCVector & internal)
       Given a set of displaced	internal coordinates, update the cartesian
       coordinates of the Molecule contained herein. This function does	not
       change the vector ``internal''.

   virtual int sc::MolecularCoor::to_cartesian (RefSCVector & cartesian,
       RefSCVector & internal) [pure virtual]
       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.

       Implemented in sc::CartMolecularCoor, and sc::IntMolecularCoor.

   virtual int sc::MolecularCoor::to_cartesian (RefSymmSCMatrix	& cartesian,
       RefSymmSCMatrix & internal) [pure virtual]
       Convert the internal coordinate Hessian internal'' to Cartesian
       coordinates and copy the	result tocartesian''. Only the variable
       internal	coordinate force constants are transformed.

       Implemented in sc::CartMolecularCoor, and sc::IntMolecularCoor.

   virtual int sc::MolecularCoor::to_internal (RefSCVector & internal) [pure
       virtual]
       Fill in the vector ``internal'' with the	current	internal coordinates.
       Note that this member will update the values of the variable internal
       coordinates.

       Implemented in sc::CartMolecularCoor, and sc::IntMolecularCoor.

   virtual int sc::MolecularCoor::to_internal (RefSCVector & internal,
       RefSCVector & cartesian)	[pure 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.

       Implemented in sc::CartMolecularCoor, and sc::IntMolecularCoor.

   virtual int sc::MolecularCoor::to_internal (RefSymmSCMatrix & internal,
       RefSymmSCMatrix & cartesian) [pure virtual]
       Convert the Cartesian coordinate	Hessian	cartesian'' to internal
       coordinates and copy the	result tointernal''. Only the variable
       internal	coordinate force constants are calculated.

       Implemented in sc::CartMolecularCoor, and sc::IntMolecularCoor.

Author
       Generated automatically by Doxygen for MPQC from	the source code.

Version	2.3.1			Thu Dec	2 2021		  sc::MolecularCoor(3)

NAME | SYNOPSIS | Detailed Description | Constructor & Destructor Documentation | Member Function Documentation | Author

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sc_MolecularCoor&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help