<!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::SumDenFunctional 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_1SumDenFunctional.html">SumDenFunctional</a> </div> </div> <div class="contents"> <h1>sc::SumDenFunctional Class Reference</h1><!-- doxytag: class="sc::SumDenFunctional" --><!-- doxytag: inherits="sc::DenFunctional" -->The <a class="el" href="classsc_1_1SumDenFunctional.html" title="The SumDenFunctional computes energies and densities using the a sum of energy density...">SumDenFunctional</a> computes energies and densities using the a sum of energy density functions method. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="functional_8h_source.html">functional.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for sc::SumDenFunctional:</div> <div class="dynsection"> <p><center><img src="classsc_1_1SumDenFunctional.png" usemap="#sc::SumDenFunctional_map" border="0" alt=""></center> <map name="sc::SumDenFunctional_map"> <area href="classsc_1_1DenFunctional.html" alt="sc::DenFunctional" shape="rect" coords="0,224,137,248"> <area href="classsc_1_1SavableState.html" alt="sc::SavableState" shape="rect" coords="0,168,137,192"> <area href="classsc_1_1DescribedClass.html" alt="sc::DescribedClass" shape="rect" coords="0,112,137,136"> <area href="classsc_1_1RefCount.html" alt="sc::RefCount" shape="rect" coords="0,56,137,80"> <area href="classsc_1_1Identity.html" alt="sc::Identity" shape="rect" coords="0,0,137,24"> <area href="classsc_1_1StdDenFunctional.html" alt="sc::StdDenFunctional" shape="rect" coords="0,336,137,360"> </map> </div> <p> <a href="classsc_1_1SumDenFunctional-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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SumDenFunctional.html#ad4f107f4e8bd48847d56534780378a3">SumDenFunctional</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">This <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 reads the following keywords:. <a href="#ad4f107f4e8bd48847d56534780378a3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2fbf397e10815cb7333fa412acc2cccc"></a><!-- doxytag: member="sc::SumDenFunctional::SumDenFunctional" ref="2fbf397e10815cb7333fa412acc2cccc" args="(StateIn &)" --> </td><td class="memItemRight" valign="bottom"><b>SumDenFunctional</b> (<a class="el" href="classsc_1_1StateIn.html">StateIn</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SumDenFunctional.html#b94ff40fca2c681d18735af77b9a8887">save_data_state</a> (<a class="el" href="classsc_1_1StateOut.html">StateOut</a> &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="classsc_1_1StateIn.html" title="Restores objects that derive from SavableState.">StateIn</a> CTOR initializes them. <a href="#b94ff40fca2c681d18735af77b9a8887"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="876139fa99aa51821b5e693f2a0dc20a"></a><!-- doxytag: member="sc::SumDenFunctional::set_spin_polarized" ref="876139fa99aa51821b5e693f2a0dc20a" args="(int)" --> void </td><td class="memItemRight" valign="bottom"><b>set_spin_polarized</b> (int)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5d33986e650ca94b345e93242431d94e"></a><!-- doxytag: member="sc::SumDenFunctional::set_compute_potential" ref="5d33986e650ca94b345e93242431d94e" args="(int)" --> void </td><td class="memItemRight" valign="bottom"><b>set_compute_potential</b> (int)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d530efd8bfb50ce7d0739069c1517b4d"></a><!-- doxytag: member="sc::SumDenFunctional::need_density_gradient" ref="d530efd8bfb50ce7d0739069c1517b4d" args="()" --> int </td><td class="memItemRight" valign="bottom"><b>need_density_gradient</b> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c5c3390de1a1415d39b05b64e2918602"></a><!-- doxytag: member="sc::SumDenFunctional::point" ref="c5c3390de1a1415d39b05b64e2918602" args="(const PointInputData &, PointOutputData &)" --> void </td><td class="memItemRight" valign="bottom"><b>point</b> (const <a class="el" href="structsc_1_1PointInputData.html">PointInputData</a> &, <a class="el" href="structsc_1_1PointOutputData.html">PointOutputData</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="14e9b79e9c64aeb71fd98d506fbc3a67"></a><!-- doxytag: member="sc::SumDenFunctional::print" ref="14e9b79e9c64aeb71fd98d506fbc3a67" args="(std::ostream &=ExEnv::out0()) const " --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SumDenFunctional.html#14e9b79e9c64aeb71fd98d506fbc3a67">print</a> (std::ostream &=ExEnv::out0()) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Print the object. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SumDenFunctional.html#b28014fb8835c8beb99676a3ce811093">a0</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Override the <a class="el" href="classsc_1_1DenFunctional.html#4725a705d39cdb7f4ba8ffc24115b91a" title="Returns the fraction of Hartee-Fock exchange to be included.">DenFunctional::a0()</a> member, so that a0's in contributing functionals can be added in as well. <a href="#b28014fb8835c8beb99676a3ce811093"></a><br></td></tr> <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="17270bcdc59c93081dac1b75f9e9a210"></a><!-- doxytag: member="sc::SumDenFunctional::n_" ref="17270bcdc59c93081dac1b75f9e9a210" args="" --> int </td><td class="memItemRight" valign="bottom"><b>n_</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f9c337a4ced6a219a0a8e01f1c623e38"></a><!-- doxytag: member="sc::SumDenFunctional::funcs_" ref="f9c337a4ced6a219a0a8e01f1c623e38" args="" --> <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1DenFunctional.html">DenFunctional</a> > * </td><td class="memItemRight" valign="bottom"><b>funcs_</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="123201da7cddcf6e8a966d8d802c7637"></a><!-- doxytag: member="sc::SumDenFunctional::coefs_" ref="123201da7cddcf6e8a966d8d802c7637" args="" --> double * </td><td class="memItemRight" valign="bottom"><b>coefs_</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The <a class="el" href="classsc_1_1SumDenFunctional.html" title="The SumDenFunctional computes energies and densities using the a sum of energy density...">SumDenFunctional</a> computes energies and densities using the a sum of energy density functions method. <p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="ad4f107f4e8bd48847d56534780378a3"></a><!-- doxytag: member="sc::SumDenFunctional::SumDenFunctional" ref="ad4f107f4e8bd48847d56534780378a3" args="(const Ref< KeyVal > &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">sc::SumDenFunctional::SumDenFunctional </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> This <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 reads the following keywords:. <p> <dl> <dt><code>funcs</code></dt> <dd>Specifies an array of <a class="el" href="classsc_1_1DenIntegrator.html" title="An abstract base class for integrating the electron density.">DenIntegrator</a> objects. </dd> <dt><code>coefs</code></dt> <dd>Specifies the coefficient of each <a class="el" href="classsc_1_1DenIntegrator.html" title="An abstract base class for integrating the electron density.">DenIntegrator</a> object. </dd> <dt><code>a0</code></dt> <dd>Specifies the coefficient of the Hartree-Fock exchange. This is nonzero for hybrid functionals. The default is zero.<p> </dd> </dl> <p> For example, the B3LYP functional can be specified with the following input: <pre> functional<<a class="el" href="classsc_1_1SumDenFunctional.html" title="The SumDenFunctional computes energies and densities using the a sum of energy density...">SumDenFunctional</a>>: ( a0 = 0.2 coefs = [ 0.8 0.72 0.19 0.81 ] funcs: [ <<a class="el" href="classsc_1_1SlaterXFunctional.html" title="Implements the Slater exchange functional.">SlaterXFunctional</a>>:() <<a class="el" href="classsc_1_1Becke88XFunctional.html" title="Implements Becke's 1988 exchange functional.">Becke88XFunctional</a>>:() <<a class="el" href="classsc_1_1VWN1LCFunctional.html" title="The VWN1LCFunctional computes energies and densities using the VWN1 local correlation...">VWN1LCFunctional</a>>:( rpa = 1 ) <<a class="el" href="classsc_1_1LYPCFunctional.html" title="Implements the Lee, Yang, and Parr functional.">LYPCFunctional</a>>:() ] ) </pre> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="b28014fb8835c8beb99676a3ce811093"></a><!-- doxytag: member="sc::SumDenFunctional::a0" ref="b28014fb8835c8beb99676a3ce811093" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">double sc::SumDenFunctional::a0 </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Override the <a class="el" href="classsc_1_1DenFunctional.html#4725a705d39cdb7f4ba8ffc24115b91a" title="Returns the fraction of Hartee-Fock exchange to be included.">DenFunctional::a0()</a> member, so that a0's in contributing functionals can be added in as well. <p> <p>Reimplemented from <a class="el" href="classsc_1_1DenFunctional.html#4725a705d39cdb7f4ba8ffc24115b91a">sc::DenFunctional</a>.</p> </div> </div><p> <a class="anchor" name="b94ff40fca2c681d18735af77b9a8887"></a><!-- doxytag: member="sc::SumDenFunctional::save_data_state" ref="b94ff40fca2c681d18735af77b9a8887" args="(StateOut &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void sc::SumDenFunctional::save_data_state </td> <td>(</td> <td class="paramtype"><a class="el" href="classsc_1_1StateOut.html">StateOut</a> & </td> <td class="paramname"> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="classsc_1_1StateIn.html" title="Restores objects that derive from SavableState.">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="classsc_1_1DenFunctional.html#d4eedef269673357cfe99e6267a235da">sc::DenFunctional</a>.</p> <p>Reimplemented in <a class="el" href="classsc_1_1StdDenFunctional.html#74c2b5f68e264717013031e40bc383a1">sc::StdDenFunctional</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="functional_8h_source.html">functional.h</a></ul> </div> <hr> <address> <small> Generated at Wed Oct 14 14:12:14 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>