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

NAME
     sc::IntCoorGen  - IntCoorGen generates a set of simple internal coordinates
     for a molecule.

SYNOPSIS
     #include <coor.h>

     Inherits sc::SavableState.

   Public Member Functions
     IntCoorGen (const Ref< Molecule > &, int nextra=0, int *extra=0)
	 Create an IntCoorGen given a Molecule and, optionally, extra bonds.
     IntCoorGen (const Ref< KeyVal > &)
	 The KeyVal constructor.
     IntCoorGen (StateIn &)
     void save_data_state (StateOut &)
	 Standard member.
     virtual void generate (const Ref< SetIntCoor > &)
	 This generates a set of internal coordinates.
     virtual void print (std::ostream &out=ExEnv::out0()) const
	 Print out information about this.

     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 Member Functions
     void init_constants ()
     double cos_ijk (Molecule &m, int i, int j, int k)
     int hterminal (Molecule &m, BitArrayLTri &bonds, int i)
     int nearest_contact (int i, Molecule &m)
     void  add_bonds  (const Ref< SetIntCoor > &list, BitArrayLTri &bonds, Mole-
	 cule &m)
     void add_bends (const Ref< SetIntCoor > &list, BitArrayLTri  &bonds,  Mole-
	 cule &m)
     void add_tors (const Ref< SetIntCoor > &list, BitArrayLTri &bonds, Molecule
	 &m)
     void  add_out (const Ref< SetIntCoor > &list, BitArrayLTri &bonds, Molecule
	 &m)

     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
     Ref< Molecule > molecule_
     int linear_bends_
     int linear_lbends_
     int linear_tors_
     int linear_stors_
     int nextra_bonds_
     int * extra_bonds_
     double linear_bend_thres_
     double linear_tors_thres_
     double radius_scale_factor_

   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	*object-
	 name, const char *keyword=0)

Detailed Description
     IntCoorGen generates a set of simple internal coordinates for a molecule.

Constructor & Destructor Documentation
   sc::IntCoorGen::IntCoorGen  (const  Ref<  Molecule > &, int nextra = 0, int *
     extra = 0)
     Create an IntCoorGen given a Molecule and, optionally,  extra  bonds.  Int-
     CoorGen  keeps  a	reference to extra and deletes it when the destructor is
     called.

   sc::IntCoorGen::IntCoorGen (const Ref< KeyVal > &)
     The KeyVal constructor.

     molecule
	 A Molecule object. There is no default.

     radius_scale_factor
	 If the distance between two atoms is less than the radius scale  factor
	 times the sum of the atoms' atomic radii, then a bond is placed between
	 the  two atoms for the purpose of finding internal coordinates. The de-
	 fault is 1.1.

     linear_bend_threshold
	 A bend angle in degress greater than 180 minus this keyword's	floating
	 point value is considered a linear bend. The default is 1.0.

     linear_tors_threshold
	 The angles formed by atoms a-b-c and b-c-d are checked for near linear-
	 ity.  If  an  angle in degrees is greater than 180 minus this keyword's
	 floating point value, then the torsion is classified as a  linear  tor-
	 sion. The default is 1.0.

     linear_bend
	 Generate  BendSimpleCo objects to describe linear bends. The default is
	 false.

     linear_lbend
	 Generate pairs of LinIPSimpleCo and LinIPSimpleCo objects  to	describe
	 linear bends. The default is true.

     linear_tors
	 Generate TorsSimpleCo objects to described linear torsions. The default
	 is false.

     linear_stors
	 Generate  ScaledTorsSimpleCo  objects to described linear torsions. The
	 default is true.

     extra_bonds
	 This is a vector of atom numbers, where elements $2 (i-1) + 1$  and  $2
	 i$ specify the atoms which are bound in extra bond $i$. The extra_bonds
	 keyword  should only be needed for weakly interacting fragments, other-
	 wise all the needed bonds will be found.

Member Function Documentation
   virtual void sc::IntCoorGen::print (std::ostream & out = ExEnv::out0()) const
     [virtual]
     Print out information about this.

     Reimplemented from sc::DescribedClass.

   void sc::IntCoorGen::save_data_state (StateOut &) [virtual]
     Standard member.

     Reimplemented from sc::SavableState.

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

Version 2.3.1			 Thu Sep 3 2026 	       sc::IntCoorGen(3)

home | help