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.
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_
Additional Inherited Members
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 $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, otherwise all the needed bonds will be found.
Author
Generated automatically by Doxygen for MPQC from the source code.
Version 2.3.1 Fri Feb 19 2016 sc::IntCoorGen(3)