emmet-builders 0.84.2__py3-none-any.whl → 0.86.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- emmet/builders/abinit/phonon.py +27 -25
- emmet/builders/abinit/sound_velocity.py +15 -11
- emmet/builders/feff/xas.py +1 -2
- emmet/builders/materials/absorption_spectrum.py +25 -14
- emmet/builders/materials/alloys.py +3 -4
- emmet/builders/materials/chemenv.py +2 -3
- emmet/builders/materials/corrected_entries.py +15 -9
- emmet/builders/materials/dielectric.py +19 -11
- emmet/builders/materials/elasticity.py +44 -33
- emmet/builders/materials/electrodes.py +24 -19
- emmet/builders/materials/electronic_structure.py +17 -17
- emmet/builders/materials/magnetism.py +11 -4
- emmet/builders/materials/optimade.py +7 -3
- emmet/builders/materials/piezoelectric.py +24 -21
- emmet/builders/materials/provenance.py +15 -12
- emmet/builders/materials/robocrys.py +2 -3
- emmet/builders/materials/substrates.py +9 -8
- emmet/builders/materials/summary.py +3 -3
- emmet/builders/materials/thermo.py +17 -11
- emmet/builders/matscholar/missing_compositions.py +12 -8
- emmet/builders/mobility/migration_graph.py +5 -5
- emmet/builders/settings.py +21 -17
- emmet/builders/utils.py +15 -10
- emmet/builders/vasp/materials.py +32 -16
- emmet/builders/vasp/task_validator.py +15 -11
- {emmet_builders-0.84.2.dist-info → emmet_builders-0.86.0.dist-info}/METADATA +21 -36
- emmet_builders-0.86.0.dist-info/RECORD +41 -0
- {emmet_builders-0.84.2.dist-info → emmet_builders-0.86.0.dist-info}/WHEEL +1 -1
- emmet/builders/materials/ml.py +0 -87
- emmet/builders/molecules/atomic.py +0 -589
- emmet/builders/molecules/bonds.py +0 -324
- emmet/builders/molecules/metal_binding.py +0 -526
- emmet/builders/molecules/orbitals.py +0 -288
- emmet/builders/molecules/redox.py +0 -496
- emmet/builders/molecules/summary.py +0 -383
- emmet/builders/molecules/thermo.py +0 -500
- emmet/builders/molecules/vibration.py +0 -278
- emmet/builders/qchem/__init__.py +0 -0
- emmet/builders/qchem/molecules.py +0 -734
- emmet_builders-0.84.2.dist-info/RECORD +0 -52
- /emmet/builders/{molecules/__init__.py → py.typed} +0 -0
- {emmet_builders-0.84.2.dist-info → emmet_builders-0.86.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
emmet/builders/__init__.py,sha256=y-ZREtieuFK3MaYvCBDMPf3YLxnsZG1VNho9lMjnRDU,221
|
|
2
|
+
emmet/builders/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
+
emmet/builders/settings.py,sha256=ZNIUKYdwT9Am5Gb-r5tkCTr-R2nysKh4Q_6-PChKZo4,3036
|
|
4
|
+
emmet/builders/utils.py,sha256=8x6wJgcV-DFGhDZzeYwpRXgz8PeZLLr_Q2wnIvBqlvA,10946
|
|
5
|
+
emmet/builders/abinit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
+
emmet/builders/abinit/phonon.py,sha256=A8-bxMq3sTEiZ0dH4P9Gjb5pvOx040pSfhW4pGyTO1U,32034
|
|
7
|
+
emmet/builders/abinit/sound_velocity.py,sha256=D-GFiFtm0DUwvsl31W4GHNFHeZYM4ditZY8hOwcnj9A,7091
|
|
8
|
+
emmet/builders/feff/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
+
emmet/builders/feff/xas.py,sha256=wQnO0IcxAclYY4fVoyc4sDqs1Cx7vFzMq-_oIHnk3EU,2068
|
|
10
|
+
emmet/builders/materials/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
+
emmet/builders/materials/absorption_spectrum.py,sha256=_uQSF8KX8BIHqiW_7oOMtur7uKkzf704H88bXHxJSCs,6892
|
|
12
|
+
emmet/builders/materials/alloys.py,sha256=oAlS4TRt181Z_Cc3jfyrFXwqqRbEfthuv2GxcvKUzzI,14199
|
|
13
|
+
emmet/builders/materials/basic_descriptors.py,sha256=IVCkN0vjkoNis2d_OUezVhPzGpaVcP6IkX123UwB6oQ,5845
|
|
14
|
+
emmet/builders/materials/bonds.py,sha256=TFfkfKG1-7zcim9gPJqRz1UcyVN_px0889VWhSICc5g,1847
|
|
15
|
+
emmet/builders/materials/chemenv.py,sha256=ZTR6_VyAif3yvcSy8xagBkmKczZsDD3LC77RMKi4E0U,1191
|
|
16
|
+
emmet/builders/materials/corrected_entries.py,sha256=nlA7qSXdQM7_fe8WiPJ_dN971OFeMonkZqc7rlL6jIE,12480
|
|
17
|
+
emmet/builders/materials/dielectric.py,sha256=-KVqY6l4qBcj_BaQf6hd9VsGlbC_Y9wEH_z2VfUNz2s,6692
|
|
18
|
+
emmet/builders/materials/elasticity.py,sha256=2sNJAOTFEkIsyReQPGdzbIXt23PSsq_5dCv9RBeWpI4,16571
|
|
19
|
+
emmet/builders/materials/electrodes.py,sha256=VESA_xY8BJiocPanRfta0hUyi0SBAOIlsZ0dEKty5tE,23855
|
|
20
|
+
emmet/builders/materials/electronic_structure.py,sha256=YJiayaEUd5Hnfj4tKJpw1HpjAwCckf7S3O1et25Fbvs,29457
|
|
21
|
+
emmet/builders/materials/magnetism.py,sha256=JxEWUzgrpI3fXoR9dIhT_iU8iW5O3bGIquDevlAvnjw,4738
|
|
22
|
+
emmet/builders/materials/optimade.py,sha256=TYzw-xLaNeNa2h0Fa5Ft3Iqg0LMEHj1_-MbfMmfDdpk,5211
|
|
23
|
+
emmet/builders/materials/oxidation_states.py,sha256=ptTfakXk1bjexniBzx87XCutiuRiolFpnMZETsJlj6I,1670
|
|
24
|
+
emmet/builders/materials/piezoelectric.py,sha256=XPjl3iPwS9VFqmxu3mT34S1CHUEli3Samu4B2vH7Baw,7857
|
|
25
|
+
emmet/builders/materials/provenance.py,sha256=HbjP7TW6GVIp86vylu4PiInem0oE9hWFKh0DRx_eIzs,9116
|
|
26
|
+
emmet/builders/materials/robocrys.py,sha256=6nVAgqsk2T9VdibCR2eZeVosqwJ2lEt_Yr_4hzotEIA,1257
|
|
27
|
+
emmet/builders/materials/similarity.py,sha256=SIqdmPgs3f7oUQCeu0IBh26y_evYWc0EOEvbIALl-0s,5414
|
|
28
|
+
emmet/builders/materials/substrates.py,sha256=cdHNYabSvsdONWUP4alU73PpMzHc4DYLuEdUpIZETds,6132
|
|
29
|
+
emmet/builders/materials/summary.py,sha256=ZIR2rV1WeGvU0B_wz9W_VX1KXhs104fDwSxsVMstlQk,8030
|
|
30
|
+
emmet/builders/materials/thermo.py,sha256=oOH-8IEyUxNckXniFCe_-En2rTG2bNybudqdrf9ztL4,10988
|
|
31
|
+
emmet/builders/matscholar/missing_compositions.py,sha256=6prFb3mmvr_y12XIzZ8w8SiHLEone1B6Hxyq6cTusSE,8704
|
|
32
|
+
emmet/builders/mobility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
33
|
+
emmet/builders/mobility/migration_graph.py,sha256=BxVh3homd9GEniB33_dJ1e2wmRvMnievHHPRs6fnbBw,3899
|
|
34
|
+
emmet/builders/vasp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
|
+
emmet/builders/vasp/materials.py,sha256=pcSUF78RBaKL3FdyDB6QSjrL0apUi3PT0A8Sj6Bc5Ks,13302
|
|
36
|
+
emmet/builders/vasp/mp_potcar_stats.json.gz,sha256=x3bn4gSMj1U_3bR2qKIaBtbJlYT-EJgoUIMFTA9bvaU,338957
|
|
37
|
+
emmet/builders/vasp/task_validator.py,sha256=LCj-LBuNzt2vJQ8G6WJvBtiM7_Kxrh3Uhvq97viVoIA,3033
|
|
38
|
+
emmet_builders-0.86.0.dist-info/METADATA,sha256=IANQcvHHJADuzqjBesW9So2XWUIQNQZE0FuaDPui554,1588
|
|
39
|
+
emmet_builders-0.86.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
40
|
+
emmet_builders-0.86.0.dist-info/top_level.txt,sha256=6GcpbmWPeFhNCTfDFilb8GQ4T1UQu4z9c5jpobjwE-Q,6
|
|
41
|
+
emmet_builders-0.86.0.dist-info/RECORD,,
|
emmet/builders/materials/ml.py
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
from importlib.metadata import version
|
|
2
|
-
from typing import TYPE_CHECKING, Optional, Union
|
|
3
|
-
|
|
4
|
-
from maggma.builders.map_builder import MapBuilder
|
|
5
|
-
from maggma.core import Store
|
|
6
|
-
from matcalc.utils import get_universal_calculator
|
|
7
|
-
from pymatgen.core import Structure
|
|
8
|
-
|
|
9
|
-
from emmet.core.ml import MLDoc
|
|
10
|
-
from emmet.core.utils import jsanitize
|
|
11
|
-
|
|
12
|
-
if TYPE_CHECKING:
|
|
13
|
-
from ase.calculators.calculator import Calculator
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class MLBuilder(MapBuilder):
|
|
17
|
-
def __init__(
|
|
18
|
-
self,
|
|
19
|
-
materials: Store,
|
|
20
|
-
ml_potential: Store,
|
|
21
|
-
model: Union[str, "Calculator"],
|
|
22
|
-
model_kwargs: Optional[dict] = None,
|
|
23
|
-
prop_kwargs: Optional[dict] = None,
|
|
24
|
-
provenance: Optional[dict] = None,
|
|
25
|
-
**kwargs,
|
|
26
|
-
):
|
|
27
|
-
"""Machine learning interatomic potential builder.
|
|
28
|
-
|
|
29
|
-
Args:
|
|
30
|
-
materials (Store): Materials to use as input structures.
|
|
31
|
-
ml_potential (Store): Where to save MLDoc documents to.
|
|
32
|
-
model (str | Calculator): ASE calculator or name of model to use as ML
|
|
33
|
-
potential. See matcalc.utils.UNIVERSAL_CALCULATORS for recognized names.
|
|
34
|
-
model_kwargs (dict, optional): Additional kwargs to pass to the calculator.
|
|
35
|
-
Defaults to None.
|
|
36
|
-
prop_kwargs (dict[str, dict], optional): Separate kwargs passed to each matcalc
|
|
37
|
-
PropCalc class. Recognized keys are RelaxCalc, ElasticityCalc, PhononCalc, EOSCalc.
|
|
38
|
-
Defaults to None.
|
|
39
|
-
provenance (dict, optional): Additional provenance information to include in
|
|
40
|
-
MLDocs. Will be saved in each document so use sparingly. Defaults to None.
|
|
41
|
-
Set to {} to disable default provenance model, version, matcalc_version.
|
|
42
|
-
"""
|
|
43
|
-
self.materials = materials
|
|
44
|
-
self.ml_potential = ml_potential
|
|
45
|
-
self.kwargs = kwargs
|
|
46
|
-
self.model = get_universal_calculator(model, **(model_kwargs or {}))
|
|
47
|
-
self.prop_kwargs = prop_kwargs or {}
|
|
48
|
-
|
|
49
|
-
if provenance == {}:
|
|
50
|
-
self.provenance = {}
|
|
51
|
-
else:
|
|
52
|
-
model_name = (
|
|
53
|
-
model if isinstance(model, str) else type(model).__name__
|
|
54
|
-
).lower()
|
|
55
|
-
model_name = {"chgnetcalculator": "chgnet"}.get(model_name, model_name)
|
|
56
|
-
pkg_name = {"m3gnet": "matgl"}.get(model_name, model_name)
|
|
57
|
-
self.provenance = dict(
|
|
58
|
-
model=model_name,
|
|
59
|
-
version=version(pkg_name),
|
|
60
|
-
matcalc_version=version("matcalc"),
|
|
61
|
-
**(provenance or {}),
|
|
62
|
-
)
|
|
63
|
-
|
|
64
|
-
# Enforce that we key on material_id
|
|
65
|
-
self.materials.key = "material_id"
|
|
66
|
-
self.ml_potential.key = "material_id"
|
|
67
|
-
super().__init__(
|
|
68
|
-
source=materials,
|
|
69
|
-
target=ml_potential,
|
|
70
|
-
projection=["structure", "deprecated"],
|
|
71
|
-
**kwargs,
|
|
72
|
-
)
|
|
73
|
-
|
|
74
|
-
def unary_function(self, item):
|
|
75
|
-
struct = Structure.from_dict(item["structure"])
|
|
76
|
-
mp_id, deprecated = item["material_id"], item["deprecated"]
|
|
77
|
-
|
|
78
|
-
doc = MLDoc(
|
|
79
|
-
structure=struct,
|
|
80
|
-
material_id=mp_id,
|
|
81
|
-
calculator=self.model,
|
|
82
|
-
prop_kwargs=self.prop_kwargs,
|
|
83
|
-
deprecated=deprecated,
|
|
84
|
-
**self.provenance,
|
|
85
|
-
)
|
|
86
|
-
|
|
87
|
-
return jsanitize(doc, allow_bson=True)
|