An abstract base class for computing grid weights. More...
#include <integrator.h>
Public Member Functions | |
| IntegrationWeight (const Ref< KeyVal > &) | |
| IntegrationWeight (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 | test (int icenter, SCVector3 &point) |
| void | test () |
| virtual void | init (const Ref< Molecule > &, double tolerance) |
| Initialize the integration weight object. | |
| virtual void | done () |
| Called when finished with the integration weight object. | |
| virtual double | w (int center, SCVector3 &point, double *grad_w=0)=0 |
| Computes the weight for a given center at a given point in space. | |
Protected Member Functions | |
| void | fd_w (int icenter, SCVector3 &point, double *fd_grad_w) |
Protected Attributes | |
| Ref< Molecule > | mol_ |
| double | tol_ |
An abstract base class for computing grid weights.
| void sc::IntegrationWeight::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::BeckeIntegrationWeight.
| virtual double sc::IntegrationWeight::w | ( | int | center, | |
| SCVector3 & | point, | |||
| double * | grad_w = 0 | |||
| ) | [pure virtual] |
Computes the weight for a given center at a given point in space.
Derivatives of the weigth with respect to nuclear coordinates are optionally returned in grad_w. This must be called after init, but before done. It must also be thread-safe.
Implemented in sc::BeckeIntegrationWeight.