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

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

       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.
       virtual void print (std::ostream	&=ExEnv::out0()) const
	   Print the object.

       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 Attributes
       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)

       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 &)

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 RefSCDimension sc::MolecularCoor::dim () [pure virtual]
       Returns a smart reference to an SCDimension  equal  to  the  number  of
       coordinates  (be	 they Cartesian, internal, or whatever)	that are being
       optimized.

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

   virtual void	sc::MolecularCoor::guess_hessian (RefSymmSCMatrix  &  hessian)
       [pure virtual]
       Calculate an approximate	hessian	and place the result in	``hessian''.

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

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

   virtual int sc::MolecularCoor::nconstrained () [virtual]
       Returns the number of constrained coordinates.

       Reimplemented in	sc::IntMolecularCoor.

   virtual void	 sc::MolecularCoor::print  (std::ostream  &  =	ExEnv::out0())
       const [pure virtual]
       Print the coordinate.

       Reimplemented from sc::DescribedClass.

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

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

   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::IntMolecularCoor, and	sc::CartMolecularCoor.

   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::IntMolecularCoor, and	sc::CartMolecularCoor.

   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::IntMolecularCoor, and	sc::CartMolecularCoor.

   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::IntMolecularCoor, and	sc::CartMolecularCoor.

   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::IntMolecularCoor, and	sc::CartMolecularCoor.

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

Version	2.3.1			Tue May	13 2025		  sc::MolecularCoor(3)

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

home | help