man sc_LinOPSimpleCo (Fonctions bibliothèques) - The LinOPSimpleCo class describes an out-of-plane component of a linear bend internal coordinate of a molecule.
NAME
sc::LinOPSimpleCo - The LinOPSimpleCo class describes an out-of-plane component of a linear bend internal coordinate of a molecule.
SYNOPSIS
#include <simple.h>
Inherits sc::SimpleCo.
Public Member Functions
LinOPSimpleCo (const LinOPSimpleCo &)
LinOPSimpleCo (const char *refr, int, int, int, const SCVector3 &u)
This constructor takes a string containing a label, and three integers a, b, and c which give the indices of the atoms involved in the linear angle abc.
LinOPSimpleCo (const Ref< KeyVal > &)
The KeyVal constructor.
const char * ctype () const
Always returns the string 'LINIP'.
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.
Detailed Description
The LinOPSimpleCo class describes an out-of-plane component of a linear bend internal coordinate of a molecule.
The input is described in the documentation of its parent class SimpleCo. A vector, $bar{u}$ , given as the keyword u, that is not colinear with either $bar{r}_a - bar{r}_b$ or $bar{r}_b - bar{r}_c$ must be provided, where $bar{r}_a$ , $bar{r}_b$ , and $bar{r}_c$ are the positions of the first, second, and third atoms, respectively.
Usually, LinOPSimpleCo is used with a corresponding LinIPSimpleCo, which is given exactly the same u.
Designating the three atoms as $a$ , $b$ , and $c$ and their cartesian positions as $bar{r}_a$ , $bar{r}_b$ , and $bar{r}_c$ , the value of the coordinate, $theta_o$ , 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}_b - bar{r}_c}{ bar{r}_c - bar{r}_b }] [ bar{n} = ac{bar{u} times bar{u}_{ab}} { bar{u} times bar{u}_{ab} }] [ theta_o = pi - arccos ( bar{u}_{ab} cdot bar{n} ) - arccos ( bar{u}_{cb} cdot bar{n} )]
Constructor & Destructor Documentation
sc::LinOPSimpleCo::LinOPSimpleCo (const char * refr, int, int, int, const SCVector3 & u)
This constructor takes a string containing a label, and three integers a, b, and c which give the indices of the atoms involved in the linear angle abc.
The last argument, u, is a unit vector used to defined the direction perpendicular to the direction in which distortion is measured. Atom numbering begins at atom 1, not atom 0.
sc::LinOPSimpleCo::LinOPSimpleCo (const Ref< KeyVal > &)
The KeyVal constructor.
This calls the SimpleCo keyval constructor with an integer argument of 3.
Author
Generated automatically by Doxygen for MPQC from the source code.