#include <AtomicOrbitalInverter.h>
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 |
Definition at line 33 of file AtomicOrbitalInverter.h.
| 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.
| void AtomicOrbitalInverter::operator= | ( | const AtomicOrbitalInverter & | rhs | ) |
Copy the rhs oject into this current object.
| 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)
| 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.
| 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().
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().
Array1D<double> AtomicOrbitalInverter::x_inp [private] |
Definition at line 95 of file AtomicOrbitalInverter.h.
Array1D<double> AtomicOrbitalInverter::y_inp [private] |
Definition at line 96 of file AtomicOrbitalInverter.h.
int AtomicOrbitalInverter::xn [private] |
int AtomicOrbitalInverter::yn [private] |
int AtomicOrbitalInverter::zn [private] |
double AtomicOrbitalInverter::cutoff1 [private] |
Definition at line 98 of file AtomicOrbitalInverter.h.
Referenced by AtomicOrbitalInverter(), initialize(), and operator=().
double AtomicOrbitalInverter::cutoff2 [private] |
Definition at line 99 of file AtomicOrbitalInverter.h.
Referenced by AtomicOrbitalInverter(), initialize(), and operator=().
double AtomicOrbitalInverter::cutoff3 [private] |
Definition at line 100 of file AtomicOrbitalInverter.h.
Referenced by AtomicOrbitalInverter(), initialize(), and operator=().
int AtomicOrbitalInverter::npoints_r [private] |
Definition at line 101 of file AtomicOrbitalInverter.h.
Referenced by AtomicOrbitalInverter(), initialize(), operator=(), and set_npoints().
int AtomicOrbitalInverter::npoints_theta [private] |
Definition at line 102 of file AtomicOrbitalInverter.h.
Referenced by AtomicOrbitalInverter(), initialize(), operator=(), and set_npoints().
int AtomicOrbitalInverter::npoints_phi [private] |
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=().
1.5.6