MPQC 2.3.1

- Main Page
- Related Pages
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
sc::SphericalTransform Class Referenceabstract

This is a base class for a container for a sparse Cartesian to solid harmonic basis function transformation. More...

`#include <transform.h>`

Inheritance diagram for sc::SphericalTransform:
[legend]
Collaboration diagram for sc::SphericalTransform:
[legend]

## Public Member Functions
void | add (int a, int b, int c, double coef, int pureindex)
| Adds another SphericalTransformComponent.
int | cartindex (int i) const
| Returns the Cartesian basis function index of component i.
int | pureindex (int i) const
| Returns the solid harmonic basis function index of component i.
double | coef (int i) const
| Returns the transform coefficient of component i.
int | a (int i) const
| Returns the Cartesian basis function's x exponent of component i.
int | b (int i) const
| Returns the Cartesian basis function's y exponent of component i.
int | c (int i) const
| Returns the Cartesian basis function's z exponent of component i.
int | l () const
| Returns the angular momentum.
int | n () const
| Returns the number of components in the transformation.
virtual SphericalTransformComponent * | new_components ()=0
| This must create SphericalTransformComponent's of the appropriate specialization. More...

## Protected Member Functions
| SphericalTransform (int l, int subl=-1)
| This constructs the SphericalTransform for the given Cartesian angular momentum l and solid harmonic angular momentum subl. More...
virtual void | init ()
| This determines all of the components of the transformation. More...

## Protected Attributes
int | n_
int | l_
int | subl_
SphericalTransformComponent * | components_

## Detailed Description

This is a base class for a container for a sparse Cartesian to solid harmonic basis function transformation.

## Constructor & Destructor Documentation

sc::SphericalTransform::SphericalTransform | ( | int | l,
|  | int | subl = `-1`
| ) |  |
| protected

This constructs the SphericalTransform for the given Cartesian angular momentum l and solid harmonic angular momentum subl.

Usually, l and subl will be the same. They would differ when the S component of a D Cartesian shell or the P component of an F Cartesian shell is desired, for example (see the natural atomic orbital code for an example of such use). The init member must be called to complete initialization.

## Member Function Documentation

virtual void sc::SphericalTransform::init | ( |  | ) |
| protected virtual

This determines all of the components of the transformation.

It should be possible to implement the SphericalTransformComponent::init specialization in such a way that the default SphericalTransform::init can be used.

Reimplemented in sc::ISphericalTransform.

virtual SphericalTransformComponent* sc::SphericalTransform::new_components | ( |  | ) |
| pure virtual

This must create SphericalTransformComponent's of the appropriate specialization.

Implemented in sc::ISphericalTransformCints, sc::ISphericalTransformV3, sc::ISphericalTransformCCA, sc::SphericalTransformCints, sc::SphericalTransformV3, and sc::SphericalTransformCCA.

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

- chemistry/qc/basis/transform.h