Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > contrib > by-pkgid > 263386785cefb9ae5d63b926d214d809 > files > 221

mpqc-2.1.2-4mdk.ppc.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>sc::GaussianShell class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">
<!-- Generated by Doxygen 1.2.5 on Mon Oct 14 14:16:56 2002 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; </center>
<hr><h1>sc::GaussianShell  Class Reference</h1>A Gaussian orbital shell. 
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="gaussshell_h-source.html">gaussshell.h</a>&gt;</code>
<p>
Inheritance diagram for sc::GaussianShell<p><center><img src="class_sc__GaussianShell_inherit_graph.gif" border="0" usemap="#sc::GaussianShell_inherit_map" alt="Inheritance graph"></center>
<map name="sc::GaussianShell_inherit_map">
<area href="class_sc__SavableState.html" shape="rect" coords="21,214,122,233">
<area href="class_sc__DescribedClass.html" shape="rect" coords="14,147,129,166">
<area href="class_sc__RefCount.html" shape="rect" coords="30,81,113,99">
<area href="class_sc__Identity.html" shape="rect" coords="35,14,107,33">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for sc::GaussianShell:<p><center><img src="class_sc__GaussianShell_coll_graph.gif" border="0" usemap="#sc::GaussianShell_coll_map" alt="Collaboration graph"></center>
<map name="sc::GaussianShell_coll_map">
<area href="class_sc__SavableState.html" shape="rect" coords="21,214,122,233">
<area href="class_sc__DescribedClass.html" shape="rect" coords="14,147,129,166">
<area href="class_sc__RefCount.html" shape="rect" coords="30,81,113,99">
<area href="class_sc__Identity.html" shape="rect" coords="35,14,107,33">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="class_sc__GaussianShell-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><b>PrimitiveType</b> { <b>Normalized</b>, 
<b>Unnormalized</b>
 }</td></tr>
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><b>GaussianType</b> { <b>Cartesian</b>, 
<b>Pure</b>
 }</td></tr>
<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a0">GaussianShell</a> (int ncn, int nprm, double *e, int *am, int *pure, double **c, PrimitiveType pt=GaussianShell::Normalized)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>A <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> constructor.</em> <a href="#a0">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a1">GaussianShell</a> (int ncn, int nprm, double *e, int *am, GaussianType pure, double **c, PrimitiveType pt=GaussianShell::Normalized)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>A <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> constructor.</em> <a href="#a1">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a2" doxytag="sc::GaussianShell::GaussianShell"></a>
&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a2">GaussianShell</a> (const <a class="el" href="class_sc__Ref.html">Ref</a>&lt; <a class="el" href="class_sc__KeyVal.html">KeyVal</a> &gt; &amp;)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Construct a <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> from <a class="el" href="class_sc__KeyVal.html">KeyVal</a> input.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a3" doxytag="sc::GaussianShell::GaussianShell"></a>
&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a3">GaussianShell</a> (<a class="el" href="class_sc__StateIn.html">StateIn</a> &amp;)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Restore a <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> from a <a class="el" href="class_sc__StateIn.html">StateIn</a> object.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a4">GaussianShell</a> (const <a class="el" href="class_sc__Ref.html">Ref</a>&lt; <a class="el" href="class_sc__KeyVal.html">KeyVal</a> &gt; &amp;,int pure)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Construct a <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> from <a class="el" href="class_sc__KeyVal.html">KeyVal</a> input.</em> <a href="#a4">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a5" doxytag="sc::GaussianShell::~GaussianShell"></a>
&nbsp;</td><td valign=bottom><b>~GaussianShell</b> ()</td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a6">save_data_state</a> (<a class="el" href="class_sc__StateOut.html">StateOut</a> &amp;)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="class_sc__StateIn.html">StateIn</a> CTOR initializes them.</em> <a href="#a6">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a7" doxytag="sc::GaussianShell::nprimitive"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a7">nprimitive</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The number of primitive Gaussian shells.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a8" doxytag="sc::GaussianShell::ncontraction"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a8">ncontraction</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The number of contractions formed from the primitives.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a9" doxytag="sc::GaussianShell::nfunction"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a9">nfunction</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The number of basis functions.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a10" doxytag="sc::GaussianShell::max_angular_momentum"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a10">max_angular_momentum</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The maximum angular momentum in the shell.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a11" doxytag="sc::GaussianShell::min_angular_momentum"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a11">min_angular_momentum</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The minimum angular momentum in the shell.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a12" doxytag="sc::GaussianShell::max_cartesian"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a12">max_cartesian</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The maximum number of Cartesian functions in any contraction.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a13" doxytag="sc::GaussianShell::am"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a13">am</a> (int con) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The angular momentum of the given contraction.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a14" doxytag="sc::GaussianShell::max_am"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a14">max_am</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The maximum angular momentum of any contraction.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a15" doxytag="sc::GaussianShell::min_am"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a15">min_am</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The minimum angular momentum of any contraction.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a16" doxytag="sc::GaussianShell::amchar"></a>
char&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a16">amchar</a> (int con) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The character symbol for the angular momentum of the given contraction.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a17" doxytag="sc::GaussianShell::nfunction"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a17">nfunction</a> (int con) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The number of basis functions coming from the given contraction.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a18" doxytag="sc::GaussianShell::ncartesian"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a18">ncartesian</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The total number of functions if this shell was Cartesian.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a19" doxytag="sc::GaussianShell::ncartesian_with_aminc"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a19">ncartesian_with_aminc</a> (int aminc) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The total number of Cartesian functions if this shift is applied to all of the angular momentums.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a20" doxytag="sc::GaussianShell::ncartesian"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a20">ncartesian</a> (int con) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>The number of Cartesian functions for the given contraction.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a21" doxytag="sc::GaussianShell::is_cartesian"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a21">is_cartesian</a> (int con) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns nonzero if contraction con is Cartesian.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a22" doxytag="sc::GaussianShell::is_pure"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a22">is_pure</a> (int con) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns nonzero if contraction con is solid harmonics.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a23" doxytag="sc::GaussianShell::has_pure"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a23">has_pure</a> () const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns nonzero if any contraction is solid harmonics.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a24" doxytag="sc::GaussianShell::coefficient_unnorm"></a>
double&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a24">coefficient_unnorm</a> (int con, int prim) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the contraction coef for unnormalized primitives.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a25" doxytag="sc::GaussianShell::coefficient_norm"></a>
double&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a25">coefficient_norm</a> (int con, int prim) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the contraction coef for normalized primitives.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a26" doxytag="sc::GaussianShell::exponent"></a>
double&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a26">exponent</a> (int iprim) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the exponent of the given primitive.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a27">values</a> (<a class="el" href="class_sc__CartesianIter.html">CartesianIter</a> **, <a class="el" href="class_sc__SphericalTransformIter.html">SphericalTransformIter</a> **, const SCVector3 &amp;r, double *basis_values)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em><a class="el" href="class_sc__Compute.html">Compute</a> the values for this shell at position r.</em> <a href="#a27">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a28" doxytag="sc::GaussianShell::grad_values"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a28">grad_values</a> (<a class="el" href="class_sc__CartesianIter.html">CartesianIter</a> **, <a class="el" href="class_sc__SphericalTransformIter.html">SphericalTransformIter</a> **, const SCVector3 &amp;R, double *g_values, double *basis_values=0) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Like values(...), but computes gradients of the basis function values, too.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a29" doxytag="sc::GaussianShell::hessian_values"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a29">hessian_values</a> (<a class="el" href="class_sc__CartesianIter.html">CartesianIter</a> **, <a class="el" href="class_sc__SphericalTransformIter.html">SphericalTransformIter</a> **, const SCVector3 &amp;R, double *h_values, double *g_values=0, double *basis_values=0) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Like values(...), but computes first and second derivatives of the basis function values, too.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a30" doxytag="sc::GaussianShell::relative_overlap"></a>
double&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a30">relative_overlap</a> (const <a class="el" href="class_sc__Ref.html">Ref</a>&lt; <a class="el" href="class_sc__Integral.html">Integral</a> &gt; &amp;, int con, int func1, int func2) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the intra-generalized-contraction overlap matrix element &lt;con func1|con func2&gt; within an arbitrary constant for the shell.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>double&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a31">relative_overlap</a> (int con, int a1, int b1, int c1, int a2, int b2, int c2) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the intra-generalized-contraction overlap matrix element &lt;con func1|con func2&gt; within an arbitrary constant for the shell.</em> <a href="#a31">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a32" doxytag="sc::GaussianShell::equiv"></a>
int&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a32">equiv</a> (const GaussianShell *s)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns true if this and the argument are equivalent.</em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>double&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a33">extent</a> (double threshold) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns a radius.</em> <a href="#a33">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>double&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a34">monobound</a> (double r) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns a bound for the basis function.</em> <a href="#a34">More...</a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a name="a35" doxytag="sc::GaussianShell::print"></a>
void&nbsp;</td><td valign=bottom><a class="el" href="class_sc__GaussianShell.html#a35">print</a> (std::ostream &amp;=ExEnv::out0()) const</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Print the object.</em></font><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A Gaussian orbital shell.
<p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a name="a0" doxytag="sc::GaussianShell::GaussianShell"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
sc::GaussianShell::GaussianShell (
          </b></td>
          <td valign="bottom"><b>
int <em>ncn</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>nprm</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
double * <em>e</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int * <em>am</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int * <em>pure</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
double ** <em>c</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
PrimitiveType <em>pt</em> = GaussianShell::Normalized&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
A <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> constructor.
<p>
Users of <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> must pass pointers to newed memory that is kept by <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> and deleted by the destructor. The arguments for the following ctor are: \begin{itemize} \item ncn is the number of contracted functions (1 except for SP and gen. con.) \item nprm is the number of primitives \item e gives the exponents (length nprm) \item am gives the angular momentum (length ncn) \item pure is 1 for pure am and 0 for cartesian (length ncn) \item c are the contraction coefficients (length ncn by nprm) \item pt describes whether the primitive functions are to be considered normalized or unnormalized. This effects whether or not c is manipulated to give the correct normalization. \end{itemize}     </td>
  </tr>
</table>
<a name="a1" doxytag="sc::GaussianShell::GaussianShell"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
sc::GaussianShell::GaussianShell (
          </b></td>
          <td valign="bottom"><b>
int <em>ncn</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>nprm</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
double * <em>e</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int * <em>am</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
GaussianType <em>pure</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
double ** <em>c</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
PrimitiveType <em>pt</em> = GaussianShell::Normalized&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
A <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> constructor.
<p>
In this ctor pure is either GaussianShell::Cartesian or Gaussian::Pure and all of the contracted functions are treated in that way. (The user doesn\'t need to compute generate a int*pure vector in this case.)     </td>
  </tr>
</table>
<a name="a4" doxytag="sc::GaussianShell::GaussianShell"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
sc::GaussianShell::GaussianShell (
          </b></td>
          <td valign="bottom"><b>
const <a class="el" href="class_sc__Ref.html">Ref</a>&lt; <a class="el" href="class_sc__KeyVal.html">KeyVal</a> &gt; &amp;, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>pure</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Construct a <a class="el" href="class_sc__GaussianShell.html">GaussianShell</a> from <a class="el" href="class_sc__KeyVal.html">KeyVal</a> input.
<p>
If pure is nonzero Cartesian functions will be used, otherwise, solid harmonics will be used.     </td>
  </tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a name="a33" doxytag="sc::GaussianShell::extent"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
double sc::GaussianShell::extent (
          </b></td>
          <td valign="bottom"><b>
double <em>threshold</em>&nbsp;) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns a radius.
<p>
All functions in the shell are below threshold outside this radius.     </td>
  </tr>
</table>
<a name="a34" doxytag="sc::GaussianShell::monobound"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
double sc::GaussianShell::monobound (
          </b></td>
          <td valign="bottom"><b>
double <em>r</em>&nbsp;) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns a bound for the basis function.
<p>
This bound is defined so that it is positive and monotonically decreasing as a function of r.     </td>
  </tr>
</table>
<a name="a31" doxytag="sc::GaussianShell::relative_overlap"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
double sc::GaussianShell::relative_overlap (
          </b></td>
          <td valign="bottom"><b>
int <em>con</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>a1</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>b1</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>c1</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>a2</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>b2</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
int <em>c2</em>&nbsp;) const
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns the intra-generalized-contraction overlap matrix element &lt;con func1|con func2&gt; within an arbitrary constant for the shell.
<p>
func1 and func2 are determined according to the axis exponents, a1, b1, c1, a2, b2, and c2.     </td>
  </tr>
</table>
<a name="a6" doxytag="sc::GaussianShell::save_data_state"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
void sc::GaussianShell::save_data_state (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="class_sc__StateOut.html">StateOut</a> &amp; <em>s</em>&nbsp;)<code> [virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="class_sc__StateIn.html">StateIn</a> CTOR initializes them.
<p>
This must be implemented by the derived class if the class has data. 
<p>
Reimplemented from <a class="el" href="class_sc__SavableState.html#a5">sc::SavableState</a>.    </td>
  </tr>
</table>
<a name="a27" doxytag="sc::GaussianShell::values"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td nowrap valign="top"><b> 
int sc::GaussianShell::values (
          </b></td>
          <td valign="bottom"><b>
<a class="el" href="class_sc__CartesianIter.html">CartesianIter</a> **, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
<a class="el" href="class_sc__SphericalTransformIter.html">SphericalTransformIter</a> **, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
const SCVector3 &amp; <em>r</em>, 
          </b></td>
        </tr>
        <tr>
          <td></td>
          <td><b>
double * <em>basis_values</em>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<a class="el" href="class_sc__Compute.html">Compute</a> the values for this shell at position r.
<p>
The basis_values argument must be vector of length <a class="el" href="class_sc__GaussianShell.html#a9">nfunction</a>().     </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="gaussshell_h-source.html">gaussshell.h</a></ul>
<hr>
<address>
<small>

Generated at Mon Oct 14 14:16:57 2002 for <a
href="http://aros.ca.sandia.gov/~cljanss/mpqc">MPQC</a>
2.1.2 using the documentation package <a
href="http://www.stack.nl/~dimitri/doxygen/index.html">Doxygen</a>
1.2.5.

</small>
</address>
</body>
</html>