sisl.PeriodicTable

class sisl.PeriodicTable

Bases: object

Periodic table for creating an Atom, or retrieval of atomic information via atomic numbers

Enables lookup of atomic numbers/names/labels to get the atomic number.

Several quantities available to the atomic species are available from <https://en.wikipedia.org/wiki/Atomic_radii_of_the_elements_(data_page)>.

The following values are accessible:

  • atomic mass (in atomic units)

  • empirical atomic radius (in Ang)

  • calculated atomic radius (in Ang)

  • van der Waals atomic radius (in Ang)

For certain species the above quantities are not available and a negative number is returned.

Examples

>>> 79 == PeriodicTable().Z('Au')
True
>>> 79 == PeriodicTable().Z_int('Au')
True
>>> 'Au' == PeriodicTable().Z_short(79)
True
>>> 'Au' == PeriodicTable().Z_label(79)
True
>>> 'Au' == PeriodicTable().Z_label('Gold')
True
>>> 12.0107 == PeriodicTable().atomic_mass('C')
True
>>> 12.0107 == PeriodicTable().atomic_mass(6)
True
>>> 12.0107 == PeriodicTable().atomic_mass('Carbon')
True
>>> .67 == PeriodicTable().radius('Carbon')
True
>>> .67 == PeriodicTable().radius(6,'calc')
True
>>> .7  == PeriodicTable().radius(6,'empirical')
True
>>> 1.7 == PeriodicTable().radius(6,'vdw')
True

Methods

Z(key)

Atomic number based on general input

Z_block(Z)

The type-block of the atom in the periodic table.

Z_column(Z)

The column of the atom in the periodic table.

Z_int(key)

Atomic number based on general input

Z_label(key)

Atomic label of the corresponding atom

Z_row(Z)

The row of the atom in the periodic table.

Z_short(key)

Atomic label of the corresponding atom

atomic_mass(key)

Atomic mass of the corresponding atom

radius(key[, method])

Atomic radius using different methods

Z(key)[source]

Atomic number based on general input

Return the atomic number corresponding to the key lookup.

Parameters:

key (ndarray or str or int) – Uses value to lookup the atomic number in the PeriodicTable object.

Returns:

atomic number corresponding to key, if key is array_like, so will the returned value be.

Return type:

numpy.ndarray or int

Examples

>>> 79 == PeriodicTable().Z_int('Au')
True
>>> 79 == PeriodicTable().Z('Au')
True
>>> 6 == PeriodicTable().Z('Carbon')
True
classmethod Z_block(Z)[source]

The type-block of the atom in the periodic table.

Will return one of s, p, d, f or “”. May return “” if the element isn’t found in the periodic table.

Only covers up to Z=118.

Parameters:

Z (int | ArrayLike) – the atomic number to search for

classmethod Z_column(Z)[source]

The column of the atom in the periodic table.

May return -1 if the element isn’t found in the periodic table.

Only covers up to Z=118.

Parameters:

Z (int | ArrayLike)

Z_int(key)

Atomic number based on general input

Return the atomic number corresponding to the key lookup.

Parameters:

key (ndarray or str or int) – Uses value to lookup the atomic number in the PeriodicTable object.

Returns:

atomic number corresponding to key, if key is array_like, so will the returned value be.

Return type:

numpy.ndarray or int

Examples

>>> 79 == PeriodicTable().Z_int('Au')
True
>>> 79 == PeriodicTable().Z('Au')
True
>>> 6 == PeriodicTable().Z('Carbon')
True
Z_label(key)[source]

Atomic label of the corresponding atom

Return the atomic short name corresponding to the key lookup.

Parameters:

key (ndarray or str or int) – Uses value to lookup the atomic short name in the PeriodicTable object.

Returns:

atomic short name corresponding to key, if key is array_like, so will the returned value be.

Return type:

numpy.ndarray or str

classmethod Z_row(Z)[source]

The row of the atom in the periodic table.

May return -1 if the element isn’t found in the periodic table.

Only covers up to Z=118.

Parameters:

Z (int | ArrayLike) – the atomic number to search for

Z_short(key)

Atomic label of the corresponding atom

Return the atomic short name corresponding to the key lookup.

Parameters:

key (ndarray or str or int) – Uses value to lookup the atomic short name in the PeriodicTable object.

Returns:

atomic short name corresponding to key, if key is array_like, so will the returned value be.

Return type:

numpy.ndarray or str

atomic_mass(key)[source]

Atomic mass of the corresponding atom

Return the atomic mass corresponding to the key lookup.

Parameters:

key (ndarray or str or int) – Uses value to lookup the atomic mass in the PeriodicTable object.

Returns:

atomic mass in atomic units corresponding to key, if key is array_like, so will the returned value be.

Return type:

numpy.ndarray or float

radius(key, method='calc')[source]

Atomic radius using different methods

Return the atomic radius.

Parameters:
  • key (ndarray or str or int) – Uses value to lookup the atomic mass in the PeriodicTable object.

  • method ({'calc', 'empirical', 'vdw'}) –

    There are 3 different radii stored:

    1. calc, the calculated atomic radius

    2. empirical, the empirically found values

    3. vdw, the van-der-Waals found values

Returns:

atomic radius in Ang

Return type:

numpy.ndarray or float