Public API

Contents

Index

Public interface

To utilize the public interface, first import the required packages:

julia> using VASPseudopotentials

Types

VASPseudopotentials.AzimuthalQuantumNumberType
AzimuthalQuantumNumber

An enum representing the azimuthal quantum number (l), which defines the shape of an atomic orbital.

Examples

julia> instances(AzimuthalQuantumNumber)
(:s, :g, :h, :i, :d, :f, :p)

julia> AzimuthalQuantumNumber(:s)
s::AzimuthalQuantumNumber = 0x00
source
VASPseudopotentials.PotentialNameType
PotentialName(element, num_electrons, pseudization, valence_states, rigidity, method, generation)

A composite type that represents a VASP pseudopotential by combining its constituent parts.

The fields correspond to different components of the potential's name, such as the element, valence electron count, and method-specific suffixes. Unspecified components can be nothing.

Examples

julia> PotentialName(:Si, nothing, nothing, nothing, nothing, nothing, nothing)
Si

julia> PotentialName(:Ti, nothing, nothing, SemicorePS(), nothing, nothing, New())
Ti_sv_new
source
VASPseudopotentials.SubshellType
Subshell(principal, azimuthal, occupation)

Represents an atomic subshell, defined by its principal quantum number, azimuthal quantum number, and electron occupation.

Arguments

  • principal::Int8: the principal quantum number ($n$).
  • azimuthal::AzimuthalQuantumNumber: the azimuthal quantum number ($l$), e.g., s, p.
  • occupation::Float64: the number of electrons occupying the subshell.

Examples

julia> Subshell(3, AzimuthalQuantumNumber(:d), 5.0)
3d^{5.0}
source

Functions

You can find their official documentation on this page.

VASPseudopotentials.count_valence_electronsMethod
count_valence_electrons(config)

Calculate the total number of valence electrons from an electronic configuration.

Examples

julia> config = [Subshell(4, AzimuthalQuantumNumber(:s), 2.0), Subshell(3, AzimuthalQuantumNumber(:d), 10.0)];

julia> count_valence_electrons(config)
12.0
source
VASPseudopotentials.count_valence_electronsMethod
count_valence_electrons(subshell::Subshell)

Calculate the total number of valence electrons from a Subshell.

Examples

julia> subshell = Subshell(4, AzimuthalQuantumNumber(:s), 2.0);

julia> count_valence_electrons(subshell)
2.0
source