tesliper.datawork.atoms

Converters between string and integer representations of atoms.

Functions

atomic_number(element)

Returns atomic number of given element.

symbol_of_element(element)

Returns symbol of given element.

validate_atoms(atoms)

Checks if given atoms represent a list of valid atom identifiers (symbols or atomic numbers).

Classes

Atom(value)

An enumeration that maps symbols of atoms to respective atomic numbers.

class tesliper.datawork.atoms.Atom(value)

An enumeration that maps symbols of atoms to respective atomic numbers.

This enumeration is introduced for your convenience: whenever you need to reference an atom by its atomic number, you may use appropriate symbol-value of this Enum instead. Providing e.g. Atom.Au rather than an integer 79 for Au’s atomic number is probably a bit easier and definitely more readable.

tesliper.datawork.atoms.symbol_of_element(element: Union[int, str]) str[source]

Returns symbol of given element. If element is a symbol of an element already, it is capitalized and returned (so input’s letters case doesn’t matter).

Parameters

element (int or str) – element’s atomic number

Returns

symbol of an element

Return type

str

Raises
  • ValueError – when element is not a whole number or cannot be converted to integer

  • TypeError – if element cannot be interpreted as integer

  • InvalidElementError – if element is not an atomic number of any known element

tesliper.datawork.atoms.atomic_number(element: Union[int, str]) int[source]

Returns atomic number of given element. If element is an atomic number already, it is returned without change.

Parameters

element (str or int) – element’s symbol or atomic number (letters case doesn’t matter if string is given)

Returns

atomic number of an element

Return type

int

Raises
  • InvalidElementError – when element cannot be converted to element’s atomic number

  • TypeError – if element cannot be interpreted as integer or string

tesliper.datawork.atoms.validate_atoms(atoms: Union[int, str, List[Union[str, int]]]) List[int][source]

Checks if given atoms represent a list of valid atom identifiers (symbols or atomic numbers). Returns list of atomic numbers of those atoms if it does or rises an exception if it doesn’t.

Parameters

atoms (int, str or iterable of int or str) – Atoms to validate. Atoms as space-separated string are also accepted.

Returns

List of given atoms’ atomic numbers.

Return type

list of int

Raises

InvalidElementError – if atoms cannot be interpreted as list of atoms’ identifiers