<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>MPQC: sc::LinOPSimpleCo Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.9 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><b>sc</b>::<a class="el" href="classsc_1_1LinOPSimpleCo.html">LinOPSimpleCo</a> </div> </div> <div class="contents"> <h1>sc::LinOPSimpleCo Class Reference</h1><!-- doxytag: class="sc::LinOPSimpleCo" --><!-- doxytag: inherits="sc::SimpleCo" -->The <a class="el" href="classsc_1_1LinOPSimpleCo.html" title="The LinOPSimpleCo class describes an out-of-plane component of a linear bend internal...">LinOPSimpleCo</a> class describes an out-of-plane component of a linear bend internal coordinate of a molecule. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="simple_8h_source.html">simple.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for sc::LinOPSimpleCo:</div> <div class="dynsection"> <p><center><img src="classsc_1_1LinOPSimpleCo.png" usemap="#sc::LinOPSimpleCo_map" border="0" alt=""></center> <map name="sc::LinOPSimpleCo_map"> <area href="classsc_1_1SimpleCo.html" alt="sc::SimpleCo" shape="rect" coords="0,280,120,304"> <area href="classsc_1_1IntCoor.html" alt="sc::IntCoor" shape="rect" coords="0,224,120,248"> <area href="classsc_1_1SavableState.html" alt="sc::SavableState" shape="rect" coords="0,168,120,192"> <area href="classsc_1_1DescribedClass.html" alt="sc::DescribedClass" shape="rect" coords="0,112,120,136"> <area href="classsc_1_1RefCount.html" alt="sc::RefCount" shape="rect" coords="0,56,120,80"> <area href="classsc_1_1Identity.html" alt="sc::Identity" shape="rect" coords="0,0,120,24"> </map> </div> <p> <a href="classsc_1_1LinOPSimpleCo-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9f685960164282142d635ddb80104a89"></a><!-- doxytag: member="sc::LinOPSimpleCo::LinOPSimpleCo" ref="9f685960164282142d635ddb80104a89" args="(const LinOPSimpleCo &)" --> </td><td class="memItemRight" valign="bottom"><b>LinOPSimpleCo</b> (const <a class="el" href="classsc_1_1LinOPSimpleCo.html">LinOPSimpleCo</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1LinOPSimpleCo.html#a2b54e8282098edc66fdbc8b02e4e663">LinOPSimpleCo</a> (const char *refr, int, int, int, const SCVector3 &u)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">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. <a href="#a2b54e8282098edc66fdbc8b02e4e663"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1LinOPSimpleCo.html#7dd6963fc43ae512a172bacd1b24beb7">LinOPSimpleCo</a> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1KeyVal.html">KeyVal</a> > &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The <a class="el" href="classsc_1_1KeyVal.html" title="The KeyVal class is designed to simplify the process of allowing a user to specify...">KeyVal</a> constructor. <a href="#7dd6963fc43ae512a172bacd1b24beb7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c942b5c2521c5c1c8ed4427eb6e7dec4"></a><!-- doxytag: member="sc::LinOPSimpleCo::ctype" ref="c942b5c2521c5c1c8ed4427eb6e7dec4" args="() const " --> const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1LinOPSimpleCo.html#c942b5c2521c5c1c8ed4427eb6e7dec4">ctype</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Always returns the string "LINIP". <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7df3048035e541c0cb6bb11f681c6277"></a><!-- doxytag: member="sc::LinOPSimpleCo::radians" ref="7df3048035e541c0cb6bb11f681c6277" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1LinOPSimpleCo.html#7df3048035e541c0cb6bb11f681c6277">radians</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the value of the angle abc in radians. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ed2c25b54969bccd4525cc9220efa49"></a><!-- doxytag: member="sc::LinOPSimpleCo::degrees" ref="4ed2c25b54969bccd4525cc9220efa49" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1LinOPSimpleCo.html#4ed2c25b54969bccd4525cc9220efa49">degrees</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the value of the angle abc in degrees. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="677f97afcf9bfe020592289bbfef1775"></a><!-- doxytag: member="sc::LinOPSimpleCo::preferred_value" ref="677f97afcf9bfe020592289bbfef1775" args="() const " --> double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1LinOPSimpleCo.html#677f97afcf9bfe020592289bbfef1775">preferred_value</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the value of the angle abc in degrees. <br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The <a class="el" href="classsc_1_1LinOPSimpleCo.html" title="The LinOPSimpleCo class describes an out-of-plane component of a linear bend internal...">LinOPSimpleCo</a> class describes an out-of-plane component of a linear bend internal coordinate of a molecule. <p> The input is described in the documentation of its parent class <a class="el" href="classsc_1_1SimpleCo.html" title="The SimpleCo abstract class describes a simple internal coordinate of a molecule...">SimpleCo</a>. A vector, <img class="formulaInl" alt="$\bar{u}$" src="form_36.png">, given as the keyword u, that is not colinear with either <img class="formulaInl" alt="$\bar{r}_a - \bar{r}_b$" src="form_37.png"> or <img class="formulaInl" alt="$\bar{r}_b - \bar{r}_c$" src="form_38.png"> must be provided, where <img class="formulaInl" alt="$\bar{r}_a$" src="form_13.png">, <img class="formulaInl" alt="$\bar{r}_b$" src="form_14.png">, and <img class="formulaInl" alt="$\bar{r}_c$" src="form_18.png"> are the positions of the first, second, and third atoms, respectively.<p> Usually, <a class="el" href="classsc_1_1LinOPSimpleCo.html" title="The LinOPSimpleCo class describes an out-of-plane component of a linear bend internal...">LinOPSimpleCo</a> is used with a corresponding <a class="el" href="classsc_1_1LinIPSimpleCo.html" title="The LinIPSimpleCo class describes an in-plane component of a linear bend internal...">LinIPSimpleCo</a>, which is given exactly the same u.<p> Designating the three atoms as <img class="formulaInl" alt="$a$" src="form_11.png">, <img class="formulaInl" alt="$b$" src="form_12.png">, and <img class="formulaInl" alt="$c$" src="form_17.png"> and their cartesian positions as <img class="formulaInl" alt="$\bar{r}_a$" src="form_13.png">, <img class="formulaInl" alt="$\bar{r}_b$" src="form_14.png">, and <img class="formulaInl" alt="$\bar{r}_c$" src="form_18.png">, the value of the coordinate, <img class="formulaInl" alt="$\theta_o$" src="form_42.png">, is given by<p> <p class="formulaDsp"> <img class="formulaDsp" alt="\[ \bar{u}_{ab} = \frac{\bar{r}_a - \bar{r}_b}{\| \bar{r}_a - \bar{r}_b \|}\]" src="form_20.png"> <p> <p class="formulaDsp"> <img class="formulaDsp" alt="\[ \bar{u}_{cb} = \frac{\bar{r}_b - \bar{r}_c}{\| \bar{r}_c - \bar{r}_b \|}\]" src="form_40.png"> <p> <p class="formulaDsp"> <img class="formulaDsp" alt="\[ \bar{n} = \frac{\bar{u} \times \bar{u}_{ab}} {\| \bar{u} \times \bar{u}_{ab} \|}\]" src="form_43.png"> <p> <p class="formulaDsp"> <img class="formulaDsp" alt="\[ \theta_o = \pi - \arccos ( \bar{u}_{ab} \cdot \bar{n} ) - \arccos ( \bar{u}_{cb} \cdot \bar{n} )\]" src="form_44.png"> <p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="a2b54e8282098edc66fdbc8b02e4e663"></a><!-- doxytag: member="sc::LinOPSimpleCo::LinOPSimpleCo" ref="a2b54e8282098edc66fdbc8b02e4e663" args="(const char *refr, int, int, int, const SCVector3 &u)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">sc::LinOPSimpleCo::LinOPSimpleCo </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>refr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const SCVector3 & </td> <td class="paramname"> <em>u</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> 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. <p> 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. </div> </div><p> <a class="anchor" name="7dd6963fc43ae512a172bacd1b24beb7"></a><!-- doxytag: member="sc::LinOPSimpleCo::LinOPSimpleCo" ref="7dd6963fc43ae512a172bacd1b24beb7" args="(const Ref< KeyVal > &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">sc::LinOPSimpleCo::LinOPSimpleCo </td> <td>(</td> <td class="paramtype">const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1KeyVal.html">KeyVal</a> > & </td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> The <a class="el" href="classsc_1_1KeyVal.html" title="The KeyVal class is designed to simplify the process of allowing a user to specify...">KeyVal</a> constructor. <p> This calls the <a class="el" href="classsc_1_1SimpleCo.html" title="The SimpleCo abstract class describes a simple internal coordinate of a molecule...">SimpleCo</a> keyval constructor with an integer argument of 3. </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="simple_8h_source.html">simple.h</a></ul> </div> <hr> <address> <small> Generated at Wed Oct 14 14:12:13 2009 for <a href="http://www.mpqc.org">MPQC</a> 2.3.1 using the documentation package <a href="http://www.doxygen.org">Doxygen</a> 1.5.9. </small> </address> </body> </html>