armi.nucDirectory.elements module

This module provides fundamental element information to be used throughout the framework and applications.

Implementation: A tool for querying basic data for elements of the periodic table. I_ARMI_ND_ELEMENTS0
requirements: R_ARMI_ND_ELEMENTS

The elements module defines the Element class which acts as a data structure for organizing information about an individual element, including number of protons, name, chemical symbol, phase (at STP), periodic table group, standard weight, and a list of isotope nuclideBase instances. The module includes a factory that generates the Element instances by reading from the elements.dat file stored in the ARMI resources folder. When an Element instance is initialized, it is added to a set of global dictionaries that are keyed by number of protons, element name, and element symbol. The module includes several helper functions for querying these global dictionaries.

The element class structure is outlined here.

Examples

>>> elements.byZ[92]
<Element   U (Z=92), Uranium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>
>>> elements.bySymbol["U"]
<Element   U (Z=92), Uranium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>
>>> elements.byName["Uranium"]
<Element   U (Z=92), Uranium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>

Retrieve gaseous elements at Standard Temperature and Pressure (STP):

>>> elements.getElementsByChemicalPhase(elements.ChemicalPhase.GAS)
    [<Element   H (Z=1), Hydrogen, ChemicalGroup.NONMETAL, ChemicalPhase.GAS>,
     <Element  HE (Z=2), Helium, ChemicalGroup.NOBLE_GAS, ChemicalPhase.GAS>,
     <Element   N (Z=7), Nitrogen, ChemicalGroup.NONMETAL, ChemicalPhase.GAS>,
     <Element   O (Z=8), Oxygen, ChemicalGroup.NONMETAL, ChemicalPhase.GAS>,
     <Element   F (Z=9), Fluorine, ChemicalGroup.HALOGEN, ChemicalPhase.GAS>,
     <Element  NE (Z=10), Neon, ChemicalGroup.NOBLE_GAS, ChemicalPhase.GAS>,
     <Element  CL (Z=17), Chlorine, ChemicalGroup.HALOGEN, ChemicalPhase.GAS>,
     <Element  AR (Z=18), Argon, ChemicalGroup.NOBLE_GAS, ChemicalPhase.GAS>,
     <Element  KR (Z=36), Krypton, ChemicalGroup.NOBLE_GAS, ChemicalPhase.GAS>,
     <Element  XE (Z=54), Xenon, ChemicalGroup.NOBLE_GAS, ChemicalPhase.GAS>,
     <Element  RN (Z=86), Radon, ChemicalGroup.NOBLE_GAS, ChemicalPhase.GAS>,
     <Element  OG (Z=118), Oganesson, ChemicalGroup.NOBLE_GAS, ChemicalPhase.GAS>]

Retrieve elements that are classified as actinides:

>>> elements.getElementsByChemicalGroup(elements.ChemicalGroup.ACTINIDE)
   [<Element  AC (Z=89), Actinium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  TH (Z=90), Thorium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  PA (Z=91), Protactinium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element   U (Z=92), Uranium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  NP (Z=93), Neptunium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  PU (Z=94), Plutonium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  AM (Z=95), Americium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  CM (Z=96), Curium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  BK (Z=97), Berkelium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  CF (Z=98), Californium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  ES (Z=99), Einsteinium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  FM (Z=100), Fermium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  MD (Z=101), Mendelevium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  NO (Z=102), Nobelium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>,
    <Element  LR (Z=103), Lawrencium, ChemicalGroup.ACTINIDE, ChemicalPhase.SOLID>]

For specific data on nuclides within each element, refer to the nuclide bases summary table.

List of elements

z

name

symbol

phase

group

is naturally occurring?

is heavy metal?

num. nuclides

1

Hydrogen

H

ChemicalPhase.GAS

ChemicalGroup.NONMETAL

False

False

0

2

Helium

HE

ChemicalPhase.GAS

ChemicalGroup.NOBLE_GAS

False

False

0

3

Lithium

LI

ChemicalPhase.SOLID

ChemicalGroup.ALKALI_METAL

False

False

0

4

Beryllium

BE

ChemicalPhase.SOLID

ChemicalGroup.ALKALINE_EARTH_METAL

False

False

0

5

Boron

B

ChemicalPhase.SOLID

ChemicalGroup.METALLOID

False

False

0

6

Carbon

C

ChemicalPhase.SOLID

ChemicalGroup.NONMETAL

False

False

0

7

Nitrogen

N

ChemicalPhase.GAS

ChemicalGroup.NONMETAL

False

False

0

8

Oxygen

O

ChemicalPhase.GAS

ChemicalGroup.NONMETAL

False

False

0

9

Fluorine

F

ChemicalPhase.GAS

ChemicalGroup.HALOGEN

False

False

0

10

Neon

NE

ChemicalPhase.GAS

ChemicalGroup.NOBLE_GAS

False

False

0

11

Sodium

NA

ChemicalPhase.SOLID

ChemicalGroup.ALKALI_METAL

False

False

0

12

Magnesium

MG

ChemicalPhase.SOLID

ChemicalGroup.ALKALINE_EARTH_METAL

False

False

0

13

Aluminium

AL

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

False

0

14

Silicon

SI

ChemicalPhase.SOLID

ChemicalGroup.METALLOID

False

False

0

15

Phosphorus

P

ChemicalPhase.SOLID

ChemicalGroup.NONMETAL

False

False

0

16

Sulfur

S

ChemicalPhase.SOLID

ChemicalGroup.NONMETAL

False

False

0

17

Chlorine

CL

ChemicalPhase.GAS

ChemicalGroup.HALOGEN

False

False

0

18

Argon

AR

ChemicalPhase.GAS

ChemicalGroup.NOBLE_GAS

False

False

0

19

Potassium

K

ChemicalPhase.SOLID

ChemicalGroup.ALKALI_METAL

False

False

0

20

Calcium

CA

ChemicalPhase.SOLID

ChemicalGroup.ALKALINE_EARTH_METAL

False

False

0

21

Scandium

SC

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

22

Titanium

TI

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

23

Vanadium

V

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

24

Chromium

CR

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

25

Manganese

MN

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

26

Iron

FE

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

27

Cobalt

CO

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

28

Nickel

NI

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

29

Copper

CU

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

30

Zinc

ZN

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

31

Gallium

GA

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

False

0

32

Germanium

GE

ChemicalPhase.SOLID

ChemicalGroup.METALLOID

False

False

0

33

Arsenic

AS

ChemicalPhase.SOLID

ChemicalGroup.METALLOID

False

False

0

34

Selenium

SE

ChemicalPhase.SOLID

ChemicalGroup.NONMETAL

False

False

0

35

Bromine

BR

ChemicalPhase.LIQUID

ChemicalGroup.HALOGEN

False

False

0

36

Krypton

KR

ChemicalPhase.GAS

ChemicalGroup.NOBLE_GAS

False

False

0

37

Rubidium

RB

ChemicalPhase.SOLID

ChemicalGroup.ALKALI_METAL

False

False

0

38

Strontium

SR

ChemicalPhase.SOLID

ChemicalGroup.ALKALINE_EARTH_METAL

False

False

0

39

Yttrium

Y

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

40

Zirconium

ZR

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

41

Niobium

NB

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

42

Molybdenum

MO

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

43

Technetium

TC

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

44

Ruthenium

RU

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

45

Rhodium

RH

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

46

Palladium

PD

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

47

Silver

AG

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

48

Cadmium

CD

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

49

Indium

IN

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

False

0

50

Tin

SN

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

False

0

51

Antimony

SB

ChemicalPhase.SOLID

ChemicalGroup.METALLOID

False

False

0

52

Tellurium

TE

ChemicalPhase.SOLID

ChemicalGroup.METALLOID

False

False

0

53

Iodine

I

ChemicalPhase.SOLID

ChemicalGroup.HALOGEN

False

False

0

54

Xenon

XE

ChemicalPhase.GAS

ChemicalGroup.NOBLE_GAS

False

False

0

55

Cesium

CS

ChemicalPhase.SOLID

ChemicalGroup.ALKALI_METAL

False

False

0

56

Barium

BA

ChemicalPhase.SOLID

ChemicalGroup.ALKALINE_EARTH_METAL

False

False

0

57

Lanthanum

LA

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

58

Cerium

CE

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

59

Praseodymium

PR

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

60

Neodymium

ND

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

61

Promethium

PM

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

62

Samarium

SM

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

63

Europium

EU

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

64

Gadolinium

GD

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

65

Terbium

TB

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

66

Dysprosium

DY

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

67

Holmium

HO

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

68

Erbium

ER

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

69

Thulium

TM

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

70

Ytterbium

YB

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

71

Lutetium

LU

ChemicalPhase.SOLID

ChemicalGroup.LANTHANIDE

False

False

0

72

Hafnium

HF

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

73

Tantalum

TA

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

74

Tungsten

W

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

75

Rhenium

RE

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

76

Osmium

OS

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

77

Iridium

IR

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

78

Platinum

PT

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

79

Gold

AU

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

False

0

80

Mercury

HG

ChemicalPhase.LIQUID

ChemicalGroup.TRANSITION_METAL

False

False

0

81

Thallium

TL

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

False

0

82

Lead

PB

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

False

0

83

Bismuth

BI

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

False

0

84

Polonium

PO

ChemicalPhase.SOLID

ChemicalGroup.METALLOID

False

False

0

85

Astatine

AT

ChemicalPhase.SOLID

ChemicalGroup.HALOGEN

False

False

0

86

Radon

RN

ChemicalPhase.GAS

ChemicalGroup.NOBLE_GAS

False

False

0

87

Francium

FR

ChemicalPhase.SOLID

ChemicalGroup.ALKALI_METAL

False

False

0

88

Radium

RA

ChemicalPhase.SOLID

ChemicalGroup.ALKALINE_EARTH_METAL

False

False

0

89

Actinium

AC

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

False

0

90

Thorium

TH

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

91

Protactinium

PA

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

92

Uranium

U

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

93

Neptunium

NP

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

94

Plutonium

PU

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

95

Americium

AM

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

96

Curium

CM

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

97

Berkelium

BK

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

98

Californium

CF

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

99

Einsteinium

ES

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

100

Fermium

FM

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

101

Mendelevium

MD

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

102

Nobelium

NO

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

103

Lawrencium

LR

ChemicalPhase.SOLID

ChemicalGroup.ACTINIDE

False

True

0

104

Rutherfordium

RF

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

105

Dubnium

DB

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

106

Seaborgium

SG

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

107

Bohrium

BH

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

108

Hassium

HS

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

109

Meitnerium

MT

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

110

Darmstadtium

DS

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

111

Roentgenium

RG

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

112

Copernicium

CN

ChemicalPhase.SOLID

ChemicalGroup.TRANSITION_METAL

False

True

0

113

Nihonium

NH

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

True

0

114

Flevrovium

FL

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

True

0

115

Moscovium

MC

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

True

0

116

Livermorium

LV

ChemicalPhase.SOLID

ChemicalGroup.POST_TRANSITION_METAL

False

True

0

117

Tennessine

TS

ChemicalPhase.SOLID

ChemicalGroup.HALOGEN

False

True

0

118

Oganesson

OG

ChemicalPhase.GAS

ChemicalGroup.NOBLE_GAS

False

True

0

119

Dummy

DP

ChemicalPhase.UNKNOWN

ChemicalGroup.UNKNOWN

False

True

0

120

LumpedFissionProduct

LP

ChemicalPhase.UNKNOWN

ChemicalGroup.UNKNOWN

False

True

0

Notes

Currently, this module contains a lot of data in the global scope. But ARMI is in the process of encapsulating this data, moving it out of the global scope, making it part of the reactor data model, and making it configurable via Settings. Pardon the mess during this transition.

class armi.nucDirectory.elements.ChemicalPhase(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

GAS = 1
LIQUID = 2
SOLID = 3
UNKNOWN = 4
class armi.nucDirectory.elements.ChemicalGroup(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

ALKALI_METAL = 1
ALKALINE_EARTH_METAL = 2
NONMETAL = 3
TRANSITION_METAL = 4
POST_TRANSITION_METAL = 5
METALLOID = 6
HALOGEN = 7
NOBLE_GAS = 8
LANTHANIDE = 9
ACTINIDE = 10
UNKNOWN = 11
class armi.nucDirectory.elements.Element(z, symbol, name, phase='UNKNOWN', group='UNKNOWN')[source]

Bases: object

Represents an element defined on the Periodic Table.

Creates an instance of an Element.

Implementation: An element of the periodic table. I_ARMI_ND_ELEMENTS1
signature: Element
requirements: R_ARMI_ND_ELEMENTS

The Element class acts as a data structure for organizing information about an individual element, including number of protons, name, chemical symbol, phase (at STP), periodic table group, standard weight, and a list of isotope nuclideBase instances.

The Element class has a few methods for appending additional isotopes, checking whether an isotope is naturally occurring, retrieving the natural isotopic abundance, or whether the element is a heavy metal.

Parameters:
  • z (int) – atomic number, number of protons

  • symbol (str) – element symbol

  • name (str) – element name

  • phase (str) – Chemical phase of the element at standard temperature and pressure (e.g., gas, liquid, solid).

  • group (str) – Chemical group of the element.

append(nuclide)[source]

Assigns and sorts the nuclide to the element and ensures no duplicates.

isNaturallyOccurring()[source]

Return True if the element is occurs in nature.

getNaturalIsotopics()[source]

Return a list of nuclides that are naturally occurring for this element.

Notes

This method will filter out any NaturalNuclideBases from the nuclides attribute.

isHeavyMetal()[source]

Return True if all nuclides belonging to the element are heavy metals.

Notes

Heavy metal in this instance is not related to an exact weight or density cut-off, but rather is designated for nuclear fuel burn-up evaluations, where the initial heavy metal mass within a component should be tracked. It is typical to include any element/nuclide above Actinium.

armi.nucDirectory.elements.getElementsByChemicalPhase(phase: ChemicalPhase) List[Element][source]

Pass through to Elements.getElementsByChemicalPhase() for the global Elements object.

armi.nucDirectory.elements.getElementsByChemicalGroup(group: ChemicalGroup) List[Element][source]

Pass through to Elements.getElementsByChemicalGroup() for the global Elements object.

armi.nucDirectory.elements.getName(z: int = None, symbol: str = None) str[source]

Pass through to Elements.getName() for the global Elements object.

armi.nucDirectory.elements.getSymbol(z: int = None, name: str = None) str[source]

Pass through to Elements.getSymbol() for the global Elements object.

armi.nucDirectory.elements.getElementZ(symbol: str = None, name: str = None) int[source]

Pass through to Elements.getElementZ() for the global Elements object.

armi.nucDirectory.elements.factory(elementsFile: str = None)[source]

Pass through to Elements.factory() for the global Elements object.

armi.nucDirectory.elements.addGlobalElement(element: Element)[source]

Pass through to Elements.addElement() for the global Elements object.

armi.nucDirectory.elements.destroyGlobalElements()[source]

Pass through to Elements.clear() for the global Elements object.

class armi.nucDirectory.elements.Elements(elementsFile: str = None)[source]

Bases: object

A container for all the atomics elements information in the simulation.

By design, you would only expect to have one instance of this object in memory during a simulation.

Variables:
  • byZ (dict[int, Element]) – A dictionary to find Element objects by atomic number (integer Z).

  • byName (dict[str, Element]) – A dictionary to find Element objects by unique string identifier (“C”, “PU239”, “U235”, etc).

  • bySymbol (dict[str, Element]) – A dictionary to find Element objects by atomic symbol (“C”, “N”, “PU”, etc).

  • elementsFile (str) – File path to the custom ARMI “elements.dat” file.

DEFAULT_ELEMENTS_FILE = '/home/runner/work/armi/armi/armi/resources/elements.dat'
clear()[source]

Empty all the data in this collection.

addElement(element: Element)[source]

Add an element to this collection.

Raises:

ValueError – If the element already exists in the collection.

factory(elementsFile: str = None)[source]

Generate the Elements instances.

getElementsByChemicalPhase(phase: ChemicalPhase) List[Element][source]

Returns all elements that are of the given chemical phase.

Parameters:

phase (ChemicalPhase) – This should be one of the valid options from the ChemicalPhase class.

Returns:

elems – A list of elements that are associated with the given chemical phase.

Return type:

List[Element]

getElementsByChemicalGroup(group: ChemicalGroup) List[Element][source]

Returns all elements that are of the given chemical group.

Parameters:

group (ChemicalGroup) – This should be one of the valid options from the ChemicalGroup class.

Returns:

elems – A list of elements that are associated with the given chemical group.

Return type:

List[Element]

getName(z: int = None, symbol: str = None) str[source]

Returns element name.

Parameters:
  • z (int) – Atomic number

  • symbol (str) – Element abbreviation e.g. ‘Zr’

Examples

>>> elements.getName(10)
'Neon'
>>> elements.getName(symbol='Ne')
'Neon'
getSymbol(z: int = None, name: str = None) str[source]

Returns element abbreviation given atomic number Z.

Parameters:
  • z (int) – Atomic number

  • name (str) – Element name E.g. Zirconium

Examples

>>> elements.getSymbol(10)
'Ne'
>>> elements.getSymbol(name='Neon')
'Ne'
getElementZ(symbol: str = None, name: str = None) int[source]

Get element atomic number given a symbol or name.

Parameters:
  • symbol (str) – Element symbol e.g. ‘Zr’

  • name (str) – Element name e.g. ‘Zirconium’

Examples

>>> elements.getZ('Zr')
40
>>> elements.getZ(name='Zirconium')
40

Notes

Element Z is stored in elementZBySymbol, indexed by upper-case element symbol.