sc::DenIntegrator(3)

πŸ“¦
version 2.3.1 Β· 5 versions
, in ubuntu jammy

🌸 NAME 🌸

okay bestie, welcome to the sc::DenIntegrator(3) page from the MPQC manual, section 3. This is an abstract base class for integrating the electron density. That's the whole name vibe: it's the blueprint, not the final boss. πŸ’…

✨ 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) β€” no extra description was given on the page, bestie; that's literally it.
  • 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) β€” no extra blurb on the page.
  • void done_integration () β€” no extra blurb on the page.
  • void init_object () β€” no extra blurb on the page.

πŸ¦‹ Protected Attributes πŸ¦‹

  • Ref< Wavefunction > wfn_ β€” protected attribute, listed exactly like that.
  • Ref< BatchElectronDensity > den_ β€” protected attribute, listed exactly like that.
  • Ref< ThreadGrp > threadgrp_ β€” protected attribute, listed exactly like that.
  • Ref< MessageGrp > messagegrp_ β€” protected attribute, listed exactly like that.
  • double value_ β€” protected attribute, listed exactly like that.
  • double accuracy_ β€” protected attribute, listed exactly like that.
  • double * alpha_vmat_ β€” protected attribute, listed exactly like that.
  • double * beta_vmat_ β€” protected attribute, listed exactly like that.
  • int spin_polarized_ β€” protected attribute, listed exactly like that.
  • int need_density_ β€” protected attribute, listed exactly like that.
  • double density_ β€” protected attribute, listed exactly like that.
  • int nbasis_ β€” protected attribute, listed exactly like that.
  • int nshell_ β€” protected attribute, listed exactly like that.
  • int n_integration_center_ β€” protected attribute, listed exactly like that.
  • int natom_ β€” protected attribute, listed exactly like that.
  • int compute_potential_integrals_ β€” protected attribute, listed exactly like that.
  • int linear_scaling_ β€” protected attribute, listed exactly like that.
  • int use_dmat_bound_ β€” protected attribute, listed exactly like that.

🌈 Additional Inherited Members 🌈

This heading is here to say there are additional inherited members, and then the detailed description follows. No extra inherited-member list appears on the original page.

πŸ’œ 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.


That's the whole sc::DenIntegrator(3) page, bestie. Cute sign-off: from the MPQC source, this is Version 2.3.1, dated Sun Oct 4 2020. 🫢✨

πŸ“¦ where this page comes from