sc::IntCoorGen Class Reference
IntCoorGen generates a set of simple internal coordinates for a molecule.
More...
#include <coor.h>
List of all members.
|
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.
|
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, Molecule &m) |
void | add_bends (const Ref< SetIntCoor > &list, BitArrayLTri &bonds, Molecule &m) |
void | add_tors (const Ref< SetIntCoor > &list, BitArrayLTri &bonds, Molecule &m) |
void | add_out (const Ref< SetIntCoor > &list, BitArrayLTri &bonds, Molecule &m) |
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_ |
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.
IntCoorGen 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 default 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 linearity. If an angle in degrees is greater than 180 minus this keyword's floating point value, then the torsion is classified as a linear torsion. 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
and
specify the atoms which are bound in extra bond
. The extra_bonds keyword should only be needed for weakly interacting fragments, otherwise all the needed bonds will be found.
The documentation for this class was generated from the following file: