High-precision calculations for one- and two-valence atomic systems
Parametric Namespace Reference

Detailed Description

Set of two-parameter parametric electron potentials.

Enumerations

enum class  Type { Green , Tietz }
 Parametric potential type. More...
 

Functions

double green (int Z, double r, double H, double d)
 Green parametric potential at r; electron part only (no nuclear).
 
double tietz (int Z, double r, double g, double t)
 Tietz parametric potential at r; electron part only (no nuclear).
 
int defaultGreenCore (int z, double &H, double &d)
 Default Green parameters H and d for given Z, tuned to match HF core.
 
int defaultGreen (int z, double &H, double &d)
 Default Green parameters H and d for given Z, tuned to experiment.
 
int defaultTietz (int z, double &g, double &t)
 Default Tietz parameters g and t for given Z, tuned to experiment.
 
std::vector< double > GreenPotential (int z, const std::vector< double > &r_array, double H=0, double d=0)
 Green parametric potential (electron part) on given radial points.
 
std::vector< double > TietzPotential (int z, const std::vector< double > &r_array, double g=0, double t=0)
 Tietz parametric potential (electron part) on given radial points.
 

Enumeration Type Documentation

◆ Type

enum class Parametric::Type
strong

Parametric potential type.

  • Green : Green potential, parameters H, d (see green)
  • Tietz : Tietz potential, parameters g, t (see tietz)

Function Documentation

◆ green()

double Parametric::green ( int  Z,
double  r,
double  H,
double  d 
)

Green parametric potential at r; electron part only (no nuclear).

\[ V(r) = \frac{Z}{r} - \frac{1}{r} \left[ 1 + \frac{Z-1}{H\,(e^{r/d} - 1) + 1} \right]. \]

The total potential is V(r) - Z/r. Returns 0 at r = 0, and for Z = 1 (no screening electrons).

◆ tietz()

double Parametric::tietz ( int  Z,
double  r,
double  g,
double  t 
)

Tietz parametric potential at r; electron part only (no nuclear).

\[ V(r) = \frac{Z}{r} - \frac{1}{r} \left[ 1 + \frac{(Z-1)\,e^{-g r}}{(1 + t r)^2} \right]. \]

The total potential is V(r) - Z/r. Returns 0 at r = 0.

◆ defaultGreenCore()

int Parametric::defaultGreenCore ( int  z,
double &  H,
double &  d 
)

Default Green parameters H and d for given Z, tuned to match HF core.

Tabulated for selected Z, linearly interpolated in between. For Z > 113, H = 5.0, d = 0.75.

Returns
Always 0; H and d are set by reference.
Note
For Z = 1, H = d = 0: unused, since there is no screening.

◆ defaultGreen()

int Parametric::defaultGreen ( int  z,
double &  H,
double &  d 
)

Default Green parameters H and d for given Z, tuned to experiment.

Fitted to the lowest valence J=1/2 states for selected Z; crude quadratic fit in Z otherwise.

Returns
Always 0; H and d are set by reference.

◆ defaultTietz()

int Parametric::defaultTietz ( int  z,
double &  g,
double &  t 
)

Default Tietz parameters g and t for given Z, tuned to experiment.

Fitted to the lowest valence J=1/2 states for selected Z; crude quadratic fit in Z otherwise.

Returns
Always 0; g and t are set by reference.

◆ GreenPotential()

std::vector< double > Parametric::GreenPotential ( int  z,
const std::vector< double > &  r_array,
double  H = 0,
double  d = 0 
)

Green parametric potential (electron part) on given radial points.

See green(). If H*d is (near) zero, the core-tuned defaults are used (defaultGreenCore).

Parameters
zNuclear charge
r_arrayRadial points
HGreen parameter H (0: default)
dGreen parameter d (0: default)
Returns
V(r) at each point of r_array; excludes nuclear potential.

◆ TietzPotential()

std::vector< double > Parametric::TietzPotential ( int  z,
const std::vector< double > &  r_array,
double  g = 0,
double  t = 0 
)

Tietz parametric potential (electron part) on given radial points.

See tietz(). If g*t is (near) zero, the experiment-tuned defaults are used (defaultTietz).

Parameters
zNuclear charge
r_arrayRadial points
gTietz parameter g (0: default)
tTietz parameter t (0: default)
Returns
V(r) at each point of r_array; excludes nuclear potential.