#include <integrator.h>
Inheritance diagram for sc::DenIntegrator:
Public Methods | |
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. | |
~DenIntegrator () | |
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. More... | |
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. More... | |
const double * | alpha_vmat () const |
Returns the alpha potential integrals. More... | |
const double * | beta_vmat () const |
Returns the beta potential integrals. More... | |
virtual void | init (const Ref< Wavefunction > &) |
Called before integrate. More... | |
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. More... | |
Protected Methods | |
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< ShellExtent > | extent_ |
Ref< ThreadGrp > | threadgrp_ |
Ref< MessageGrp > | messagegrp_ |
double | value_ |
double | accuracy_ |
double * | alpha_vmat_ |
double * | beta_vmat_ |
double * | alpha_dmat_ |
double * | beta_dmat_ |
double * | dmat_bound_ |
int | spin_polarized_ |
int | need_density_ |
double | density_ |
int | nbasis_ |
int | nshell_ |
int | natom_ |
int | compute_potential_integrals_ |
int | linear_scaling_ |
int | use_dmat_bound_ |
|
Returns the alpha potential integrals. Stored as the lower triangular, row-major format. |
|
Returns the beta potential integrals. Stored as the lower triangular, row-major format. |
|
Called before integrate. Does not need to be called again unless the geometry changes or done is called. |
|
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. |
|
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. |
|
Call with non zero if the potential integrals are to be computed. They can be returned with the vmat() member. |