Oliynyk

This code is an interface for working with the Oliynyk property dataset.

Available elemental properties

[1]:
from bobleesj.utils.sources.oliynyk import Property as P

# Get the string value of the property
P.ATOMIC_NUMBER.value
[1]:
'atomic_number'

Oliynyk

Import the class and initialize it

[3]:
from bobleesj.utils.sources.oliynyk import Oliynyk
[4]:
# Instantiate the Oliynyk class
oliynyk = Oliynyk()

Get the property value given the element and the property

[5]:
oliynyk.db["Cu"][P.ATOMIC_NUMBER]
[5]:
29

Get the property values given the formula and the property

[6]:
oliynyk.get_property_data_for_formula("NdSi2", P.MEND_NUM)
[6]:
{'Nd': 19, 'Si': 78}

Get all elemental values for the given property

[7]:
oliynyk.get_property_data(P.AW)
[7]:
{'Li': 6.941,
 'Be': 9.01218,
 'B': 10.811,
 'C': 12.011,
 'N': 14.00674,
 'O': 15.9994,
 'F': 18.998403,
 'Na': 22.989768,
 'Mg': 24.305,
 'Al': 26.981539,
 'Si': 28.0855,
 'P': 30.973762,
 'S': 32.066,
 'Cl': 35.4527,
 'K': 39.0983,
 'Ca': 40.078,
 'Sc': 44.95591,
 'Ti': 47.867,
 'V': 50.9415,
 'Cr': 51.9961,
 'Mn': 54.93805,
 'Fe': 55.847,
 'Co': 58.9332,
 'Ni': 58.6934,
 'Cu': 63.546,
 'Zn': 65.38,
 'Ga': 69.723,
 'Ge': 72.63,
 'As': 74.92159,
 'Se': 78.971,
 'Br': 79.904,
 'Rb': 85.4678,
 'Sr': 87.62,
 'Y': 88.90584,
 'Zr': 91.224,
 'Nb': 92.90638,
 'Mo': 95.95,
 'Ru': 101.07,
 'Rh': 102.9055,
 'Pd': 106.42,
 'Ag': 107.8682,
 'Cd': 112.411,
 'In': 114.818,
 'Sn': 118.71,
 'Sb': 121.76,
 'Te': 127.6,
 'I': 126.90447,
 'Cs': 132.90543,
 'Ba': 137.327,
 'La': 138.9055,
 'Ce': 140.115,
 'Pr': 140.90765,
 'Nd': 144.242,
 'Sm': 150.36,
 'Eu': 151.965,
 'Gd': 157.25,
 'Tb': 158.92534,
 'Dy': 162.5,
 'Ho': 164.93032,
 'Er': 167.259,
 'Tm': 168.93421,
 'Yb': 173.045,
 'Lu': 174.967,
 'Hf': 178.49,
 'Ta': 180.9479,
 'W': 183.84,
 'Re': 186.207,
 'Os': 190.23,
 'Ir': 192.217,
 'Pt': 195.084,
 'Au': 196.96654,
 'Tl': 204.3833,
 'Pb': 207.2,
 'Bi': 208.98037,
 'Th': 232.0381,
 'U': 238.0289}

Validate

Check whether the formula is supported

[8]:
oliynyk.is_formula_supported("NdSi2")
[8]:
True

Filter formulas into supported and unsupported

[9]:
supported, unsupported = oliynyk.get_supported_formulas(["FeH", "NdSi2"])
print("Supported:", supported)
print("Unsupported:", unsupported)
Supported: ['NdSi2']
Unsupported: ['FeH']

List elements supported

[10]:
# List supported elements in the Oliynyk database
oliynyk.list_supported_elements()
[10]:
['Li',
 'Be',
 'B',
 'C',
 'N',
 'O',
 'F',
 'Na',
 'Mg',
 'Al',
 'Si',
 'P',
 'S',
 'Cl',
 'K',
 'Ca',
 'Sc',
 'Ti',
 'V',
 'Cr',
 'Mn',
 'Fe',
 'Co',
 'Ni',
 'Cu',
 'Zn',
 'Ga',
 'Ge',
 'As',
 'Se',
 'Br',
 'Rb',
 'Sr',
 'Y',
 'Zr',
 'Nb',
 'Mo',
 'Ru',
 'Rh',
 'Pd',
 'Ag',
 'Cd',
 'In',
 'Sn',
 'Sb',
 'Te',
 'I',
 'Cs',
 'Ba',
 'La',
 'Ce',
 'Pr',
 'Nd',
 'Sm',
 'Eu',
 'Gd',
 'Tb',
 'Dy',
 'Ho',
 'Er',
 'Tm',
 'Yb',
 'Lu',
 'Hf',
 'Ta',
 'W',
 'Re',
 'Os',
 'Ir',
 'Pt',
 'Au',
 'Tl',
 'Pb',
 'Bi',
 'Th',
 'U']