Atom types

AtomicStructure.AtomType
Atom(radial_orbitals, orbitals, configurations, mix_coeffs, potential)

An atom constitutes a set of single-electron orbitals with associated radial_orbitals, configurations which are ManyElectronWavefunction:s, comprising of anti-symmetrized combinations of such orbitals. The expansion coefficients mix_coeffs determine the linear combination of the configurations for multi-configurational atoms.

The potential can be used to model either the nucleus by itself (a point charge or a nucleus of finite extent) or the core orbitals (i.e. a pseudo-potential).

source
AtomicStructure.AtomMethod
Atom(undef, ::Type{T}, R::AbstractQuasiMatrix, configurations, potential, ::Type{C}[, mix_coeffs])

Create an Atom on the space spanned by R, from the list of electronic configurations, with a nucleus modelled by potential, and leave the orbitals uninitialized. T determines the eltype of the radial orbitals and C the mixing coefficients, which by default, are initialized to [1,0,0,...].

source
AtomicStructure.AtomMethod
Atom(init, ::Type{T}, R::AbstractQuasiMatrix, configurations, potential, ::Type{C})

Create an Atom on the space spanned by R, from the list of electronic configurations, with a nucleus modelled by potential, and initialize the orbitals according to init. T determines the eltype of the radial orbitals and C the mixing coefficients.

source
AtomicStructure.AtomMethod
Atom(init, R::AbstractQuasiMatrix, configurations, potential, ::Type{C})

Create an Atom on the space spanned by R, from the list of electronic configurations, with a nucleus modelled by potential, and initialize the orbitals according to init. C determines the eltype of the mixing coefficients.

source
AtomicStructure.AtomMethod
Atom(R::AbstractQuasiMatrix, configurations, potential[, ::Type{C}=eltype(R)])

Create an Atom on the space spanned by R, from the list of electronic configurations, with a nucleus modelled by potential, and initialize the orbitals to their hydrogenic values.

source
AtomicStructure.AtomMethod
Atom(other_atom::Atom, configurations)

Create a new atom using the same basis and nuclear potential as other_atom, but with a different set of configurations. The orbitals of other_atom are copied over as starting guess.

source
Base.getindexFunction
getindex(atom, j)

Returns a copy of the j:th radial orbital.

source
getindex(atom, orb)

Returns a copy of the radial orbital corresponding to orb.

source
getindex(atom, js)

Returns a copy of all radial orbitals with index ∈ js.

source
getindex(atom, orbs)

Returns a copy of the radial orbitals corresponding to orbs.

source
Base.viewFunction
view(atom, j)

Returns a view of the j:th radial orbital.

source
view(atom, orb)

Returns a view of the radial orbital corresponding to orb.

source
view(atom, j)

Returns a view of all radial orbitals with index ∈ js.

source

Internals

AtomicStructure.ManyElectronWavefunctionType
ManyElectronWavefunction

A many-electron wave function configuration can either be given as a CSF (summed over spins) or a configuration of spin-orbitals (where all quantum numbers are specified).

source
AtomicStructure.outsidecoremodelFunction
outsidecoremodel(configuration::Configuration, potential::P)

Return the part of the electronic configuration that is not part of the the configuration modelled by the potential. For a point charge, this is the same as the configuration itself, but for pseudo-potentials, typically only the outer shells remain.

source
AtomicStructure.SCF.orbitalsFunction
orbitals(quantum_system)

Retrieves the orbitals of quantum_system. Must return a view that the scf! routine can modify. To be overloaded by the implementation of AbstractQuantumSystem.

source
SCF.orbitals(atom)

Returns a view of the radial orbital coefficients (NB, it does not return the MulQuasiMatrix, but the actual underlying expansion coefficients, since SCF operates on them in the self-consistent iteration).

source