2#include "AdamsMoulton.hpp"
3#include "Physics/PhysConst_constants.hpp"
31 double alpha,
const DiracSpinor *
const VxFa =
nullptr,
33 bool average_tail =
false);
144 double en,
const std::vector<double> &v,
185 const std::vector<double> &v,
double alpha,
221 double alpha,
double Zeff,
222 double f_final,
double g_final,
223 double r_final,
double dr);
244 const double in_en,
const double in_alpha)
253 double en, alpha, cc;
255 double a(
double r)
const final {
return double(-kappa) / r; }
256 double b(
double r)
const final {
257 return (alpha * en + 2.0 * cc + Zeff * alpha / r);
259 double c(
double r)
const final {
return -alpha * (Zeff / r + en); }
260 double d(
double r)
const final {
return -
a(r); }
272double fitQuadratic(
double x1,
double x2,
double x3,
double y1,
double y2,
Stores radial Dirac spinor: F_nk = (f, g)
Definition DiracSpinor.hpp:55
Non-uniform radial grid with Jacobian, suitable for atomic structure calculations.
Definition Grid.hpp:85
Functions and classes used to solve the Dirac equation.
Definition AsymptoticSpinor.hpp:10
double solveContinuumForward(DiracSpinor &phi, const DiracSpinor &Freg, const DiracSpinor &Firr, double en, const std::vector< double > &v, double alpha, const DiracSpinor &Sr)
Solves the inhomogeneous continuum equation (h_r - en) phi = S (en > 0) with the standing-wave bounda...
Definition ContinuumState.cpp:574
std::size_t num_points_b
num_points required at the returned b (== current num_points, unless b was clamped)
Definition ContinuumState.hpp:43
double fitQuadratic(double x1, double x2, double x3, double y1, double y2, double y3)
Fits a quadratic to three points and returns the interpolated maximum.
Definition ContinuumState.cpp:850
GridRequirements RequiredContinuumGrid(double en, const Grid &gr, double N_ppw, double alpha)
Grid parameters required to safely store (pointwise) a continuum state of energy en on the entire gri...
Definition ContinuumState.cpp:201
std::pair< double, double > numerical_f_amplitude(double en, int kappa, double alpha, double Zeff, double f_final, double g_final, double r_final, double dr)
Finds the numerical amplitude of f(r) for a continuum Dirac solution at large r.
Definition ContinuumState.cpp:677
std::size_t num_points
num_points required, keeping r0, rmax, and b unchanged
Definition ContinuumState.hpp:38
double b
largest sufficient b, keeping num_points unchanged (clamped to >= 0.05)
Definition ContinuumState.hpp:40
void solveContinuum(DiracSpinor &Fa, double en, const std::vector< double > &v, double alpha, const DiracSpinor *const VxFa, const DiracSpinor *const Fa0, bool average_tail)
Solves Dirac equation for a continuum state (en > 0) with energy normalisation.
Definition ContinuumState.cpp:52
double analytic_f_amplitude(double en, double alpha)
Analytic amplitude of f(r) at very large r for an H-like Dirac continuum state.
Definition ContinuumState.cpp:840
std::size_t averageTail(DiracSpinor &Fa, const std::vector< double > &v, double alpha)
Optionally fills the zeroed high-r tail of a continuum state with a locally-averaged solution,...
Definition ContinuumState.cpp:249
void solveContinuumIrregular(DiracSpinor &Firr, const DiracSpinor &Freg, double en, const std::vector< double > &v, double alpha)
Builds the irregular continuum partner F_irr of a regular continuum orbital F_reg.
Definition ContinuumState.cpp:352
Grid requirements returned by RequiredContinuumGrid.
Definition ContinuumState.hpp:36
constexpr double alpha
Fine-structure constant: alpha = 1/137.035 999 177(21) [CODATA 2022].
Definition PhysConst_constants.hpp:24
Pure-virtual struct defining the derivative matrix for a 2x2 ODE system.
Definition AdamsMoulton.hpp:47
H-like Dirac derivative matrix for continuum states at large r.
Definition ContinuumState.hpp:234
DiracContinuumDerivative(double in_Zeff, const int in_kappa, const double in_en, const double in_alpha)
Constructs the H-like continuum derivative matrix.
Definition ContinuumState.hpp:243
double a(double r) const final
a,b,c,d are derivative matrix functions; all must be user implemented
Definition ContinuumState.hpp:255