.TH "sc::ScaledTorsSimpleCo" 3 "Sun Oct 4 2020" "Version 2.3.1" "MPQC" \" -*- nroff -*- .ad l .nh .SH NAME sc::ScaledTorsSimpleCo \- The \fBScaledTorsSimpleCo\fP class describes an scaled torsion internal coordinate of a molecule\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBsc::SimpleCo\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBScaledTorsSimpleCo\fP (const \fBScaledTorsSimpleCo\fP &)" .br .ti -1c .RI "\fBScaledTorsSimpleCo\fP (const char *refr, int, int, int, int)" .br .RI "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\&. " .ti -1c .RI "\fBScaledTorsSimpleCo\fP (const \fBRef\fP< \fBKeyVal\fP > &)" .br .RI "The \fBKeyVal\fP constructor\&. " .ti -1c .RI "const char * \fBctype\fP () const" .br .RI "Always returns the string 'TORS'\&. " .ti -1c .RI "double \fBradians\fP () const" .br .RI "Returns the value of the angle abc in radians\&. " .ti -1c .RI "double \fBdegrees\fP () const" .br .RI "Returns the value of the angle abc in degrees\&. " .ti -1c .RI "double \fBpreferred_value\fP () const" .br .RI "Returns the value of the angle abc in degrees\&. " .in -1c .SS "Additional Inherited Members" .SH "Detailed Description" .PP The \fBScaledTorsSimpleCo\fP class describes an scaled torsion internal coordinate of a molecule\&. The scaled torsion is more stable that ordinary torsions (see the \fBTorsSimpleCo\fP class) in describing situations where one of the torsions plane's is given by three near linear atoms\&. .PP 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, $\tau_s$, is given by .PP \[ \bar{u}_{ab} = \frac{\bar{r}_a - \bar{r}_b}{\| \bar{r}_a - \bar{r}_b \|}\] \[ \bar{u}_{cb} = \frac{\bar{r}_c - \bar{r}_b}{\| \bar{r}_c - \bar{r}_b \|}\] \[ \bar{u}_{cd} = \frac{\bar{r}_c - \bar{r}_d}{\| \bar{r}_c - \bar{r}_b \|}\] \[ \bar{n}_{abc}= \frac{\bar{u}_{ab} \times \bar{u}_{cb}} {\| \bar{u}_{ab} \times \bar{u}_{cb} \|}\] \[ \bar{n}_{bcd}= \frac{\bar{u}_{cd} \times \bar{u}_{cb}} {\| \bar{u}_{cd} \times \bar{u}_{cb} \|}\] \[ s = \left\{ \begin{array}{ll} -1 & \mbox{if $(\bar{n}_{abc}\times\bar{n}_{bcd}) \cdot \bar{u}_{cb} > 0$} \\ 1 & \mbox{otherwise} \end{array} \right. \] \[ \tau_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} )\] .SH "Constructor & Destructor Documentation" .PP .SS "sc::ScaledTorsSimpleCo::ScaledTorsSimpleCo (const char * refr, int, int, int, int)" .PP 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\&. .SS "sc::ScaledTorsSimpleCo::ScaledTorsSimpleCo (const \fBRef\fP< \fBKeyVal\fP > &)" .PP The \fBKeyVal\fP constructor\&. This calls the \fBSimpleCo\fP keyval constructor with an integer argument of 4\&. .SH "Author" .PP Generated automatically by Doxygen for MPQC from the source code\&.