m_paw_lmn/make_indklmn [ Functions ]

Performs the setup of the indklmn table for PAW calculations.
Compute the indklmn indexes giving klm, kln, abs(il-jl) and (il+jl), ilm and jlm, ilmn and jlmn
for each klmn=(ilmn,jlmn) with jlmn >= ilmn

m_paw_lmn/make_indlmn [ Functions ]

Performs the setup of the indlmn table for PAW calculations (indices for (l,m,n) basis)

INPUTS

ln_size= Total number of nl components
lmn_size= Second dimension in indlmn. Total number of (l,m,n) components for this atom.
orbitals(ln_size)=Give the value of l for each element of the augmented basis set.

klm2lm(6,lm2_size)=Table giving il, jl ,im, jm, ilm, jlm for each klm=(ilm,jlm)
where ilm=(il,im) and ilm<=jlm. NB: klm2lm is an application and not a bijection.

NOTES

klm2lm can be calculated easily if we assume that all (l,m) channels
are ordered by increasing l and m. This is the standard convention
used in most of the PAW datasets. This routines, howevever, works
works also in the unlikely case in with (l,m) are not ordered.