28#ifndef _chemistry_qc_intcca_intcca_h
29#define _chemistry_qc_intcca_intcca_h
32#include <chemistry/qc/basis/integral.h>
33#include <Chemistry_QC_GaussianBasis_IntegralEvaluatorFactory.hh>
34#include <Chemistry_Chemistry_Molecule.hh>
35#include <chemistry/molecule/molecule.h>
36#include <chemistry/qc/basis/transform.h>
37#include <chemistry/qc/basis/cartiter.h>
39using namespace Chemistry::QC::GaussianBasis;
48 gov::cca::ComponentID fac_id_;
49 gov::cca::ConnectionID fac_con_;
51 Chemistry::Chemistry_Molecule molecule_;
52 std::string factory_type_;
58 void free_transforms();
59 void initialize_transforms();
60 IntegralEvaluatorFactory eval_factory_;
65 IntegralCCA(IntegralEvaluatorFactory eval_factory,
bool use_opaque,
107 int inv=0,
int subl=-1);
CartesianIter gives the ordering of the Cartesian functions within a shell for the particular integra...
Definition cartiter.h:39
IntegralCCA provides an SC client for CCA IntegralEvaluator components.
Definition intcca.h:44
Ref< OneBodyInt > dipole(const Ref< DipoleData > &=0)
Return a OneBodyInt that computes electric dipole moment integrals.
Ref< OneBodyInt > point_charge(const Ref< PointChargeData > &=0)
Return a OneBodyInt that computes the integrals for interactions with point charges.
const SphericalTransform * spherical_transform(int l, int inv=0, int subl=-1)
Return a SphericalTransform object.
Ref< OneBodyInt > hcore()
Return a OneBodyInt that computes the core Hamiltonian integrals.
Integral * clone()
Clones the given Integral factory. The new factory may need to have set_basis and set_storage to be c...
RedundantCartesianSubIter * new_redundant_cartesian_sub_iter(int)
Return a RedundantCartesianSubIter object.
Ref< OneBodyDerivInt > nuclear_deriv()
Return a OneBodyDerivInt that computes nuclear repulsion derivatives.
Ref< OneBodyDerivInt > overlap_deriv()
Return a OneBodyDerivInt that computes overlap derivatives.
Ref< TwoBodyDerivInt > electron_repulsion_deriv()
Return a TwoBodyDerivInt that computes electron repulsion derivatives.
void set_basis(const Ref< GaussianBasisSet > &b1, const Ref< GaussianBasisSet > &b2=0, const Ref< GaussianBasisSet > &b3=0, const Ref< GaussianBasisSet > &b4=0)
Set the basis set for each center.
IntegralCCA(IntegralEvaluatorFactory eval_factory, bool use_opaque, const Ref< GaussianBasisSet > &b1=0, const Ref< GaussianBasisSet > &b2=0, const Ref< GaussianBasisSet > &b3=0, const Ref< GaussianBasisSet > &b4=0)
This constructor is used when the framework is not embedded.
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
RedundantCartesianIter * new_redundant_cartesian_iter(int)
Return a RedundantCartesianIter object.
Ref< OneBodyInt > efield_dot_vector(const Ref< EfieldDotVectorData > &=0)
Return a OneBodyInt that computes the electric field integrals dotted with a given vector.
CartesianIter * new_cartesian_iter(int)
Return a CartesianIter object.
IntegralCCA(const Ref< KeyVal > &)
The KeyVal constructor.
Ref< OneBodyDerivInt > kinetic_deriv()
Return a OneBodyDerivInt that computes kinetic energy derivatives.
Ref< OneBodyInt > quadrupole(const Ref< DipoleData > &=0)
Return a OneBodyInt that computes electric quadrupole moment integrals.
Ref< TwoBodyInt > electron_repulsion()
Return a TwoBodyInt that computes electron repulsion integrals.
Ref< OneBodyInt > kinetic()
Return a OneBodyInt that computes the kinetic energy.
Ref< OneBodyInt > nuclear()
Return a OneBodyInt that computes the nuclear repulsion integrals.
SphericalTransformIter * new_spherical_transform_iter(int l, int inv=0, int subl=-1)
Return a SphericalTransformIter object.
Ref< OneBodyDerivInt > hcore_deriv()
Return a OneBodyDerivInt that computes core Hamiltonian derivatives.
Ref< OneBodyInt > overlap()
Return a OneBodyInt that computes the overlap.
The Integral abstract class acts as a factory to provide objects that compute one and two electron in...
Definition integral.h:58
RedundantCartesianIter objects loop through all possible combinations of a given number of axes.
Definition cartiter.h:80
Like RedundantCartesianIter, except a, b, and c are fixed to a given value.
Definition cartiter.h:170
A template class that maintains references counts.
Definition ref.h:332
Restores objects that derive from SavableState.
Definition statein.h:70
Serializes objects that derive from SavableState.
Definition stateout.h:61