/*! @file

@brief README file for the program atom. Notice the file README.first.

@details

@section ATOM_INTRO     atom.f90: introduction and version changes

The program atom.f carries out all electron DFT calculations of an atom using interpolating cubic
splines. For this, either the LDA, LSD or RLDA approximations may be used, or their gradient
corrected counterparts, based on the functionals from the libXC libraries. 
The input conventions for the file atom.dat are mostly the same as in previous versions of atom.f.
PADE (ixc=-20) and PBE (ixc=-101130) is also accepted.


Example for the input file atom.dat:
<pre>
 Ne                             element symbol (1st line)
 -20                            functional, iXC convention from ABINIT
 r                              spin treatment keyword 
 60      10 30.0                rmax,aa,bb  - log grid for gaussian basis 
 1.3d0   50.0                   rcov,rprb   - integration radius and confining V
 1    3                         number of core and valence orbitals
 2    0     2.00      0.00      n,l,zdn, zup  1st valence orbital
 2    1     6.00      0.00      n,l,zdn, zup  2nd valence orbital
 3    0     0.00      0.00      n,l,zdn, zup  3rd and last orbital for the fit
</pre>


Explanations and differences to previous versions of atom.f:


Line two defines the XC treatment. Functionals may be given as a libXC code number with a negative
sign (according to convention of the ABINIT variable iXC) or as one of the keywords PADE = LDA or
PBE. More information on iXC is available in the file README.iXC.


The third lines first non-blanc character defines the DFT method to be used as follows:
<pre>
spin treatment keyword      relativistic wfn?       polarized XC?      approximation
   n (nonrelativistic)            no                   no                 LDA, GGA
   r (relativistic)               yes                  no                RLDA  etc
   s (spinpolarized)              no                   yes                LSD  etc
</pre>

From line seven on, quantum numbers and occupation numbers are specified. For each orbital, one line
is read with the n and l quantum numbers and two occupation numbers for s = up and down:

 n(orbital)   l(orbital)     z(orbital)(up)      z(orbital)(down)

For a nonpolarized calculation, only the sum of the two occupation numbers is relevant. Relativistic
calculations enforce up/down occupations according to spin orbit terms. NOTICE that if z(down) is
given as zero in a polarized calculation, both occupation numbers will be adjusted according to 
Hund's rule.  Therefore, the last number of these lines is usually just a zero.



It is possible to define several configurations in one file atom.dat. The input read from lines one
to six will apply for all configurations. Different occupation numbers may be specified for each
configuration, where a line reading 'NEXT CONFIGURATION' separates sets of input lines that belong 
to distinct configurations. In contrast to previous versions, atom will generate one output file for
each configuration with KS eigenvalues, integrals etc. These files will also contain all excitation
energies of that run, such that inconsistent data can be identified more easily. However, the plots
of the wavefunctions are not written to many files, but appended to one file for core and one for
valence states. All input files needed for fitting with 'pseudo' are generated by atom. Notice that
files with reference data for several configurations are only read in a parallel run, where each
MPI process reads its own atom.'iproc'.ae file. Some of the files need to be adjusted when invoking
pseudo and contain comments how to do so. More information on this is given in the README.pseudo. 



Some more information and hints are found in the original README file from a previous version,
README.atom.old. Notice the version changes described above.

*/
