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.
Files changed (42) hide show
  1. emmet/builders/abinit/phonon.py +27 -25
  2. emmet/builders/abinit/sound_velocity.py +15 -11
  3. emmet/builders/feff/xas.py +1 -2
  4. emmet/builders/materials/absorption_spectrum.py +25 -14
  5. emmet/builders/materials/alloys.py +3 -4
  6. emmet/builders/materials/chemenv.py +2 -3
  7. emmet/builders/materials/corrected_entries.py +15 -9
  8. emmet/builders/materials/dielectric.py +19 -11
  9. emmet/builders/materials/elasticity.py +44 -33
  10. emmet/builders/materials/electrodes.py +24 -19
  11. emmet/builders/materials/electronic_structure.py +17 -17
  12. emmet/builders/materials/magnetism.py +11 -4
  13. emmet/builders/materials/optimade.py +7 -3
  14. emmet/builders/materials/piezoelectric.py +24 -21
  15. emmet/builders/materials/provenance.py +15 -12
  16. emmet/builders/materials/robocrys.py +2 -3
  17. emmet/builders/materials/substrates.py +9 -8
  18. emmet/builders/materials/summary.py +3 -3
  19. emmet/builders/materials/thermo.py +17 -11
  20. emmet/builders/matscholar/missing_compositions.py +12 -8
  21. emmet/builders/mobility/migration_graph.py +5 -5
  22. emmet/builders/settings.py +21 -17
  23. emmet/builders/utils.py +15 -10
  24. emmet/builders/vasp/materials.py +32 -16
  25. emmet/builders/vasp/task_validator.py +15 -11
  26. {emmet_builders-0.84.2.dist-info → emmet_builders-0.86.0.dist-info}/METADATA +21 -36
  27. emmet_builders-0.86.0.dist-info/RECORD +41 -0
  28. {emmet_builders-0.84.2.dist-info → emmet_builders-0.86.0.dist-info}/WHEEL +1 -1
  29. emmet/builders/materials/ml.py +0 -87
  30. emmet/builders/molecules/atomic.py +0 -589
  31. emmet/builders/molecules/bonds.py +0 -324
  32. emmet/builders/molecules/metal_binding.py +0 -526
  33. emmet/builders/molecules/orbitals.py +0 -288
  34. emmet/builders/molecules/redox.py +0 -496
  35. emmet/builders/molecules/summary.py +0 -383
  36. emmet/builders/molecules/thermo.py +0 -500
  37. emmet/builders/molecules/vibration.py +0 -278
  38. emmet/builders/qchem/__init__.py +0 -0
  39. emmet/builders/qchem/molecules.py +0 -734
  40. emmet_builders-0.84.2.dist-info/RECORD +0 -52
  41. /emmet/builders/{molecules/__init__.py → py.typed} +0 -0
  42. {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,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.44.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -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)