# JuliaAtoms

Welcome to JuliaAtoms!

The JuliaAtoms GitHub organisation collects a few Julia packages that are useful for calculations within Atomic Physics.

At the moment, the following packages are available (all of them under development, i.e. no stability promised yet):

- AtomicLevels.jl (documentation) A library used to define electronic configurations constructed from electronic orbitals in spherical symmetry.
- Atoms.jl (documentation) Data structures for representing atoms in a product space of orbitals and a radial grid. The radial grid can be any implementation of the ContinuumArrays.jl interface, but Atoms.jl has only been tested with CompactBases.jl so far.
- EnergyExpressions.jl (documentation) A library for setting up the energy expression of a system built up from a set of configurations. At the moment, the implementation is geared towards atomic systems (in that it uses data structures from AtomicLevels.jl), but it is applicable to other systems as well, such as molecules.
- SCF.jl (documentation) A library for the solution of integro-differential eigenproblems, in a self-consistent manner.
- AngularMomentumAlgebra.jl (documentation) A library for the special case of energy expressions in spherical symmetry, but more importantly, also the computation of tensor matrix elements between spin-orbitals.
- AtomicPotentials.jl Provides structures for modelling the atomic nucleus as a potential.
- Hydrogen.jl Contains some of the analytically known results for atomic hydrogen, or more generally, a one-electron system in spherical symmetry.

Related packages, outside JuliaAtoms:

- CoulombIntegrals.jl A library that implements the calculation of the Coulombic repulsion between pairs of electrons, also known as the Slater integrals.
- PseudoPotentials.jl Model potentials used to reduces calculation complexity by representing a core of electrons in a mean-field sense. This can turn a multi-electron problem into an approximate few- or single-electron problem.