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

# sc\_LinIPSimpleCo(3)

The LinIPSimpleCo class describes an in-plane component of a linear bend internal coordinate of a molecule.

## NAME

sc::LinIPSimpleCo - The **LinIPSimpleCo** class describes an in-plane component of a linear bend internal coordinate of a molecule.

## SYNOPSIS

`#include <simple.h>`

Inherits **sc::SimpleCo**.

### Public Member Functions

**LinIPSimpleCo** (const **LinIPSimpleCo** &)\
 **LinIPSimpleCo** (const char \*refr, int, int, int, const **SCVector3** &u)\
 This constructor takes a string containing a label, and three integers a, b, and d which give the indices of the atoms involved in the linear angle abc.  **LinIPSimpleCo** (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 **LinIPSimpleCo** class describes an in-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, **LinIPSimpleCo** is used with a corresponding **LinOPSimpleCo**, 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\_i$, is given by

  \
                     \-  rccos ( r{u} )\]

## Constructor & Destructor Documentation

### sc::LinIPSimpleCo::LinIPSimpleCo (const char \* refr, int, int, int, const SCVector3 & u)

This constructor takes a string containing a label, and three integers a, b, and d 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 in which distortion is measured. Atom numbering begins at atom 1, not atom 0.

### sc::LinIPSimpleCo::LinIPSimpleCo (const Ref\< KeyVal \> &)

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

## Member Function Documentation

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

Always returns the string 'LINIP'.

Implements **sc::IntCoor**.

### double sc::LinIPSimpleCo::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.
