MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
sc::LebedevLaikovIntegrator Class Reference

An implementation of a Lebedev angular integrator. More...

#include <chemistry/qc/dft/integrator.h>

Inheritance diagram for sc::LebedevLaikovIntegrator:
sc::AngularIntegrator sc::SavableState sc::DescribedClass sc::RefCount

Public Member Functions

 LebedevLaikovIntegrator (const Ref< KeyVal > &)
 Construct a LebedevLaikovIntegrator using the given KeyVal input.
 
 LebedevLaikovIntegrator (StateIn &)
 
 LebedevLaikovIntegrator (int)
 
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.
 
int nw (void) const
 
int num_angular_points (double r_value, int ir)
 
double angular_point_cartesian (int iangular, double r, SCVector3 &integration_point) const
 
void print (std::ostream &=ExEnv::out0()) const
 Print the object.
 
- Public Member Functions inherited from sc::AngularIntegrator
 AngularIntegrator (const Ref< KeyVal > &)
 
 AngularIntegrator (StateIn &)
 
- Public Member Functions inherited from sc::SavableState
SavableStateoperator= (const SavableState &)
 
void save_state (StateOut &)
 Save the state of the object as specified by the StateOut object.
 
void save_object_state (StateOut &)
 This can be used for saving state when the exact type of the object is known for both the save and the restore.
 
virtual void save_vbase_state (StateOut &)
 Save the virtual bases for the object.
 
- Public Member Functions inherited from sc::DescribedClass
 DescribedClass (const DescribedClass &)
 
DescribedClassoperator= (const DescribedClass &)
 
ClassDescclass_desc () const MPQC__NOEXCEPT
 This returns the unique pointer to the ClassDesc corresponding to the given type_info object.
 
const char * class_name () const
 Return the name of the object's exact type.
 
int class_version () const
 Return the version of the class.
 
Ref< DescribedClassref ()
 Return this object wrapped up in a Ref smart pointer.
 
- Public Member Functions inherited from sc::RefCount
size_t identifier () const
 Return the unique identifier for this object that can be compared for different objects of different types.
 
int lock_ptr () const
 Lock this object.
 
int unlock_ptr () const
 Unlock this object.
 
void use_locks (bool inVal)
 start and stop using locks on this object
 
refcount_t nreference () const
 Return the reference count.
 
refcount_t reference ()
 Increment the reference count and return the new count.
 
refcount_t dereference ()
 Decrement the reference count and return the new count.
 
int managed () const
 Return 1 if the object is managed. Otherwise return 0.
 

Protected Member Functions

void init (int n)
 
- Protected Member Functions inherited from sc::SavableState
 SavableState (const SavableState &)
 
 SavableState (StateIn &)
 Each derived class StateIn CTOR handles the restore corresponding to calling save_object_state, save_vbase_state, and save_data_state listed above.
 
- Protected Member Functions inherited from sc::RefCount
 RefCount (const RefCount &)
 
RefCountoperator= (const RefCount &)
 

Protected Attributes

int npoint_
 
double * x_
 
double * y_
 
double * z_
 
double * w_
 

Additional Inherited Members

- Static Public Member Functions inherited from sc::SavableState
static void save_state (SavableState *s, StateOut &)
 
static SavableStaterestore_state (StateIn &si)
 Restores objects saved with save_state.
 
static SavableStatekey_restore_state (StateIn &si, const char *keyword)
 Like restore_state, but keyword is used to override values while restoring.
 
static SavableStatedir_restore_state (StateIn &si, const char *objectname, const char *keyword=0)
 

Detailed Description

An implementation of a Lebedev angular integrator.

It uses code written by Dr. Dmitri N. Laikov.

This can generate grids with the following numbers of points: 6, 14, 26, 38, 50, 74, 86, 110, 146, 170, 194, 230, 266, 302, 350, 386, 434, 482, 530, 590, 650, 698, 770, 830, 890, 974, 1046, 1118, 1202, 1274, 1358, 1454, 1538, 1622, 1730, 1814, 1910, 2030, 2126, 2222, 2354, 2450, 2558, 2702, 2810, 2930, 3074, 3182, 3314, 3470, 3590, 3722, 3890, 4010, 4154, 4334, 4466, 4610, 4802, 4934, 5090, 5294, 5438, 5606, and 5810.

V.I. Lebedev, and D.N. Laikov "A quadrature formula for the sphere of the 131st algebraic order of accuracy" Doklady Mathematics, Vol. 59, No. 3, 1999, pp. 477-481.

V.I. Lebedev "A quadrature formula for the sphere of 59th algebraic order of accuracy" Russian Acad. Sci. Dokl. Math., Vol. 50, 1995, pp. 283-286.

V.I. Lebedev, and A.L. Skorokhodov "Quadrature formulas of orders 41, 47, and 53 for the sphere" Russian Acad. Sci. Dokl. Math., Vol. 45, 1992, pp. 587-592.

V.I. Lebedev "Spherical quadrature formulas exact to orders 25-29" Siberian Mathematical Journal, Vol. 18, 1977, pp. 99-107.

V.I. Lebedev "Quadratures on a sphere" Computational Mathematics and Mathematical Physics, Vol. 16, 1976, pp. 10-24.

V.I. Lebedev "Values of the nodes and weights of ninth to seventeenth order Gauss-Markov quadrature formulae invariant under the octahedron group with inversion" Computational Mathematics and Mathematical Physics, Vol. 15, 1975, pp. 44-51.

Constructor & Destructor Documentation

◆ LebedevLaikovIntegrator()

sc::LebedevLaikovIntegrator::LebedevLaikovIntegrator ( const Ref< KeyVal > & )

Construct a LebedevLaikovIntegrator using the given KeyVal input.

The n keyword gives the number of angular points. The default is 302.

Member Function Documentation

◆ angular_point_cartesian()

double sc::LebedevLaikovIntegrator::angular_point_cartesian ( int iangular,
double r,
SCVector3 & integration_point ) const
virtual

Implements sc::AngularIntegrator.

◆ num_angular_points()

int sc::LebedevLaikovIntegrator::num_angular_points ( double r_value,
int ir )
virtual

Implements sc::AngularIntegrator.

◆ nw()

int sc::LebedevLaikovIntegrator::nw ( void ) const
virtual

Implements sc::AngularIntegrator.

◆ print()

void sc::LebedevLaikovIntegrator::print ( std::ostream & = ExEnv::out0()) const
virtual

Print the object.

Reimplemented from sc::DescribedClass.

◆ save_data_state()

void sc::LebedevLaikovIntegrator::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::AngularIntegrator.


The documentation for this class was generated from the following file:

Generated at Wed Sep 25 2024 02:45:33 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.