emmet-builders 0.84.1__tar.gz → 0.84.2__tar.gz
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-0.84.1 → emmet-builders-0.84.2}/PKG-INFO +2 -1
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/abinit/phonon.py +22 -24
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/alloys.py +9 -9
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/corrected_entries.py +10 -10
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/electrodes.py +12 -10
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/provenance.py +3 -3
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/utils.py +15 -13
- emmet-builders-0.84.2/emmet/builders/vasp/mp_potcar_stats.json.gz +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet_builders.egg-info/PKG-INFO +2 -1
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet_builders.egg-info/SOURCES.txt +0 -2
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet_builders.egg-info/requires.txt +3 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/requirements/deployment.txt +15 -15
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/requirements/ubuntu-latest_py3.10.txt +65 -158
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/requirements/ubuntu-latest_py3.10_extras.txt +122 -197
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/requirements/ubuntu-latest_py3.11.txt +63 -152
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/requirements/ubuntu-latest_py3.11_extras.txt +119 -191
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/setup.py +1 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_vasp.py +3 -1
- emmet-builders-0.84.1/emmet/builders/vasp/mp_potcar_stats.json.gz +0 -0
- emmet-builders-0.84.1/requirements/ubuntu-latest_py3.9.txt +0 -475
- emmet-builders-0.84.1/requirements/ubuntu-latest_py3.9_extras.txt +0 -758
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/MANIFEST.in +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/abinit/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/abinit/sound_velocity.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/feff/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/feff/xas.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/absorption_spectrum.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/basic_descriptors.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/bonds.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/chemenv.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/dielectric.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/elasticity.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/electronic_structure.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/magnetism.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/ml.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/optimade.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/oxidation_states.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/piezoelectric.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/robocrys.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/similarity.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/substrates.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/summary.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/thermo.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/matscholar/missing_compositions.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/mobility/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/mobility/migration_graph.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/atomic.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/bonds.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/metal_binding.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/orbitals.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/redox.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/summary.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/thermo.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/molecules/vibration.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/qchem/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/qchem/molecules.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/settings.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/vasp/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/vasp/materials.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/vasp/task_validator.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet_builders.egg-info/dependency_links.txt +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet_builders.egg-info/not-zip-safe +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet_builders.egg-info/top_level.txt +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/setup.cfg +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/conftest.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/__init__.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_atomic.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_bonds.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_metal_binding.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_orbitals.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_redox.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_summary.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_thermo.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/molecules/test_vibration.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_absorption.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_basic_descriptors.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_chemenv.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_corrected_entries_thermo.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_dielectric.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_elasticity.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_electronic_structure.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_magnetism.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_materials.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_ml.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_mobility.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_oxidation.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_piezoelectric.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_qchem.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_similarity.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_summary.py +0 -0
- {emmet-builders-0.84.1 → emmet-builders-0.84.2}/tests/test_utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: emmet-builders
|
|
3
|
-
Version: 0.84.
|
|
3
|
+
Version: 0.84.2
|
|
4
4
|
Summary: Builders for the Emmet Library
|
|
5
5
|
Home-page: https://github.com/materialsproject/emmet
|
|
6
6
|
Author: The Materials Project
|
|
@@ -12,6 +12,7 @@ Description-Content-Type: text/markdown
|
|
|
12
12
|
Provides-Extra: test
|
|
13
13
|
Provides-Extra: docs
|
|
14
14
|
Provides-Extra: ml
|
|
15
|
+
Provides-Extra: openmm
|
|
15
16
|
|
|
16
17
|
# 
|
|
17
18
|
|
|
@@ -1,41 +1,39 @@
|
|
|
1
|
-
import tempfile
|
|
2
1
|
import os
|
|
2
|
+
import tempfile
|
|
3
3
|
from math import ceil
|
|
4
|
-
from
|
|
4
|
+
from typing import Dict, Iterator, List, Optional, Tuple
|
|
5
|
+
|
|
5
6
|
import numpy as np
|
|
6
|
-
from
|
|
7
|
+
from abipy.abio.inputs import AnaddbInput
|
|
8
|
+
from abipy.core.abinit_units import eV_to_THz
|
|
9
|
+
from abipy.dfpt.anaddbnc import AnaddbNcFile
|
|
10
|
+
from abipy.dfpt.ddb import AnaddbError, DdbFile, DielectricTensorGenerator
|
|
11
|
+
from abipy.dfpt.phonons import PhononBands
|
|
12
|
+
from abipy.flowtk.tasks import AnaddbTask, TaskManager
|
|
13
|
+
from maggma.builders import Builder
|
|
14
|
+
from maggma.core import Store
|
|
7
15
|
from maggma.utils import grouper
|
|
8
|
-
|
|
16
|
+
from pymatgen.core.structure import Structure
|
|
17
|
+
from pymatgen.io.abinit.abiobjects import KSampling
|
|
9
18
|
from pymatgen.phonon.bandstructure import PhononBandStructureSymmLine
|
|
10
19
|
from pymatgen.phonon.dos import CompletePhononDos
|
|
11
20
|
from pymatgen.phonon.ir_spectra import IRDielectricTensor
|
|
12
|
-
from pymatgen.core.structure import Structure
|
|
13
|
-
from pymatgen.io.abinit.abiobjects import KSampling
|
|
14
|
-
from pymatgen.symmetry.bandstructure import HighSymmKpath
|
|
15
21
|
from pymatgen.symmetry.analyzer import SpacegroupAnalyzer
|
|
16
|
-
from
|
|
17
|
-
from abipy.abio.inputs import AnaddbInput
|
|
18
|
-
from abipy.flowtk.tasks import AnaddbTask, TaskManager
|
|
19
|
-
from abipy.dfpt.ddb import AnaddbError, DielectricTensorGenerator, DdbFile
|
|
20
|
-
from abipy.dfpt.phonons import PhononBands
|
|
21
|
-
from abipy.core.abinit_units import eV_to_THz
|
|
22
|
-
from maggma.builders import Builder
|
|
23
|
-
from maggma.core import Store
|
|
22
|
+
from pymatgen.symmetry.bandstructure import HighSymmKpath
|
|
24
23
|
|
|
24
|
+
from emmet.builders.settings import EmmetBuildSettings
|
|
25
25
|
from emmet.core.phonon import (
|
|
26
|
-
PhononWarnings,
|
|
27
|
-
ThermodynamicProperties,
|
|
28
26
|
AbinitPhonon,
|
|
29
|
-
|
|
30
|
-
)
|
|
31
|
-
from emmet.core.phonon import (
|
|
32
|
-
PhononDos,
|
|
27
|
+
Ddb,
|
|
33
28
|
PhononBandStructure,
|
|
29
|
+
PhononDos,
|
|
30
|
+
PhononWarnings,
|
|
34
31
|
PhononWebsiteBS,
|
|
35
|
-
Ddb,
|
|
36
32
|
ThermalDisplacement,
|
|
33
|
+
ThermodynamicProperties,
|
|
34
|
+
VibrationalEnergy,
|
|
37
35
|
)
|
|
38
|
-
from emmet.core.polar import
|
|
36
|
+
from emmet.core.polar import BornEffectiveCharges, DielectricDoc, IRDielectric
|
|
39
37
|
from emmet.core.utils import jsanitize
|
|
40
38
|
|
|
41
39
|
SETTINGS = EmmetBuildSettings()
|
|
@@ -679,7 +677,7 @@ class PhononBuilder(Builder):
|
|
|
679
677
|
)
|
|
680
678
|
|
|
681
679
|
ph_bs_sl = PhononBandStructureSymmLine(
|
|
682
|
-
qpoints=qpts,
|
|
680
|
+
qpoints=qpts, # type: ignore[arg-type]
|
|
683
681
|
frequencies=ph_freqs,
|
|
684
682
|
lattice=structure.reciprocal_lattice,
|
|
685
683
|
has_nac=phbands.non_anal_ph is not None,
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
from itertools import
|
|
2
|
-
from typing import
|
|
1
|
+
from itertools import chain, combinations
|
|
2
|
+
from typing import Dict, List, Tuple, Union
|
|
3
3
|
|
|
4
|
-
from tqdm import tqdm
|
|
5
4
|
from maggma.builders import Builder
|
|
6
|
-
from pymatgen.core.structure import Structure
|
|
7
5
|
from matminer.datasets import load_dataset
|
|
8
|
-
from emmet.core.thermo import ThermoType
|
|
9
|
-
|
|
10
6
|
from pymatgen.analysis.alloys.core import (
|
|
11
|
-
AlloyPair,
|
|
12
|
-
InvalidAlloy,
|
|
13
7
|
KNOWN_ANON_FORMULAS,
|
|
14
8
|
AlloyMember,
|
|
9
|
+
AlloyPair,
|
|
15
10
|
AlloySystem,
|
|
11
|
+
InvalidAlloy,
|
|
16
12
|
)
|
|
13
|
+
from pymatgen.core.structure import Structure
|
|
14
|
+
from tqdm import tqdm
|
|
15
|
+
|
|
16
|
+
from emmet.core.thermo import ThermoType
|
|
17
17
|
|
|
18
18
|
# rough sort of ANON_FORMULAS by "complexity"
|
|
19
19
|
ANON_FORMULAS = sorted(KNOWN_ANON_FORMULAS, key=lambda af: len(af))
|
|
@@ -291,7 +291,7 @@ class AlloyPairMemberBuilder(Builder):
|
|
|
291
291
|
is_ordered=structure.is_ordered,
|
|
292
292
|
x=pair.get_x(structure.composition),
|
|
293
293
|
)
|
|
294
|
-
pair_members["members"].append(member.as_dict())
|
|
294
|
+
pair_members["members"].append(member.as_dict()) # type: ignore[attr-defined]
|
|
295
295
|
except Exception as exc:
|
|
296
296
|
print(f"Exception for {db_id}: {exc}")
|
|
297
297
|
if pair_members["members"]:
|
{emmet-builders-0.84.1 → emmet-builders-0.84.2}/emmet/builders/materials/corrected_entries.py
RENAMED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
+
import copy
|
|
1
2
|
import warnings
|
|
2
3
|
from collections import defaultdict
|
|
4
|
+
from datetime import datetime
|
|
3
5
|
from itertools import chain
|
|
4
|
-
from typing import Dict, Iterable, Iterator, List, Optional
|
|
5
6
|
from math import ceil
|
|
6
|
-
import
|
|
7
|
-
from datetime import datetime
|
|
7
|
+
from typing import Dict, Iterable, Iterator, List, Optional, Union
|
|
8
8
|
|
|
9
9
|
from maggma.core import Builder, Store
|
|
10
10
|
from maggma.utils import grouper
|
|
11
|
-
from pymatgen.entries.computed_entries import ComputedStructureEntry
|
|
12
11
|
from pymatgen.entries.compatibility import Compatibility
|
|
12
|
+
from pymatgen.entries.computed_entries import ComputedStructureEntry
|
|
13
13
|
|
|
14
|
-
from emmet.
|
|
15
|
-
from emmet.builders.utils import chemsys_permutations, HiddenPrints
|
|
16
|
-
from emmet.core.thermo import ThermoType
|
|
14
|
+
from emmet.builders.utils import HiddenPrints, chemsys_permutations
|
|
17
15
|
from emmet.core.corrected_entries import CorrectedEntriesDoc
|
|
16
|
+
from emmet.core.thermo import ThermoType
|
|
17
|
+
from emmet.core.utils import jsanitize
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
class CorrectedEntriesBuilder(Builder):
|
|
@@ -24,7 +24,7 @@ class CorrectedEntriesBuilder(Builder):
|
|
|
24
24
|
corrected_entries: Store,
|
|
25
25
|
oxidation_states: Optional[Store] = None,
|
|
26
26
|
query: Optional[Dict] = None,
|
|
27
|
-
compatibility: Optional[List[Compatibility]] = None,
|
|
27
|
+
compatibility: Optional[Union[List[Compatibility], List[None]]] = [None],
|
|
28
28
|
chunk_size: int = 1000,
|
|
29
29
|
**kwargs,
|
|
30
30
|
):
|
|
@@ -45,10 +45,10 @@ class CorrectedEntriesBuilder(Builder):
|
|
|
45
45
|
self.materials = materials
|
|
46
46
|
self.query = query if query else {}
|
|
47
47
|
self.corrected_entries = corrected_entries
|
|
48
|
-
self.compatibility = compatibility
|
|
48
|
+
self.compatibility = compatibility
|
|
49
49
|
self.oxidation_states = oxidation_states
|
|
50
50
|
self.chunk_size = chunk_size
|
|
51
|
-
self._entries_cache: Dict[str, List[
|
|
51
|
+
self._entries_cache: Dict[str, List[Dict]] = defaultdict(list)
|
|
52
52
|
|
|
53
53
|
if self.corrected_entries.key != "chemsys":
|
|
54
54
|
warnings.warn(
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import operator
|
|
2
|
+
from collections import defaultdict
|
|
2
3
|
from datetime import datetime
|
|
3
4
|
from functools import lru_cache
|
|
4
5
|
from itertools import chain
|
|
5
6
|
from math import ceil
|
|
6
|
-
from typing import Any,
|
|
7
|
-
from collections import defaultdict
|
|
7
|
+
from typing import Any, Dict, Iterator, List, Optional
|
|
8
8
|
|
|
9
9
|
from maggma.builders import Builder
|
|
10
10
|
from maggma.stores import MongoStore
|
|
11
11
|
from maggma.utils import grouper
|
|
12
|
-
from pymatgen.
|
|
12
|
+
from pymatgen.analysis.phase_diagram import Composition, PhaseDiagram
|
|
13
13
|
from pymatgen.entries.compatibility import MaterialsProject2020Compatibility
|
|
14
|
-
from pymatgen.
|
|
14
|
+
from pymatgen.entries.computed_entries import ComputedEntry, ComputedStructureEntry
|
|
15
15
|
|
|
16
|
-
from emmet.
|
|
16
|
+
from emmet.builders.settings import EmmetBuildSettings
|
|
17
|
+
from emmet.core.electrode import ConversionElectrodeDoc, InsertionElectrodeDoc
|
|
17
18
|
from emmet.core.structure_group import StructureGroupDoc, _get_id_lexi
|
|
18
19
|
from emmet.core.utils import jsanitize
|
|
19
|
-
from emmet.builders.settings import EmmetBuildSettings
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
def s_hash(el):
|
|
@@ -564,9 +564,11 @@ class ConversionElectrodeBuilder(Builder):
|
|
|
564
564
|
# Get lowest material_id with matching composition
|
|
565
565
|
material_ids = [
|
|
566
566
|
(
|
|
567
|
-
lambda x:
|
|
568
|
-
|
|
569
|
-
|
|
567
|
+
lambda x: (
|
|
568
|
+
x.data["material_id"] # type: ignore[attr-defined]
|
|
569
|
+
if x.composition.reduced_formula == v[1].reduced_formula
|
|
570
|
+
else None
|
|
571
|
+
)
|
|
570
572
|
)(e)
|
|
571
573
|
for e in pd.entries
|
|
572
574
|
]
|
|
@@ -597,7 +599,7 @@ class ConversionElectrodeBuilder(Builder):
|
|
|
597
599
|
relevant_entry_data = []
|
|
598
600
|
for e in pd.entries:
|
|
599
601
|
if e.composition == Composition(c):
|
|
600
|
-
relevant_entry_data.append((e.energy_per_atom, e.entry_id))
|
|
602
|
+
relevant_entry_data.append((e.energy_per_atom, e.entry_id)) # type: ignore[attr-defined]
|
|
601
603
|
relevant_entry_data.sort(key=lambda x: x[0])
|
|
602
604
|
entry_id_mapping[c] = relevant_entry_data[0][1]
|
|
603
605
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from collections import defaultdict
|
|
2
|
-
from typing import Dict, Iterable, List, Optional, Tuple
|
|
3
|
-
from math import ceil
|
|
4
2
|
from datetime import datetime
|
|
3
|
+
from math import ceil
|
|
4
|
+
from typing import Dict, Iterable, List, Optional, Tuple
|
|
5
5
|
|
|
6
6
|
from maggma.core import Builder, Store
|
|
7
7
|
from maggma.utils import grouper
|
|
@@ -168,7 +168,7 @@ class ProvenanceBuilder(Builder):
|
|
|
168
168
|
for snl in snls:
|
|
169
169
|
struc = Structure.from_dict(snl)
|
|
170
170
|
snl_sg = get_sg(struc)
|
|
171
|
-
struc.snl = SNLDict(**snl)
|
|
171
|
+
struc.snl = SNLDict(**snl) # type: ignore[attr-defined]
|
|
172
172
|
snl_groups[snl_sg].append(struc)
|
|
173
173
|
|
|
174
174
|
mat_sg = get_sg(Structure.from_dict(mat["structure"]))
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
import
|
|
2
|
+
|
|
3
|
+
import json
|
|
4
4
|
import os
|
|
5
|
-
|
|
5
|
+
import sys
|
|
6
6
|
from gzip import GzipFile
|
|
7
|
-
import orjson
|
|
8
|
-
import json
|
|
9
7
|
from io import BytesIO
|
|
10
|
-
from monty.serialization import MontyDecoder
|
|
11
|
-
from botocore.exceptions import ClientError
|
|
12
8
|
from itertools import chain, combinations
|
|
13
|
-
from
|
|
9
|
+
from pathlib import Path
|
|
10
|
+
from typing import Any, Literal, Optional, Set, Union
|
|
11
|
+
|
|
12
|
+
import orjson
|
|
13
|
+
from botocore.exceptions import ClientError
|
|
14
|
+
from monty.serialization import MontyDecoder
|
|
14
15
|
from pymatgen.analysis.diffusion.neb.full_path_mapper import MigrationGraph
|
|
16
|
+
from pymatgen.core import Structure
|
|
15
17
|
from pymatgen.io.vasp.inputs import PotcarSingle
|
|
16
18
|
|
|
17
19
|
from emmet.builders.settings import EmmetBuildSettings
|
|
@@ -275,16 +277,16 @@ def get_potcar_stats(
|
|
|
275
277
|
# fallback method for validation - use header hash and symbol
|
|
276
278
|
# note that the potcar_spec assigns PotcarSingle.symbol to "titel"
|
|
277
279
|
# whereas the ***correct*** field is `header`
|
|
278
|
-
summary_stats["titel"] = potcar.header
|
|
279
|
-
summary_stats["hash"] = potcar.md5_header_hash
|
|
280
|
-
summary_stats = [summary_stats]
|
|
280
|
+
summary_stats["titel"] = potcar.header # type: ignore[assignment]
|
|
281
|
+
summary_stats["hash"] = potcar.md5_header_hash # type: ignore[assignment]
|
|
282
|
+
summary_stats = [summary_stats] # type: ignore[assignment]
|
|
281
283
|
|
|
282
284
|
elif method == "pymatgen":
|
|
283
|
-
summary_stats = []
|
|
285
|
+
summary_stats = [] # type: ignore[assignment]
|
|
284
286
|
for _, entries in PotcarSingle._potcar_summary_stats[
|
|
285
287
|
functional
|
|
286
288
|
].items():
|
|
287
|
-
summary_stats += [
|
|
289
|
+
summary_stats += [ # type: ignore[operator]
|
|
288
290
|
{**entry, "titel": None, "hash": None}
|
|
289
291
|
for entry in entries
|
|
290
292
|
if entry["symbol"] == potcar_symbol
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: emmet-builders
|
|
3
|
-
Version: 0.84.
|
|
3
|
+
Version: 0.84.2
|
|
4
4
|
Summary: Builders for the Emmet Library
|
|
5
5
|
Home-page: https://github.com/materialsproject/emmet
|
|
6
6
|
Author: The Materials Project
|
|
@@ -12,6 +12,7 @@ Description-Content-Type: text/markdown
|
|
|
12
12
|
Provides-Extra: test
|
|
13
13
|
Provides-Extra: docs
|
|
14
14
|
Provides-Extra: ml
|
|
15
|
+
Provides-Extra: openmm
|
|
15
16
|
|
|
16
17
|
# 
|
|
17
18
|
|
|
@@ -59,8 +59,6 @@ requirements/ubuntu-latest_py3.10.txt
|
|
|
59
59
|
requirements/ubuntu-latest_py3.10_extras.txt
|
|
60
60
|
requirements/ubuntu-latest_py3.11.txt
|
|
61
61
|
requirements/ubuntu-latest_py3.11_extras.txt
|
|
62
|
-
requirements/ubuntu-latest_py3.9.txt
|
|
63
|
-
requirements/ubuntu-latest_py3.9_extras.txt
|
|
64
62
|
tests/__init__.py
|
|
65
63
|
tests/conftest.py
|
|
66
64
|
tests/test_absorption.py
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
#
|
|
5
5
|
# pip-compile --output-file=emmet/emmet-builders/requirements/deployment.txt emmet/emmet-builders/setup.py python/requirements.txt
|
|
6
6
|
#
|
|
7
|
-
aiohttp==3.
|
|
7
|
+
aiohttp==3.10.2
|
|
8
8
|
# via fsspec
|
|
9
9
|
aioitertools==0.11.0
|
|
10
10
|
# via maggma
|
|
@@ -36,7 +36,7 @@ botocore==1.34.34
|
|
|
36
36
|
# via
|
|
37
37
|
# boto3
|
|
38
38
|
# s3transfer
|
|
39
|
-
certifi==2024.
|
|
39
|
+
certifi==2024.7.4
|
|
40
40
|
# via requests
|
|
41
41
|
cffi==1.16.0
|
|
42
42
|
# via
|
|
@@ -53,7 +53,7 @@ click==8.1.7
|
|
|
53
53
|
# uvicorn
|
|
54
54
|
contourpy==1.2.0
|
|
55
55
|
# via matplotlib
|
|
56
|
-
cryptography==
|
|
56
|
+
cryptography==43.0.1
|
|
57
57
|
# via paramiko
|
|
58
58
|
cycler==0.12.1
|
|
59
59
|
# via matplotlib
|
|
@@ -61,7 +61,7 @@ cython==3.0.8
|
|
|
61
61
|
# via chgnet
|
|
62
62
|
dgl==1.1.3
|
|
63
63
|
# via matgl
|
|
64
|
-
dnspython==2.
|
|
64
|
+
dnspython==2.6.1
|
|
65
65
|
# via
|
|
66
66
|
# maggma
|
|
67
67
|
# pymongo
|
|
@@ -95,7 +95,7 @@ h11==0.14.0
|
|
|
95
95
|
# via uvicorn
|
|
96
96
|
h5py==3.10.0
|
|
97
97
|
# via phonopy
|
|
98
|
-
idna==3.
|
|
98
|
+
idna==3.7
|
|
99
99
|
# via
|
|
100
100
|
# anyio
|
|
101
101
|
# requests
|
|
@@ -104,7 +104,7 @@ inflect==7.0.0
|
|
|
104
104
|
# via robocrys
|
|
105
105
|
itsdangerous==2.1.2
|
|
106
106
|
# via flask
|
|
107
|
-
jinja2==3.1.
|
|
107
|
+
jinja2==3.1.4
|
|
108
108
|
# via
|
|
109
109
|
# flask
|
|
110
110
|
# torch
|
|
@@ -230,7 +230,7 @@ nvidia-nvjitlink-cu12==12.3.101
|
|
|
230
230
|
# nvidia-cusparse-cu12
|
|
231
231
|
nvidia-nvtx-cu12==12.1.105
|
|
232
232
|
# via torch
|
|
233
|
-
orjson==3.9.
|
|
233
|
+
orjson==3.9.15
|
|
234
234
|
# via maggma
|
|
235
235
|
packaging==23.2
|
|
236
236
|
# via
|
|
@@ -251,7 +251,7 @@ paramiko==3.4.0
|
|
|
251
251
|
# via sshtunnel
|
|
252
252
|
phonopy==2.21.0
|
|
253
253
|
# via matcalc
|
|
254
|
-
pillow==10.
|
|
254
|
+
pillow==10.3.0
|
|
255
255
|
# via matplotlib
|
|
256
256
|
plotly==5.18.0
|
|
257
257
|
# via pymatgen
|
|
@@ -281,7 +281,7 @@ pydantic-settings==2.1.0
|
|
|
281
281
|
# maggma
|
|
282
282
|
pydash==7.0.7
|
|
283
283
|
# via maggma
|
|
284
|
-
pymatgen==2024.
|
|
284
|
+
pymatgen==2024.2.20
|
|
285
285
|
# via
|
|
286
286
|
# chgnet
|
|
287
287
|
# emmet-core
|
|
@@ -295,7 +295,7 @@ pymatgen-analysis-alloys==0.0.6
|
|
|
295
295
|
# via emmet-core
|
|
296
296
|
pymatgen-analysis-diffusion==2023.8.15
|
|
297
297
|
# via emmet-core
|
|
298
|
-
pymongo==4.6.
|
|
298
|
+
pymongo==4.6.3
|
|
299
299
|
# via
|
|
300
300
|
# maggma
|
|
301
301
|
# matminer
|
|
@@ -327,7 +327,7 @@ referencing==0.33.0
|
|
|
327
327
|
# via
|
|
328
328
|
# jsonschema
|
|
329
329
|
# jsonschema-specifications
|
|
330
|
-
requests==2.
|
|
330
|
+
requests==2.32.2
|
|
331
331
|
# via
|
|
332
332
|
# dgl
|
|
333
333
|
# matminer
|
|
@@ -348,7 +348,7 @@ ruamel-yaml-clib==0.2.8
|
|
|
348
348
|
# via ruamel-yaml
|
|
349
349
|
s3transfer==0.10.0
|
|
350
350
|
# via boto3
|
|
351
|
-
scikit-learn==1.
|
|
351
|
+
scikit-learn==1.5.0
|
|
352
352
|
# via matminer
|
|
353
353
|
scipy==1.12.0
|
|
354
354
|
# via
|
|
@@ -400,7 +400,7 @@ torch==2.2.0
|
|
|
400
400
|
# torchmetrics
|
|
401
401
|
torchmetrics==1.3.0.post0
|
|
402
402
|
# via pytorch-lightning
|
|
403
|
-
tqdm==4.66.
|
|
403
|
+
tqdm==4.66.3
|
|
404
404
|
# via
|
|
405
405
|
# dgl
|
|
406
406
|
# maggma
|
|
@@ -424,13 +424,13 @@ typing-extensions==4.9.0
|
|
|
424
424
|
# uvicorn
|
|
425
425
|
uncertainties==3.1.7
|
|
426
426
|
# via pymatgen
|
|
427
|
-
urllib3==2.
|
|
427
|
+
urllib3==2.2.2
|
|
428
428
|
# via
|
|
429
429
|
# botocore
|
|
430
430
|
# requests
|
|
431
431
|
uvicorn==0.27.0.post1
|
|
432
432
|
# via maggma
|
|
433
|
-
werkzeug==3.0.
|
|
433
|
+
werkzeug==3.0.3
|
|
434
434
|
# via flask
|
|
435
435
|
yarl==1.9.4
|
|
436
436
|
# via aiohttp
|