Elements
ElemCo.Elements — ModuleElementsModule for handling elements and their electron configurations.
Exported constants, types, and functions
ElemCo.Elements.ELEMENTS — ConstantElements with corresponding atomic numbers, atomic masses, name, electron configuration, large core, small core (w/o semi-core).
ElemCo.Elements.SUBSHELLS_NAMES — ConstantSUBSHELLS_NAMESNames of the subshells (s,p,d,f,g,h,i,k,l,m).
ElemCo.Elements.electron_distribution4element — Methodelectron_distribution4element(elem::AbstractString, nsh4l::Vector{Int})Distribute electrons among first atomic orbitals in nsh4l[1]s nsh4l[2]p nsh4l[3]d nsh4l[4]f... order considering the Hund's rule and electron configuration of the atom. Average occupations to account for the spin degeneracy and hybridization.
ElemCo.Elements.element_fullname_from_label — Methodelement_fullname_from_label(elem::AbstractString)Return the element full name
ElemCo.Elements.ncoreorbs — Functionncoreorbs(elem::AbstractString, coretype::Symbol=:large)Guess the number of core orbitals in the element.
coretype:
:large- large core (w/o semi-core):small- small core (w/ semi-core):none- no core
ElemCo.Elements.nuclear_charge_of_centre — Methodnuclear_charge_of_centre(elem::AbstractString)Return the nuclear charge of the element.
Internal constants, types, and functions
ElemCo.Elements.SubShell — TypeOccupation of the subshell with quantum numbers $n$ and $l$.
n::Int64: $n$-quantum number of the subshell.l::Int64: $l$-quantum number of the subshell.nel::Int64: Number of electrons in the subshell.
ElemCo.Elements.n_orbitals_in_subshell — Methodn_orbitals_in_subshell(shell::Char)Return the number of orbitals in the subshell.
ElemCo.Elements.parse_electron_configuration — Methodparse_electron_configuration(e::AbstractString)Parse the electron configuration string and return the number of electrons in each subshell. e.g. "[He] 2s^2 2p^6 3s^2 3p^6" -> [SubShell(1,0,2), SubShell(2,0,2), SubShell(2,1,6), SubShell(3,0,2), SubShell(3,1,6)]