pymdkit 1.2.9__tar.gz → 1.2.10__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.
Files changed (35) hide show
  1. {pymdkit-1.2.9/src/pymdkit.egg-info → pymdkit-1.2.10}/PKG-INFO +1 -1
  2. {pymdkit-1.2.9 → pymdkit-1.2.10}/pyproject.toml +1 -1
  3. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/__init__.py +1 -1
  4. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/stable_entry.py +21 -9
  5. {pymdkit-1.2.9 → pymdkit-1.2.10/src/pymdkit.egg-info}/PKG-INFO +1 -1
  6. {pymdkit-1.2.9 → pymdkit-1.2.10}/LICENSE +0 -0
  7. {pymdkit-1.2.9 → pymdkit-1.2.10}/README.md +0 -0
  8. {pymdkit-1.2.9 → pymdkit-1.2.10}/setup.cfg +0 -0
  9. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/__init__.py +0 -0
  10. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/_fileio.py +0 -0
  11. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/_vasp_output.py +0 -0
  12. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/_vaspset.py +0 -0
  13. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/add_groups.py +0 -0
  14. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/compute_ehull.py +0 -0
  15. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/compute_msd_all_groups.py +0 -0
  16. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/compute_rmsd.py +0 -0
  17. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/electrostatic_energy.py +0 -0
  18. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/final_energy.py +0 -0
  19. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/gather_contcar.py +0 -0
  20. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/nep_rmse.py +0 -0
  21. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/perturb.py +0 -0
  22. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/stru2xyz.py +0 -0
  23. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/submit_vasp.py +0 -0
  24. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/substitute.py +0 -0
  25. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/supercell.py +0 -0
  26. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/symmetrize.py +0 -0
  27. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/vasp2xyz.py +0 -0
  28. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/vasp_relax.py +0 -0
  29. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/commands/vasp_static.py +0 -0
  30. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit/pymdkit_main.py +0 -0
  31. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit.egg-info/SOURCES.txt +0 -0
  32. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit.egg-info/dependency_links.txt +0 -0
  33. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit.egg-info/entry_points.txt +0 -0
  34. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit.egg-info/requires.txt +0 -0
  35. {pymdkit-1.2.9 → pymdkit-1.2.10}/src/pymdkit.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pymdkit
3
- Version: 1.2.9
3
+ Version: 1.2.10
4
4
  Summary: A unified command-line toolkit for atomistic / MD structure workflows.
5
5
  Author-email: Yueda Wang <ydwang0608@ustc.edu.cn>
6
6
  License-Expression: GPL-3.0-or-later
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "pymdkit"
7
- version = "1.2.9"
7
+ version = "1.2.10"
8
8
  description = "A unified command-line toolkit for atomistic / MD structure workflows."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -1,3 +1,3 @@
1
1
  """pymdkit -- a unified CLI for atomistic / MD structure workflows."""
2
2
 
3
- __version__ = "1.2.9"
3
+ __version__ = "1.2.10"
@@ -99,20 +99,28 @@ def resolve_public_material_ids(entries, api_key=None):
99
99
  is_stable=True,
100
100
  fields=["material_id", "formula_pretty", "structure"],
101
101
  )
102
+ candidates = []
102
103
  for doc in cache[formula]:
103
104
  structure = doc_get(doc, "structure")
104
105
  material_id = mpid_text(doc_get(doc, "material_id"))
105
106
  if not structure or not is_public_mpid(material_id):
106
107
  continue
107
- if str(structure.composition.reduced_formula) != formula:
108
- continue
109
- if matcher.fit(entry.structure, structure):
110
- data = getattr(entry, "data", None)
111
- if data is None:
112
- entry.data = {}
113
- data = entry.data
114
- data["material_id"] = material_id
115
- break
108
+ if str(structure.composition.reduced_formula) == formula:
109
+ candidates.append((doc, structure, material_id))
110
+ chosen = None
111
+ if len(candidates) == 1:
112
+ chosen = candidates[0][2]
113
+ else:
114
+ for _, structure, material_id in candidates:
115
+ if matcher.fit(entry.structure, structure):
116
+ chosen = material_id
117
+ break
118
+ if chosen:
119
+ data = getattr(entry, "data", None)
120
+ if data is None:
121
+ entry.data = {}
122
+ data = entry.data
123
+ data["material_id"] = chosen
116
124
 
117
125
 
118
126
  def fetch_stable_entries(elements, api_key=None):
@@ -184,6 +192,10 @@ def download_mp_symmetrized_cif(material_id, path, api_key=None):
184
192
  headers["X-API-KEY"] = key
185
193
  quoted = quote(material_id, safe="")
186
194
  urls = [
195
+ f"https://api.materialsproject.org/materials/{quoted}/cif?symmetrized=true",
196
+ f"https://api.materialsproject.org/materials/{quoted}/cif",
197
+ f"https://api.materialsproject.org/materials/core/{quoted}/cif?symmetrized=true",
198
+ f"https://api.materialsproject.org/materials/core/{quoted}/cif",
187
199
  f"https://materialsproject.org/materials/{quoted}/cif?download=true&symmetrized=true",
188
200
  f"https://materialsproject.org/materials/{quoted}/cif?symmetrized=true",
189
201
  f"https://www.materialsproject.org/rest/v2/materials/{quoted}/cif",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pymdkit
3
- Version: 1.2.9
3
+ Version: 1.2.10
4
4
  Summary: A unified command-line toolkit for atomistic / MD structure workflows.
5
5
  Author-email: Yueda Wang <ydwang0608@ustc.edu.cn>
6
6
  License-Expression: GPL-3.0-or-later
File without changes
File without changes
File without changes