Skip to content

Commit

Permalink
Move mendeleev property list to global variable
Browse files Browse the repository at this point in the history
  • Loading branch information
jan-janssen committed Feb 5, 2024
1 parent 1743981 commit 7fbeb29
Showing 1 changed file with 118 additions and 116 deletions.
234 changes: 118 additions & 116 deletions pyiron_atomistics/atomistics/structure/periodic_table.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,123 @@
pandas.options.mode.chained_assignment = None


MENDELEEV_PROPERTY_LIST = [
"abundance_crust",
"abundance_sea",
"annotation",
"atomic_number",
"atomic_radius",
"atomic_radius_rahm",
"atomic_volume",
"atomic_weight",
"atomic_weight_uncertainty",
"block",
"boiling_point",
"c6",
"c6_gb",
"cas",
"covalent_radius",
"covalent_radius_bragg",
"covalent_radius_cordero",
"covalent_radius_pyykko",
"covalent_radius_pyykko_double",
"covalent_radius_pyykko_triple",
"cpk_color",
"density",
"description",
"dipole_polarizability",
"dipole_polarizability_unc",
"discoverers",
"discovery_location",
"discovery_year",
"ec",
"econf",
"electron_affinity",
"electronegativity",
"electronegativity_allen",
"electronegativity_allred_rochow",
"electronegativity_cottrell_sutton",
"electronegativity_ghosh",
"electronegativity_gordy",
"electronegativity_li_xue",
"electronegativity_martynov_batsanov",
"electronegativity_mulliken",
"electronegativity_nagle",
"electronegativity_pauling",
"electronegativity_sanderson",
"electronegativity_scales",
"electrons",
"electrophilicity",
"en_allen",
"en_ghosh",
"en_pauling",
"evaporation_heat",
"fusion_heat",
"gas_basicity",
"geochemical_class",
"glawe_number",
"goldschmidt_class",
"group",
"group_id",
"hardness",
"heat_of_formation",
"inchi",
"init_on_load",
"ionenergies",
"ionic_radii",
"is_monoisotopic",
"is_radioactive",
"isotopes",
"jmol_color",
"lattice_constant",
"lattice_structure",
"mass",
"mass_number",
"mass_str",
"melting_point",
"mendeleev_number",
"metadata",
"metallic_radius",
"metallic_radius_c12",
"molar_heat_capacity",
"molcas_gv_color",
"name",
"name_origin",
"neutrons",
"nist_webbook_url",
"nvalence",
"oxidation_states",
"oxides",
"oxistates",
"period",
"pettifor_number",
"phase_transitions",
"proton_affinity",
"protons",
"registry",
"sconst",
"screening_constants",
"series",
"softness",
"sources",
"specific_heat",
"specific_heat_capacity",
"symbol",
"thermal_conductivity",
"uses",
"vdw_radius",
"vdw_radius_alvarez",
"vdw_radius_batsanov",
"vdw_radius_bondi",
"vdw_radius_dreiding",
"vdw_radius_mm3",
"vdw_radius_rt",
"vdw_radius_truhlar",
"vdw_radius_uff",
"zeff",
]


@lru_cache(maxsize=118)
def element(*args):
import mendeleev
Expand All @@ -40,121 +157,6 @@ def __init__(self, sub):
"""
self._dataset = None
self.sub = sub
self._mendeleev_property_lst = [
"abundance_crust",
"abundance_sea",
"annotation",
"atomic_number",
"atomic_radius",
"atomic_radius_rahm",
"atomic_volume",
"atomic_weight",
"atomic_weight_uncertainty",
"block",
"boiling_point",
"c6",
"c6_gb",
"cas",
"covalent_radius",
"covalent_radius_bragg",
"covalent_radius_cordero",
"covalent_radius_pyykko",
"covalent_radius_pyykko_double",
"covalent_radius_pyykko_triple",
"cpk_color",
"density",
"description",
"dipole_polarizability",
"dipole_polarizability_unc",
"discoverers",
"discovery_location",
"discovery_year",
"ec",
"econf",
"electron_affinity",
"electronegativity",
"electronegativity_allen",
"electronegativity_allred_rochow",
"electronegativity_cottrell_sutton",
"electronegativity_ghosh",
"electronegativity_gordy",
"electronegativity_li_xue",
"electronegativity_martynov_batsanov",
"electronegativity_mulliken",
"electronegativity_nagle",
"electronegativity_pauling",
"electronegativity_sanderson",
"electronegativity_scales",
"electrons",
"electrophilicity",
"en_allen",
"en_ghosh",
"en_pauling",
"evaporation_heat",
"fusion_heat",
"gas_basicity",
"geochemical_class",
"glawe_number",
"goldschmidt_class",
"group",
"group_id",
"hardness",
"heat_of_formation",
"inchi",
"init_on_load",
"ionenergies",
"ionic_radii",
"is_monoisotopic",
"is_radioactive",
"isotopes",
"jmol_color",
"lattice_constant",
"lattice_structure",
"mass",
"mass_number",
"mass_str",
"melting_point",
"mendeleev_number",
"metadata",
"metallic_radius",
"metallic_radius_c12",
"molar_heat_capacity",
"molcas_gv_color",
"name",
"name_origin",
"neutrons",
"nist_webbook_url",
"nvalence",
"oxidation_states",
"oxides",
"oxistates",
"period",
"pettifor_number",
"phase_transitions",
"proton_affinity",
"protons",
"registry",
"sconst",
"screening_constants",
"series",
"softness",
"sources",
"specific_heat",
"specific_heat_capacity",
"symbol",
"thermal_conductivity",
"uses",
"vdw_radius",
"vdw_radius_alvarez",
"vdw_radius_batsanov",
"vdw_radius_bondi",
"vdw_radius_dreiding",
"vdw_radius_mm3",
"vdw_radius_rt",
"vdw_radius_truhlar",
"vdw_radius_uff",
"zeff",
]
self._element_str = None
stringtypes = str
if isinstance(self.sub, stringtypes):
Expand Down Expand Up @@ -192,7 +194,7 @@ def __getattr__(self, item):
def __getitem__(self, item):
if item in self._mendeleev_translation_dict.keys():
item = self._mendeleev_translation_dict[item]
if item in self._mendeleev_property_lst:
if item in MENDELEEV_PROPERTY_LIST:
return getattr(element(self._element_str), item)
if item in self.sub.index:
return self.sub[item]
Expand Down

0 comments on commit 7fbeb29

Please sign in to comment.