ampsci
c++ program for high-precision atomic structure calculations of single-valence systems
Loading...
Searching...
No Matches
DiracHydrogen.hpp
1#pragma once
2#include "qip/StrongType.hpp"
3
5
17namespace DiracHydrogen {
18
19//------------------------------------------------------------------------------
20// Uses Strong Types:
21enum class DiracTypes { DiracQN, AlphaFS, Zeff, PrincipalQN, RaB };
22
26// double (allow eff):
29
30//------------------------------------------------------------------------------
31
33double gamma(DiracQN k, Zeff z, AlphaFS a);
34
36double enk(PrincipalQN n, DiracQN k, Zeff z, AlphaFS a);
37
39double Enk(PrincipalQN n, DiracQN k, Zeff z, AlphaFS a);
40
42double f(RaB r, PrincipalQN n, DiracQN k, Zeff z, AlphaFS a);
43
45double g(RaB r, PrincipalQN n, DiracQN k, Zeff z, AlphaFS a);
46
47double gfratio(double r, int k, double z, double a, double e, double m = 1.0);
48
49} // namespace DiracHydrogen
Exact relativistic hydrogen-like (Coulomb) wavefuntions.
Definition DiracHydrogen.cpp:7
double enk(PrincipalQN n, DiracQN k, Zeff z, AlphaFS a)
Energy, without rest mass.
Definition DiracHydrogen.cpp:51
double gamma(DiracQN k, Zeff z, AlphaFS a)
Relativistic factor gamma = Sqrt[k^2 - (aZ)^2].
Definition DiracHydrogen.cpp:67
double f(RaB r, PrincipalQN n, DiracQN k, Zeff z, AlphaFS a)
Upper radial component.
Definition DiracHydrogen.cpp:71
double g(RaB r, PrincipalQN n, DiracQN k, Zeff z, AlphaFS a)
Lower (small) radial component.
Definition DiracHydrogen.cpp:83
double Enk(PrincipalQN n, DiracQN k, Zeff z, AlphaFS a)
Enk = enk + c^2.
Definition DiracHydrogen.cpp:62
A light-weight easy-to-use single-file header-only template class for strong typing.
Definition StrongType.hpp:45