sc_ScaledTorsSimpleCo man page

sc::ScaledTorsSimpleCo — The ScaledTorsSimpleCo class describes an scaled torsion internal coordinate of a molecule.

Synopsis

#include <simple.h>

Inherits sc::SimpleCo.

Public Member Functions

ScaledTorsSimpleCo (const ScaledTorsSimpleCo &)

ScaledTorsSimpleCo (const char *refr, int, int, int, int)
This constructor takes a string containing a label, and four integers a, b, c, and d which give the indices of the atoms involved in the torsion angle abcd.
ScaledTorsSimpleCo (const Ref< KeyVal > &)
The KeyVal constructor.
const char * ctype () const
Always returns the string 'TORS'.
double radians () const
Returns the value of the angle abc in radians.
double degrees () const
Returns the value of the angle abc in degrees.
double preferred_value () const
Returns the value of the angle abc in degrees.

Additional Inherited Members

Detailed Description

The ScaledTorsSimpleCo class describes an scaled torsion internal coordinate of a molecule.

The scaled torsion is more stable that ordinary torsions (see the TorsSimpleCo class) in describing situations where one of the torsions plane's is given by three near linear atoms.

Designating the four atoms as $a$, $b$, $c$, and $d$ and their cartesian positions as $bar{r}_a$, $bar{r}_b$, $bar{r}_c$, and $bar{r}_d$, the value of the coordinate, $ au_s$, is given by

[ bar{u}_{ab} = ac{bar{r}_a - bar{r}_b}{ bar{r}_a - bar{r}_b }] [ bar{u}_{cb} = ac{bar{r}_c - bar{r}_b}{ bar{r}_c - bar{r}_b }] [ bar{u}_{cd} = ac{bar{r}_c - bar{r}_d}{ bar{r}_c - bar{r}_b }] [ bar{n}_{abc}= ac{bar{u}_{ab} imes bar{u}_{cb}} { bar{u}_{ab} imes bar{u}_{cb} }] [ bar{n}_{bcd}= ac{bar{u}_{cd} imes bar{u}_{cb}} { bar{u}_{cd} imes bar{u}_{cb} }] [ s = left begin{array}{ll} -1 & mbox{if $(bar{n}_{abc} imesbar{n}_{bcd}) cdot bar{u}_{cb} > 0$} \ 1 & mbox{otherwise} \nd{array} right. ] [ au_s = s sqrt{left(1-(bar{u}_{ab} cdot bar{u}_{cb}right)^2) left(1-(bar{u}_{cb} cdot bar{u}_{cd}right)^2)} arccos ( - bar{n}_{abc} cdot bar{n}_{bcd} )]

Constructor & Destructor Documentation

sc::ScaledTorsSimpleCo::ScaledTorsSimpleCo (const char * refr, int, int, int, int)

This constructor takes a string containing a label, and four integers a, b, c, and d which give the indices of the atoms involved in the torsion angle abcd. Atom numbering begins at atom 1, not atom 0.

sc::ScaledTorsSimpleCo::ScaledTorsSimpleCo (const Ref< KeyVal > &)

The KeyVal constructor. This calls the SimpleCo keyval constructor with an integer argument of 4.

Author

Generated automatically by Doxygen for MPQC from the source code.

Info

Fri May 6 2016 Version 2.3.1 MPQC