RAtom
solves nonlinear Kohn-Sham equation for an neutral atom.
The adaptive algorithm based on finite element method (FEM) is implemented.
The implemented algorithm is described in my papers:
-
Z. Romanowski, Adaptive solver of a Kohn-Sham equation for an atom, Modelling and Simulation in Materials Science and Engineering vol. 17, 045001 (2009), abstract
-
Z. Romanowski, Application of h-adaptive, high order finite element method to solve radial Schrödinger equation, Molecular Physics vol. 107, pp. 1339-1348 (2009), abstract
-
Z. Romanowski, A B-spline finite element solution of Kohn Sham equation for an atom, Modelling and Simulation in Materials Science and Engineering vol. 16, p. 015003 (2008), abstract
-
Z. Romanowski, Numerical Solution of Kohn–Sham Equation for Atom, Acta Physica Polonica B vol. 38, p. 3263 (2007), full paper
-
RAtom
is the solver for non-linear Kohn-Sham equation, which is non-linear differential, second order, eigenvalue problem. -
RAtom
solves linear Kohn-Sham equation by Finite Element Method (FEM) with Lobatto polynomials as basis functions. -
RAtom
solves the non-linear Kohn-Sham equation iteratively by so called Self Consistent Field (SCF) procedure. -
In order to calculate interaction potential in linear Kohn-Sham equation, Poisson equation is solved.
-
The Poisson equation is the differential, second order, equation.
RAtom
solves Poisson equation by Finite Element Method (FEM) with Lobatto polynomials as the basis functions. -
For Poisson equation and Kohn-Sham equation, the electron density is needed. The electron density is represented (approximated), as the linear combination of Lobatto polynomials.
-
The distinguished feature of
RAtom
is the implemented h-adaptive procedure. The following problems are solved adaptively: a) Linear Kohn-Sham equation b) Poisson equation c) Approximation of electron density -
The disctretization of linear Kohn-Sham equation leads to the generalized eigenvalue problem, which is solved by procedures from LAPACK libraries.
-
High order Gauss quadratures are applied in order to obtain the total energy of atom with absolute accuracy of 1E-6 hartree.
-
The program RAtom is implemented in C++, it runs as a single thread.
-
In order to build RAtom, type
make
in the main directory. First, the LAPACK library is compiled. It requiresgfortran
compiler. Second,RAtom
is compiled and it is compiled withg++
compiler. -
After compilation the binary file
ratom.x
is stored in./bin
directory. Programratom.x
requires one input parameter, which is a path to file with keywords. The format of input file forratom.x
is very simple, and can be figure out by checking the examples located inexm
directory. The directorydoc
containes description of the format and meaning of input file. -
In order to check the functionality of
RAtom
program go to./exm
directory. There are 92 sub-directories. Each of the sub-directory contains an input file namedatom.inp
for the atoms from Hydrogen to Uranium. Additionally, each atom-specific directory contains referential solution stored insolution.dat.ref
. -
In order to run all prepared examples (tests), go to
./exm
directory and type./run
. Obtained solutions (i.e. total energies and eigenvalues) are listed in the filesolution.dat
in each sub-directory and compared to the referential data. -
In directory
./exm
there areGnuplot
scripts for ploting total electron density and for ploting total electron density. -
Directory
./src
contains the source code ofRAtom
plusMakefile
. -
It is recommended to start reading the program
RAtom
fromsrc/main.cpp
file.
Zbigniew Romanowski, e-mail: romz@wp.pl