Man Linux: Main Page and Category List

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_

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.