Table of Isotopes

This module provides an interface for interacting with isotopes of atoms; the extended periodic table. For convenience, functions are provided for obtaining traditionally used elements. This module also provides mappers for commonly used dataframe manipulations.

class exa.relational.isotope.Meta(classname, bases, dict_)[source]

Provides lookup methods for Isotope.

Isotope['1H']     # Returns
get_by_strid(strid)[source]

Get an isotope using a string id.

get_by_symbol(symbol)[source]

Get an isotope using a string id.

get_element(name_or_symbol)[source]

Get (i.e. compute) the element with the given name or symbol (an element’s data is given as an average over isotopic composition).

class exa.relational.isotope.Isotope(**kwargs)[source]

A variant of a chemical element with a specific proton and neutron count.

>>> h = Isotope['1H']
>>> h.A
1
>>> h.Z
1
>>> h.mass
1.0078250321
>>> Isotope['C']
[8C, 9C, 10C, 11C, 12C, 13C, 14C, 15C, 16C, 17C, 18C, 19C, 20C, 21C, 22C]
>>> Isotope['13C'].szuid
175
>>> c = Isotope[57]
>>> c.A
13
>>> c.Z
6
>>> c.strid
'13C'
exa.relational.isotope.symbol_to_z()[source]

Create a “mapper” (Series) from element symbol to proton number (“Z”). This object can be used to quickly transform element symbols to proton number via:

mapper = symbol_to_z()
z_series = symbol_series.map(mapper)
exa.relational.isotope.z_to_symbol()[source]

Create a mapper from proton number to element symbol.

See also

Opposite mapper of symbol_to_z().

exa.relational.isotope.symbols_to_radii()[source]

Mapper from symbol pairs to sum of covalent radii.

exa.relational.isotope.symbol_to_element_mass()[source]

Mapper from symbol to element mass.

exa.relational.isotope.symbol_to_radius()[source]

Mapper from isotope symbol to covalent radius.

exa.relational.isotope.symbol_to_color()[source]

Mapper from isotope symbol to color.

Physical Constants

Table of reference physical constants in SI units.

class exa.relational.constant.Meta(classname, bases, dict_)[source]

Metaclass for Constant.

get_by_symbol(symbol)[source]

Get the value of a constant with the given symbol.

class exa.relational.constant.Constant(**kwargs)[source]

Physical constants and their values in SI units.

>>> hartree = Constant['Eh']
>>> hartree
4.35974434e-18

Note

Available constants can be inspected by calling:

Constant.to_frame()

Unit Conversions

This module provides relational classes for unit conversion tables.

class exa.relational.unit.Meta(classname, bases, dict_)[source]

Special metaclass for unit objects supporting aliases. Aliases are alternative names for standard symbols for units.

class exa.relational.unit.Dimension[source]

Descriptive class for units.

from_unit

str

Unit to convert from

to_unit

str

Unit to convert to

factor

float

Conversion factor

class exa.relational.unit.Length(**kwargs)[source]
>>> Length['angstrom', 'au']
1.88971616463
>>> Length['A', 'au']
1.88971616463
>>> Length['A', 'a0']
1.88971616463
class exa.relational.unit.Mass(**kwargs)[source]
>>> Mass['kg', 'lb']
2.2046226218
>>> Mass['Da', 'kg']
1.660538921000011e-27
>>> Mass['u', 'kg']
1.660538921000011e-27
class exa.relational.unit.Time(**kwargs)[source]
>>> Time['min', 's']
60.0000000000024
>>> Time['hr', 's']
3599.999712000023
>>> Time['weeks', 'days']
6.999999999955003
class exa.relational.unit.Current(**kwargs)[source]
>>> Current['A', 'C_s']
1.0
>>> Current['A', 'Bi']
0.1
class exa.relational.unit.Amount(**kwargs)[source]
>>> Amount['gmol', 'mol']
1.0
>>> Amount['lbmol', 'mol']
453.5923744952991
class exa.relational.unit.Luminosity(**kwargs)[source]
>>> Luminosity['cp', 'cd']
0.9810000000433602
class exa.relational.unit.Dose(**kwargs)[source]
>>> Dose['Gy', 'rd']
100.0
>>> Dose['J_kg', 'rd']
100.0
class exa.relational.unit.Acceleration(**kwargs)[source]
>>> Acceleration['m_s2', 'cm_s2']
100.0
>>> Acceleration['m_s2', 'stdgrav']
0.10197162130000001
class exa.relational.unit.Charge(**kwargs)[source]
>>> Charge['e', 'C']
1.6021765649999947e-19
class exa.relational.unit.Dipole(**kwargs)[source]
>>> Dipole['yCm', 'D']
299792.45817809016
class exa.relational.unit.Energy(**kwargs)[source]
>>> Energy['J', 'cal']
0.2388458966
>>> Energy['kcal', 'Btu']
3.9683205782473134
class exa.relational.unit.Force(**kwargs)[source]
>>> Force['N', 'lbf']
0.22480894310000002
class exa.relational.unit.Frequency(**kwargs)[source]
>>> Frequency['1_s', 'Hz']
1.0
class exa.relational.unit.MolarMass(**kwargs)[source]
>>> MolarMass['g_mol', 'kg_mol']
0.001