Kindfield
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Friends Pages
Public Member Functions | List of all members
GaussianContractedOrbital Class Reference

#include <gaussiancontractedorbital.h>

Public Member Functions

 GaussianContractedOrbital ()
 
 GaussianContractedOrbital (const Vector3 &corePosition)
 
void addPrimitiveBasisFunction (const GaussianPrimitiveOrbital &primitive)
 
const GaussianPrimitiveOrbitalprimitiveBasisFunction (int index)
 
Vector3 corePosition () const
 
void setCorePosition (const Vector3 &corePosition)
 
const vector
< GaussianPrimitiveOrbital > & 
primitiveBasisFunctions () const
 
void setPrimitiveBasisFunctions (const vector< GaussianPrimitiveOrbital > &primitiveBasisFunctions)
 
double evaluated (const Vector3 &position) const
 

Detailed Description

Definition at line 13 of file gaussiancontractedorbital.h.

Constructor & Destructor Documentation

GaussianContractedOrbital::GaussianContractedOrbital ( )

Definition at line 5 of file gaussiancontractedorbital.cpp.

GaussianContractedOrbital::GaussianContractedOrbital ( const Vector3 corePosition)

Definition at line 10 of file gaussiancontractedorbital.cpp.

10  :
11  m_corePosition(corePosition)
12 {
13 
14 }

Member Function Documentation

void GaussianContractedOrbital::addPrimitiveBasisFunction ( const GaussianPrimitiveOrbital primitive)

Definition at line 16 of file gaussiancontractedorbital.cpp.

17 {
18  m_primitiveBasisFunctions.push_back(primitive);
19 }
Vector3 GaussianContractedOrbital::corePosition ( ) const

Definition at line 25 of file gaussiancontractedorbital.cpp.

26 {
27  return m_corePosition;
28 }
double GaussianContractedOrbital::evaluated ( const Vector3 position) const

Definition at line 44 of file gaussiancontractedorbital.cpp.

45 {
46  Vector3 diff = position - corePosition();
47  double rSquared = dot(diff, diff);
48  double result = 0;
49  for(uint i = 0; i < m_primitiveBasisFunctions.size(); i++) {
50  const GaussianPrimitiveOrbital &p = m_primitiveBasisFunctions.at(i);
51  result += p.weight() * pow(diff.x(), p.xExponent()) * pow (diff.y(), p.yExponent()) * pow(diff.z(), p.zExponent())
52  * exp(-p.exponent() * rSquared);
53  }
54  return result;
55 }
const GaussianPrimitiveOrbital & GaussianContractedOrbital::primitiveBasisFunction ( int  index)

Definition at line 21 of file gaussiancontractedorbital.cpp.

22 {
23  return m_primitiveBasisFunctions.at(index);
24 }
const vector< GaussianPrimitiveOrbital > & GaussianContractedOrbital::primitiveBasisFunctions ( ) const

Definition at line 34 of file gaussiancontractedorbital.cpp.

35 {
36  return m_primitiveBasisFunctions;
37 }
void GaussianContractedOrbital::setCorePosition ( const Vector3 corePosition)

Definition at line 30 of file gaussiancontractedorbital.cpp.

31 {
32  m_corePosition = corePosition;
33 }
void GaussianContractedOrbital::setPrimitiveBasisFunctions ( const vector< GaussianPrimitiveOrbital > &  primitiveBasisFunctions)

Definition at line 39 of file gaussiancontractedorbital.cpp.

40 {
41  m_primitiveBasisFunctions = primitiveBasisFunctions;
42 }

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