The Fortran subroutine package radial for the numerical solution of the Schrödinger and Dirac wave equations of electrons in central potentials V(r) is described. The considered potentials are such that the function V(r)≡rV(r) is finite for all r and tends to constant values when r→0 and r→∞. This includes finite-range potentials as well as combinations of Coulomb and finite-range potentials. The function V(r) used in the numerical calculation is the natural cubic spline that interpolates a table of values provided by the user. The radial wave equations are solved by using piecewise exact power series expansions of the radial functions, which are summed up to the prescribed accuracy so that truncation errors can be completely avoided. The radial subroutines compute radial wave functions, eigenvalues for bound states and phase shifts for free states. Specific subroutines are also provided for computing the radial functions and phase shifts for free states of complex optical potentials having a finite-range absorptive imaginary part. The solution subroutines are accompanied by example main programs, as well as with specific programs that perform calculations relevant in atomic, nuclear, and radiation physics (the self-consistent solution of the Dirac–Hartee–Fock–Slater equations for neutral atoms and positive ions, and the calculation of cross sections for elastic scattering of high-energy electrons and positrons by atoms and of nucleons by nuclei). The distribution package includes a detailed manual with a description of the basic physics and the mathematical formulas implemented in the subroutines. Program summaryProgram Title:radialProgram Files doi:http://dx.doi.org/10.17632/h6nbws5h6s.1Licensing provisions: CC by NC 3.0Programming language: Fortran 90/95Supplementary material: Manual in pdf format. Includes a description of the basic physics, and the complete set of formulas implemented in the program.Journal reference of previous version: Comput. Phys. Commun. 90 (1995) 151–168.Does the new version supersede the previous version?: YesReasons for the new version: The present subroutine package contains a revision and extension of the radial subroutines [1], which have been recoded. The new subroutines implement a more accurate normalisation of bound states; the phase convention of Dirac’s central-field orbitals has been replaced with that of Rose [2]. Subroutines for computing free states of complex optical-model potentials with an absorptive imaginary part have been added to the package. Subroutines giving the coefficients of asymptotic power-series expansions of radial functions for bound and free orbitals are also included. Finally, the present package contains complementary programs that use the radial subroutines for solving generic problems of interest in atomic and nuclear physics, namely, the self-consistent solution of the Dirac–Hartree–Fock–Slater equations for free neutral atoms and positive ions, and the calculation of differential cross sections for elastic collisions of electrons and positrons with atoms, and the scattering of nucleons by nuclei. The package also includes a manual in pdf format with a summary of the underlying physics and a detailed description of the formulas and numerical algorithms implemented in the programs, as well as derivations of the most relevant components.Summary of revisions: The original subroutines have been recoded and extended to include 1) a more accurate normalisation of bound states, 2) the calculation of free states of complex optical-model potentials, 3) asymptotic power-series expansions of radial functions, and 4) three practical applications.Nature of problem: The radial subroutines solve the radial Schrödinger and Dirac wave equations for a particle in a central potential V(r). They deliver the radial function(s), the energy eigenvalue for bound orbitals, and the phase shift for free orbitals.Solution method: The potential function V(r)≡rV(r) is defined by a table of values for a grid of radii that is dense enough to allow accurate natural cubic spline interpolation. The radial function is calculated for the potential defined by the interpolating cubic spline by means of exact power-series expansions, which are summed up to the desired accuracy.Additional comments including restrictions and unusual features: The subroutines are not capable of computing either bound or free states with energies very close to zero. Since the power-series expansions of the radial functions define exact piecewise solutions of the radial wave equations, they can be summed up to the accuracy required by the user. Truncation errors are controlled by the tolerance parameter ϵ, which determines the accuracy of the series summations. With double-precision arithmetic and ϵ∼10−15 the results are affected by only round-off errors. The subroutines deliver the values of the radial functions on a grid of radii defined by the user, which may be different from the grid used to specify the potential.[1] Salvat, F., J.M. Fernández-Varea, and W. Williamson, Jr. (1995), “Accurate numerical solution of the radial Schrödinger and Dirac wave equations.” Comput. Phys. Commun. 90, 151–168.[2] Rose, M.E. (1961), Relativistic Electron Theory (John Wiley and Sons, New York).
Read full abstract