AtomicOrbitalInverter Class Reference

This class can invert any atomic orbital. More...

#include <AtomicOrbitalInverter.h>

List of all members.

Public Member Functions

 AtomicOrbitalInverter ()
 Creates a new uninitialized instance of this class.
void operator= (const AtomicOrbitalInverter &rhs)
 Copy the rhs oject into this current object.
void set_npoints (int points_r, int points_theta, int points_phi)
 Set the number of grid points in each cooridnant.
void initialize (int Xn, int Yn, int Zn, Array1D< double > B, Array1D< double > C)
 Initialize the total atomic orbital.
void get_xyz (double &x, double &y, double &z)
 Initialize the total atomic orbital.
double eval_gaussians (double r)
 Use the current b and c arrays to evaluate the gaussian part.
double invert_gaussians ()
 Invert the current gaussian part.

Private Attributes

Array1D< double > b
Array1D< double > c
Array1D< double > x_inp
Array1D< double > y_inp
int xn
int yn
int zn
double cutoff1
double cutoff2
double cutoff3
int npoints_r
int npoints_theta
int npoints_phi
DistributionInverter r_form
DistributionInverter theta_form
DistributionInverter phi_form


Detailed Description

This class can invert any atomic orbital.

Definition at line 33 of file AtomicOrbitalInverter.h.


Constructor & Destructor Documentation

AtomicOrbitalInverter::AtomicOrbitalInverter (  ) 

Creates a new uninitialized instance of this class.

Definition at line 15 of file AtomicOrbitalInverter.cpp.

References cutoff1, cutoff2, cutoff3, npoints_phi, npoints_r, and npoints_theta.


Member Function Documentation

void AtomicOrbitalInverter::operator= ( const AtomicOrbitalInverter rhs  ) 

Copy the rhs oject into this current object.

Parameters:
rhs object to set this equal to.

Definition at line 25 of file AtomicOrbitalInverter.cpp.

References cutoff1, cutoff2, cutoff3, npoints_phi, npoints_r, npoints_theta, phi_form, r_form, theta_form, xn, yn, and zn.

void AtomicOrbitalInverter::set_npoints ( int  points_r,
int  points_theta,
int  points_phi 
)

Set the number of grid points in each cooridnant.

Definition at line 42 of file AtomicOrbitalInverter.cpp.

References npoints_phi, npoints_r, and npoints_theta.

void AtomicOrbitalInverter::initialize ( int  Xn,
int  Yn,
int  Zn,
Array1D< double >  B,
Array1D< double >  C 
)

Initialize the total atomic orbital.

coeff array c and exponents b in: Sum(ci*exp(-bi*x^2)exp(-bi*y^2)exp(-bi*z^2),i)

Parameters:
Xn is the power on X
Yn is the power on Y
Zn is the power on Z
B is the array of the exponents
C is the array of the prefactors

Definition at line 49 of file AtomicOrbitalInverter.cpp.

References Array1D< T >::allocate(), b, c, cutoff1, cutoff2, cutoff3, Array1D< T >::dim1(), eval_gaussians(), DistributionInverter::initialize(), npoints_phi, npoints_r, npoints_theta, phi_form, PI, r_form, theta_form, xn, yn, and zn.

void AtomicOrbitalInverter::get_xyz ( double &  x,
double &  y,
double &  z 
)

Initialize the total atomic orbital.

Parameters:
BSC is the basis set coefficients given a uniform random number this will return the xyz coords

Definition at line 164 of file AtomicOrbitalInverter.cpp.

References invert_gaussians(), phi_form, PI, r_form, ran, DistributionInverter::random(), theta_form, and Random::unidev().

double AtomicOrbitalInverter::eval_gaussians ( double  r  ) 

Use the current b and c arrays to evaluate the gaussian part.

Definition at line 196 of file AtomicOrbitalInverter.cpp.

References b, c, and Array1D< T >::dim1().

Referenced by initialize().

double AtomicOrbitalInverter::invert_gaussians (  ) 

Invert the current gaussian part.

Definition at line 208 of file AtomicOrbitalInverter.cpp.

References b, c, Array1D< T >::dim1(), Random::gasdev(), PI, ran, and Random::unidev().

Referenced by get_xyz().


Member Data Documentation

Array1D<double> AtomicOrbitalInverter::b [private]

Definition at line 93 of file AtomicOrbitalInverter.h.

Referenced by eval_gaussians(), initialize(), and invert_gaussians().

Array1D<double> AtomicOrbitalInverter::c [private]

Definition at line 94 of file AtomicOrbitalInverter.h.

Referenced by eval_gaussians(), initialize(), and invert_gaussians().

Definition at line 95 of file AtomicOrbitalInverter.h.

Definition at line 96 of file AtomicOrbitalInverter.h.

Definition at line 97 of file AtomicOrbitalInverter.h.

Referenced by initialize(), and operator=().

Definition at line 97 of file AtomicOrbitalInverter.h.

Referenced by initialize(), and operator=().

Definition at line 97 of file AtomicOrbitalInverter.h.

Referenced by initialize(), and operator=().

Definition at line 98 of file AtomicOrbitalInverter.h.

Referenced by AtomicOrbitalInverter(), initialize(), and operator=().

Definition at line 99 of file AtomicOrbitalInverter.h.

Referenced by AtomicOrbitalInverter(), initialize(), and operator=().

Definition at line 100 of file AtomicOrbitalInverter.h.

Referenced by AtomicOrbitalInverter(), initialize(), and operator=().

Definition at line 101 of file AtomicOrbitalInverter.h.

Referenced by AtomicOrbitalInverter(), initialize(), operator=(), and set_npoints().

Definition at line 102 of file AtomicOrbitalInverter.h.

Referenced by AtomicOrbitalInverter(), initialize(), operator=(), and set_npoints().

Definition at line 103 of file AtomicOrbitalInverter.h.

Referenced by AtomicOrbitalInverter(), initialize(), operator=(), and set_npoints().

Definition at line 104 of file AtomicOrbitalInverter.h.

Referenced by get_xyz(), initialize(), and operator=().

Definition at line 105 of file AtomicOrbitalInverter.h.

Referenced by get_xyz(), initialize(), and operator=().

Definition at line 106 of file AtomicOrbitalInverter.h.

Referenced by get_xyz(), initialize(), and operator=().


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

Generated on Sat Jul 5 16:14:00 2008 for QMcBeaver by  doxygen 1.5.6