Radial schrodinger equation solver (non-interacting eigen-problem for an atom) More...
#include <RadialSchrodinger.h>
Classes | |
struct | Outputs |
Optional outputs from compute: retrieve all non-null quantities. More... | |
Public Member Functions | |
RadialSchrodinger (const std::vector< double > &rArr, const std::vector< double > &drArr, const std::vector< double > &V, double Z, size_t iMatch=0.) | |
std::vector< std::vector< double > > | getFillings (double nElectrons, std::vector< std::vector< double > > *Eptr=0) |
double | compute (const std::vector< std::vector< double > > &F, Outputs outputs) |
Compute total non-interacting energy of atom, given its fillings, and collect any optional outputs. | |
Radial schrodinger equation solver (non-interacting eigen-problem for an atom)
RadialSchrodinger::RadialSchrodinger | ( | const std::vector< double > & | rArr, |
const std::vector< double > & | drArr, | ||
const std::vector< double > & | V, | ||
double | Z, | ||
size_t | iMatch = 0. |
||
) |
Create a radial atom on grid specified by rArr and drArr, with potential V-Z/r iMatch sets the grid point at which matching occurs, and is set to the middle if 0 or unspecified
std::vector< std::vector<double> > RadialSchrodinger::getFillings | ( | double | nElectrons, |
std::vector< std::vector< double > > * | Eptr = 0 |
||
) |
Determine the optimum eigenfunction fillings (indexed by l and then nNodes) Optionally retrieve the corresponding eigenvalues (if Eptr is non-null)