---
name: "sc_LinOPSimpleCo"
section: "3"
platform: "linux"
package: "libsc-doc"
version: "2.3.1-22"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/sc_LinOPSimpleCo"
---

# sc\_LinOPSimpleCo(3)

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.

### Additional Inherited Members

## 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, $s the keyword u, that is not colinear with either $ - r{r}\_b - r{r}\_a$, $nd $re 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 $$, $nd $lue of the coordinate, $ heta\_o$, is given by

  \
                        { r{u}\_{ab} }\] \
                       \-  rccos ( r{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.

## Member Function Documentation

### const char \* sc::LinOPSimpleCo::ctype () const` [virtual]`

Always returns the string 'LINIP'.

Implements **sc::IntCoor**.

### double sc::LinOPSimpleCo::preferred\_value () const` [virtual]`

Returns the value of the angle abc in degrees.

Reimplemented from **sc::IntCoor**.

## Author

Generated automatically by Doxygen for MPQC from the source code.
