#include <integrator.h>
Inheritance diagram for sc::RadialAngularIntegrator:
Public Member Functions | |
RadialAngularIntegrator (const Ref< KeyVal > &) | |
Construct a RadialAngularIntegrator from KeyVal input. | |
RadialAngularIntegrator (StateIn &) | |
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. | |
void | integrate (const Ref< DenFunctional > &, const RefSymmSCMatrix &densa=0, const RefSymmSCMatrix &densb=0, double *nuclear_gradient=0) |
Performs the integration of the given functional using the given alpha and beta density matrices. | |
void | print (std::ostream &=ExEnv::out0()) const |
Print the object. | |
AngularIntegrator * | get_angular_grid (double radius, double atomic_radius, int charge, int deriv_order) |
RadialIntegrator * | get_radial_grid (int charge, int deriv_order) |
void | init_default_grids (void) |
int | angular_grid_offset (int i) |
void | set_grids (void) |
int | get_atomic_row (int i) |
void | init_parameters (void) |
void | init_parameters (const Ref< KeyVal > &keyval) |
void | init_pruning_coefficients (const Ref< KeyVal > &keyval) |
void | init_pruning_coefficients (void) |
void | init_alpha_coefficients (void) |
int | select_dynamic_grid (void) |
Ref< IntegrationWeight > | weight () |
Protected Attributes | |
Ref< IntegrationWeight > | weight_ |
Ref< RadialIntegrator > | radial_user_ |
Ref< AngularIntegrator > | angular_user_ |
Ref< AngularIntegrator > *** | angular_grid_ |
Ref< RadialIntegrator > ** | radial_grid_ |
Construct a RadialAngularIntegrator from KeyVal input.
The accepted keyword are listed below. The most important keyword is grid
. The dynamic
and prune_grid
options may be of occassional interest.
grid
xcoarse
, coarse
, medium
, fine
, xfine
, and ultrafine
, in order of increasing accuracy and cost. The default is fine
.
dynamic
grid
value as more accuracy is required, when the calculation is close to convergence. The default is true.
prune_grid
angular_points
and alpha_coeffs
keywords.
radial
grid
and dynamic
keywords will not affect the radial grid. The default is controlled by other options, but is always one of several EulerMaclaurinRadialIntegrator objects.
angular
grid
, prune_grid
, and dynamic
keywords will not affect the angular grid. The default is controlled by other options, but is always one of several LebedevLaikovIntegrator objects.
weight
void sc::RadialAngularIntegrator::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::DenIntegrator.
void sc::RadialAngularIntegrator::integrate | ( | const Ref< DenFunctional > & | , | |
const RefSymmSCMatrix & | densa = 0 , |
|||
const RefSymmSCMatrix & | densb = 0 , |
|||
double * | nuclear_grad = 0 | |||
) | [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.
Implements sc::DenIntegrator.