Provided by: libsc-doc_2.3.1-22_all bug

NAME

       sc::DenIntegrator - An abstract base class for integrating the electron density.

SYNOPSIS

       #include <integrator.h>

       Inherits sc::SavableState.

       Inherited by sc::RadialAngularIntegrator.

   Public Member Functions
       DenIntegrator ()
           Construct a new DenIntegrator.
       DenIntegrator (const Ref< KeyVal > &)
           Construct a new DenIntegrator given the KeyVal input.
       DenIntegrator (StateIn &)
           Construct a new DenIntegrator given the StateIn data.
       void save_data_state (StateOut &)
           Save the base classes (with save_data_state) and the members in the same order that
           the StateIn CTOR initializes them.
       Ref< Wavefunction > wavefunction () const
           Returns the wavefunction used for the integration.
       double value () const
           Returns the result of the integration.
       void set_accuracy (double a)
           Sets the accuracy to use in the integration.
       double get_accuracy (void)
       void set_compute_potential_integrals (int)
           Call with non zero if the potential integrals are to be computed.
       const double * alpha_vmat () const
           Returns the alpha potential integrals.
       const double * beta_vmat () const
           Returns the beta potential integrals.
       virtual void init (const Ref< Wavefunction > &)
           Called before integrate.
       virtual void done ()
           Must be called between calls to init.
       virtual void integrate (const Ref< DenFunctional > &, const RefSymmSCMatrix &densa=0,
           const RefSymmSCMatrix &densb=0, double *nuclear_grad=0)=0
           Performs the integration of the given functional using the given alpha and beta
           density matrices.

   Protected Member Functions
       void init_integration (const Ref< DenFunctional > &func, const RefSymmSCMatrix &densa,
           const RefSymmSCMatrix &densb, double *nuclear_gradient)
       void done_integration ()
       void init_object ()

   Protected Attributes
       Ref< Wavefunction > wfn_
       Ref< BatchElectronDensity > den_
       Ref< ThreadGrp > threadgrp_
       Ref< MessageGrp > messagegrp_
       double value_
       double accuracy_
       double * alpha_vmat_
       double * beta_vmat_
       int spin_polarized_
       int need_density_
       double density_
       int nbasis_
       int nshell_
       int n_integration_center_
       int natom_
       int compute_potential_integrals_
       int linear_scaling_
       int use_dmat_bound_

   Additional Inherited Members

Detailed Description

       An abstract base class for integrating the electron density.

Member Function Documentation

   const double* sc::DenIntegrator::alpha_vmat () const [inline]
       Returns the alpha potential integrals. Stored as the lower triangular, row-major format.

   const double* sc::DenIntegrator::beta_vmat () const [inline]
       Returns the beta potential integrals. Stored as the lower triangular, row-major format.

   virtual void sc::DenIntegrator::init (const Ref< Wavefunction > &) [virtual]
       Called before integrate. Does not need to be called again unless the geometry changes or
       done is called.

   virtual void sc::DenIntegrator::integrate (const Ref< DenFunctional > &, const RefSymmSCMatrix
       & densa = 0, const RefSymmSCMatrix & densb = 0, double * nuclear_grad = 0) [pure virtual]
       Performs the integration of the given functional using the given alpha and beta density
       matrices. The nuclear derivative contribution is placed in nuclear_grad, if it is non-
       null.

       Implemented in sc::RadialAngularIntegrator.

   void sc::DenIntegrator::save_data_state (StateOut &) [virtual]
       Save the base classes (with save_data_state) and the members in the same order that the
       StateIn CTOR initializes them. This must be implemented by the derived class if the class
       has data.

       Reimplemented from sc::SavableState.

       Reimplemented in sc::RadialAngularIntegrator.

   void sc::DenIntegrator::set_compute_potential_integrals (int)
       Call with non zero if the potential integrals are to be computed. They can be returned
       with the vmat() member.

Author

       Generated automatically by Doxygen for MPQC from the source code.