emmet-builders 0.84.10rc1__py3-none-any.whl → 0.85.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.
Potentially problematic release.
This version of emmet-builders might be problematic. Click here for more details.
- emmet/builders/abinit/phonon.py +12 -14
- emmet/builders/abinit/sound_velocity.py +1 -1
- emmet/builders/materials/absorption_spectrum.py +16 -10
- emmet/builders/materials/alloys.py +1 -1
- emmet/builders/materials/corrected_entries.py +1 -1
- emmet/builders/materials/dielectric.py +10 -7
- emmet/builders/materials/elasticity.py +13 -9
- emmet/builders/materials/electrodes.py +1 -1
- emmet/builders/materials/electronic_structure.py +1 -1
- emmet/builders/materials/magnetism.py +2 -1
- emmet/builders/materials/piezoelectric.py +23 -19
- emmet/builders/materials/provenance.py +3 -4
- emmet/builders/materials/substrates.py +2 -2
- emmet/builders/materials/summary.py +3 -3
- emmet/builders/settings.py +14 -9
- emmet/builders/utils.py +5 -4
- emmet/builders/vasp/materials.py +11 -4
- emmet/builders/vasp/task_validator.py +3 -1
- {emmet_builders-0.84.10rc1.dist-info → emmet_builders-0.85.0.dist-info}/METADATA +7 -30
- emmet_builders-0.85.0.dist-info/RECORD +41 -0
- emmet/builders/materials/ml.py +0 -101
- emmet/builders/molecules/atomic.py +0 -592
- emmet/builders/molecules/bonds.py +0 -329
- emmet/builders/molecules/electric.py +0 -287
- emmet/builders/molecules/metal_binding.py +0 -528
- emmet/builders/molecules/orbitals.py +0 -292
- emmet/builders/molecules/redox.py +0 -502
- emmet/builders/molecules/summary.py +0 -406
- emmet/builders/molecules/thermo.py +0 -505
- emmet/builders/molecules/trajectory.py +0 -530
- emmet/builders/molecules/vibration.py +0 -282
- emmet/builders/qchem/__init__.py +0 -0
- emmet/builders/qchem/molecules.py +0 -745
- emmet_builders-0.84.10rc1.dist-info/RECORD +0 -54
- /emmet/builders/{molecules/__init__.py → py.typed} +0 -0
- {emmet_builders-0.84.10rc1.dist-info → emmet_builders-0.85.0.dist-info}/WHEEL +0 -0
- {emmet_builders-0.84.10rc1.dist-info → emmet_builders-0.85.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=Sq0wTm5WDWc6VUwadX6PExgiPUAStxJuwCj_Yg00Qpk,9088
|
|
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=9iYQJfxHf0FmuueBhor_0bsIkbOv6-yK77K7FTZAnRo,2951
|
|
38
|
+
emmet_builders-0.85.0.dist-info/METADATA,sha256=jA-m-HgdaPfW9ylUpDsDDmXT58YzggjEBYjQFo1vrJE,1582
|
|
39
|
+
emmet_builders-0.85.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
40
|
+
emmet_builders-0.85.0.dist-info/top_level.txt,sha256=6GcpbmWPeFhNCTfDFilb8GQ4T1UQu4z9c5jpobjwE-Q,6
|
|
41
|
+
emmet_builders-0.85.0.dist-info/RECORD,,
|
emmet/builders/materials/ml.py
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
from importlib.metadata import version
|
|
2
|
-
|
|
3
|
-
from maggma.builders.map_builder import MapBuilder
|
|
4
|
-
from maggma.core import Store
|
|
5
|
-
|
|
6
|
-
try:
|
|
7
|
-
from matcalc import PESCalculator
|
|
8
|
-
|
|
9
|
-
matcalc_installed = True
|
|
10
|
-
except ImportError:
|
|
11
|
-
matcalc_installed = False
|
|
12
|
-
|
|
13
|
-
from pymatgen.core import Structure
|
|
14
|
-
|
|
15
|
-
from emmet.core.ml import MLDoc
|
|
16
|
-
from emmet.core.utils import jsanitize
|
|
17
|
-
|
|
18
|
-
try:
|
|
19
|
-
from ase.calculators.calculator import Calculator
|
|
20
|
-
|
|
21
|
-
ase_installed = True
|
|
22
|
-
except ImportError:
|
|
23
|
-
ase_installed = False
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
class MLBuilder(MapBuilder):
|
|
27
|
-
def __init__(
|
|
28
|
-
self,
|
|
29
|
-
materials: Store,
|
|
30
|
-
ml_potential: Store,
|
|
31
|
-
model: str | Calculator,
|
|
32
|
-
model_kwargs: dict | None = None,
|
|
33
|
-
prop_kwargs: dict | None = None,
|
|
34
|
-
provenance: dict | None = None,
|
|
35
|
-
**kwargs,
|
|
36
|
-
):
|
|
37
|
-
"""Machine learning interatomic potential builder.
|
|
38
|
-
|
|
39
|
-
Args:
|
|
40
|
-
materials (Store): Materials to use as input structures.
|
|
41
|
-
ml_potential (Store): Where to save MLDoc documents to.
|
|
42
|
-
model (str | Calculator): ASE calculator or name of model to use as ML
|
|
43
|
-
potential. See matcalc.utils.UNIVERSAL_CALCULATORS for recognized names.
|
|
44
|
-
model_kwargs (dict, optional): Additional kwargs to pass to the calculator.
|
|
45
|
-
Defaults to None.
|
|
46
|
-
prop_kwargs (dict[str, dict], optional): Separate kwargs passed to each matcalc
|
|
47
|
-
PropCalc class. Recognized keys are RelaxCalc, ElasticityCalc, PhononCalc, EOSCalc.
|
|
48
|
-
Defaults to None.
|
|
49
|
-
provenance (dict, optional): Additional provenance information to include in
|
|
50
|
-
MLDocs. Will be saved in each document so use sparingly. Defaults to None.
|
|
51
|
-
Set to {} to disable default provenance model, version, matcalc_version.
|
|
52
|
-
"""
|
|
53
|
-
|
|
54
|
-
if not matcalc_installed or not ase_installed:
|
|
55
|
-
raise ImportError("Please `pip install matcalc` to use the MLBuilder.")
|
|
56
|
-
|
|
57
|
-
self.materials = materials
|
|
58
|
-
self.ml_potential = ml_potential
|
|
59
|
-
self.kwargs = kwargs
|
|
60
|
-
self.model = PESCalculator.load_universal(model, **(model_kwargs or {}))
|
|
61
|
-
self.prop_kwargs = prop_kwargs or {}
|
|
62
|
-
|
|
63
|
-
if provenance == {}:
|
|
64
|
-
self.provenance = {}
|
|
65
|
-
else:
|
|
66
|
-
model_name = (
|
|
67
|
-
model if isinstance(model, str) else type(model).__name__
|
|
68
|
-
).lower()
|
|
69
|
-
model_name = {"chgnetcalculator": "chgnet"}.get(model_name, model_name)
|
|
70
|
-
pkg_name = {"m3gnet": "matgl"}.get(model_name, model_name)
|
|
71
|
-
self.provenance = dict(
|
|
72
|
-
model=model_name,
|
|
73
|
-
version=version(pkg_name),
|
|
74
|
-
matcalc_version=version("matcalc"),
|
|
75
|
-
**(provenance or {}),
|
|
76
|
-
)
|
|
77
|
-
|
|
78
|
-
# Enforce that we key on material_id
|
|
79
|
-
self.materials.key = "material_id"
|
|
80
|
-
self.ml_potential.key = "material_id"
|
|
81
|
-
super().__init__(
|
|
82
|
-
source=materials,
|
|
83
|
-
target=ml_potential,
|
|
84
|
-
projection=["structure", "deprecated"],
|
|
85
|
-
**kwargs,
|
|
86
|
-
)
|
|
87
|
-
|
|
88
|
-
def unary_function(self, item):
|
|
89
|
-
struct = Structure.from_dict(item["structure"])
|
|
90
|
-
mp_id, deprecated = item["material_id"], item["deprecated"]
|
|
91
|
-
|
|
92
|
-
doc = MLDoc(
|
|
93
|
-
structure=struct,
|
|
94
|
-
material_id=mp_id,
|
|
95
|
-
calculator=self.model,
|
|
96
|
-
prop_kwargs=self.prop_kwargs,
|
|
97
|
-
deprecated=deprecated,
|
|
98
|
-
**self.provenance,
|
|
99
|
-
)
|
|
100
|
-
|
|
101
|
-
return jsanitize(doc, allow_bson=True)
|