digichem-core 6.0.2__tar.gz → 6.1.0__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 (118) hide show
  1. digichem_core-6.1.0/Banner.png +0 -0
  2. {digichem_core-6.0.2 → digichem_core-6.1.0}/PKG-INFO +2 -2
  3. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/__init__.py +2 -2
  4. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/basis.py +1 -1
  5. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/turbomole.py +2 -2
  6. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/atom.py +16 -3
  7. {digichem_core-6.0.2 → digichem_core-6.1.0}/pyproject.toml +1 -1
  8. digichem_core-6.0.2/Banner.png +0 -0
  9. {digichem_core-6.0.2 → digichem_core-6.1.0}/.github/workflows/python-main-pull.yml +0 -0
  10. {digichem_core-6.0.2 → digichem_core-6.1.0}/.github/workflows/python-main-push.yml +0 -0
  11. {digichem_core-6.0.2 → digichem_core-6.1.0}/.github/workflows/python-pypi-publish.yml +0 -0
  12. {digichem_core-6.0.2 → digichem_core-6.1.0}/.gitignore +0 -0
  13. {digichem_core-6.0.2 → digichem_core-6.1.0}/.gitmodules +0 -0
  14. {digichem_core-6.0.2 → digichem_core-6.1.0}/COPYING.md +0 -0
  15. {digichem_core-6.0.2 → digichem_core-6.1.0}/LICENSE +0 -0
  16. {digichem_core-6.0.2 → digichem_core-6.1.0}/README.md +0 -0
  17. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/config/README +0 -0
  18. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/config/__init__.py +0 -0
  19. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/config/base.py +0 -0
  20. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/config/locations.py +0 -0
  21. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/config/parse.py +0 -0
  22. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/config/util.py +0 -0
  23. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/README +0 -0
  24. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/batoms/COPYING +0 -0
  25. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/batoms/LICENSE +0 -0
  26. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/batoms/README +0 -0
  27. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/batoms/__init__.py +0 -0
  28. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/batoms/batoms-renderer.py +0 -0
  29. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/config/digichem.yaml +0 -0
  30. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/functionals.csv +0 -0
  31. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/solvents.csv +0 -0
  32. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/tachyon/COPYING.md +0 -0
  33. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/tachyon/LICENSE +0 -0
  34. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/tachyon/tachyon_LINUXAMD64 +0 -0
  35. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/vmd/common.tcl +0 -0
  36. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/vmd/generate_combined_orbital_images.tcl +0 -0
  37. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/vmd/generate_density_images.tcl +0 -0
  38. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/vmd/generate_dipole_images.tcl +0 -0
  39. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/vmd/generate_orbital_images.tcl +0 -0
  40. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/vmd/generate_spin_images.tcl +0 -0
  41. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/data/vmd/generate_structure_images.tcl +0 -0
  42. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/datas.py +0 -0
  43. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/exception/__init__.py +0 -0
  44. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/exception/base.py +0 -0
  45. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/exception/uncatchable.py +0 -0
  46. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/file/__init__.py +0 -0
  47. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/file/base.py +3 -3
  48. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/file/cube.py +0 -0
  49. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/file/fchk.py +0 -0
  50. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/file/prattle.py +0 -0
  51. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/file/types.py +0 -0
  52. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/__init__.py +0 -0
  53. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/base.py +0 -0
  54. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/excited_states.py +0 -0
  55. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/graph.py +0 -0
  56. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/orbitals.py +0 -0
  57. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/render.py +0 -0
  58. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/spectroscopy.py +0 -0
  59. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/structure.py +0 -0
  60. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/image/vmd.py +0 -0
  61. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/input/__init__.py +0 -0
  62. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/input/base.py +0 -0
  63. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/input/digichem_input.py +0 -0
  64. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/input/gaussian.py +0 -0
  65. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/log.py +0 -0
  66. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/memory.py +0 -0
  67. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/misc/__init__.py +0 -0
  68. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/misc/argparse.py +0 -0
  69. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/misc/base.py +0 -0
  70. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/misc/io.py +0 -0
  71. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/misc/layered_dict.py +0 -0
  72. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/misc/text.py +0 -0
  73. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/misc/time.py +0 -0
  74. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/__init__.py +0 -0
  75. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/base.py +0 -0
  76. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/cclib.py +0 -0
  77. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/dump.py +0 -0
  78. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/gaussian.py +0 -0
  79. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/orca.py +0 -0
  80. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/parse/util.py +0 -0
  81. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/__init__.py +0 -0
  82. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/alignment/AA.py +0 -0
  83. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/alignment/AAA.py +0 -0
  84. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/alignment/FAP.py +0 -0
  85. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/alignment/__init__.py +0 -0
  86. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/alignment/base.py +0 -0
  87. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/angle.py +0 -0
  88. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/base.py +0 -0
  89. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/dipole_moment.py +0 -0
  90. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/emission.py +0 -0
  91. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/energy.py +0 -0
  92. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/excited_state.py +0 -0
  93. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/ground_state.py +0 -0
  94. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/metadata.py +0 -0
  95. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/multi.py +0 -0
  96. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/nmr.py +0 -0
  97. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/orbital.py +0 -0
  98. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/result.py +0 -0
  99. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/soc.py +0 -0
  100. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/spectroscopy.py +0 -0
  101. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/tdm.py +0 -0
  102. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/result/vibration.py +0 -0
  103. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/__init__.py +0 -0
  104. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/conftest.py +0 -0
  105. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_basis.py +0 -0
  106. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_calculate.py +0 -0
  107. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_config.py +0 -0
  108. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_cube.py +0 -0
  109. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_exception.py +0 -0
  110. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_file.py +0 -0
  111. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_image.py +0 -0
  112. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_input.py +0 -0
  113. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_parsing.py +0 -0
  114. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_prattle.py +0 -0
  115. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_result.py +0 -0
  116. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/test_translate.py +0 -0
  117. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/test/util.py +0 -0
  118. {digichem_core-6.0.2 → digichem_core-6.1.0}/digichem/translate.py +0 -0
Binary file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: digichem-core
3
- Version: 6.0.2
3
+ Version: 6.1.0
4
4
  Summary: Open-source library for Digichem core components
5
5
  Project-URL: Homepage, https://github.com/Digichem-Project/digichem-core
6
6
  Project-URL: Documentation, https://doc.digi-chem.co.uk
@@ -25,7 +25,7 @@ Classifier: Programming Language :: Python :: 3
25
25
  Requires-Python: >=3.9
26
26
  Requires-Dist: adjusttext
27
27
  Requires-Dist: basis-set-exchange
28
- Requires-Dist: cclib
28
+ Requires-Dist: cclib<2,>=1.7.1
29
29
  Requires-Dist: colour-science
30
30
  Requires-Dist: configurables
31
31
  Requires-Dist: deepmerge
@@ -20,7 +20,7 @@ from digichem.datas import get_resource
20
20
  # development = prerelease is not None
21
21
  # # The full version number of this package.
22
22
  # __version__ = "{}.{}.{}{}".format(major_version, minor_version, revision, "-pre.{}".format(prerelease) if development else "")
23
- __version__ = "6.0.2"
23
+ __version__ = "6.1.0"
24
24
  _v_parts = __version__.split("-")[0].split(".")
25
25
  major_version = int(_v_parts[0])
26
26
  minor_version = int(_v_parts[1])
@@ -39,7 +39,7 @@ __author__ = [
39
39
  ]
40
40
 
41
41
  # Program date (when we were last updated). This is changed automatically.
42
- _last_updated_string = "21/08/2024"
42
+ _last_updated_string = "16/10/2024"
43
43
  last_updated = datetime.strptime(_last_updated_string, "%d/%m/%Y")
44
44
 
45
45
  # The sys attribute 'frozen' is our flag, '_MEIPASS' is the dir location.
@@ -62,7 +62,7 @@ class BSE_basis_set(dict):
62
62
  import basis_set_exchange.misc
63
63
 
64
64
  if elements_filter is not None and not isinstance(elements_filter, str):
65
- elements_filter = ",".join(elements_filter)
65
+ elements_filter = ",".join((str(item) for item in elements_filter))
66
66
 
67
67
  if elements_filter is not None:
68
68
  elements_filter = basis_set_exchange.misc.expand_elements(elements_filter)
@@ -25,9 +25,9 @@ class Turbomole_parser(Cclib_parser):
25
25
  """
26
26
  Sort a list of log files into a particular order, if required for this parser.
27
27
  """
28
- from cclib.io.ccio import sort_turbomole_outputs
28
+ from cclib.parser.turbomoleparser import Turbomole
29
29
 
30
- return sort_turbomole_outputs(log_files)
30
+ return Turbomole.sort_input(log_files)
31
31
 
32
32
  def duration_to_timedelta(self, duration_str):
33
33
  """
@@ -315,11 +315,18 @@ class Atom_list(Result_container, Unmergeable_container_mixin, Molecule_mixin):
315
315
  from rdkit.Chem import MolToSmiles
316
316
  from rdkit.Chem.rdmolops import RemoveHs
317
317
 
318
+ # TODO: Find some other way of generating SMILES.
319
+
318
320
  mol = self.to_rdkit_molecule()
319
- mol = RemoveHs(mol)
321
+ try:
322
+ # TODO: rdkit is unreliable, this method can fail for lots of reasons...
323
+ mol = RemoveHs(mol)
324
+ except Exception:
325
+ pass
326
+
320
327
  self._smiles = MolToSmiles(mol)
321
328
  return self._smiles
322
-
329
+
323
330
  # # TODO: Handle cases where obabel isn't available
324
331
  # conv = Openprattle_converter.get_cls("xyz")(input_file = self.to_xyz(), input_file_type = "xyz")
325
332
  # # Cache the result in case we need it again.
@@ -450,10 +457,16 @@ class Atom_list(Result_container, Unmergeable_container_mixin, Molecule_mixin):
450
457
  """
451
458
  Get a representation of this result object in primitive format.
452
459
  """
460
+ try:
461
+ smiles = self.smiles
462
+
463
+ except Exception:
464
+ smiles = None
465
+
453
466
  dump_dict = {
454
467
  "formula": self.formula_string,
455
468
  "charge": self.charge,
456
- "smiles": self.smiles,
469
+ "smiles": smiles,
457
470
  "exact_mass": {
458
471
  "value": float(self.mass) if self.safe_get("mass") is not None else None,
459
472
  "units": "g mol^-1"
@@ -12,7 +12,7 @@ description = "Open-source library for Digichem core components"
12
12
  dependencies = [
13
13
  "adjustText",
14
14
  "basis_set_exchange",
15
- "cclib",
15
+ "cclib >= 1.7.1, < 2",
16
16
  "colour-science",
17
17
  "configurables",
18
18
  "deepmerge",
Binary file
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -29,6 +29,9 @@ class File_maker_ABC():
29
29
  """
30
30
  self.output = output
31
31
  self.file_path = {'file': self.output}
32
+
33
+ # A flag of whether we have already created our output file.
34
+ self.done_file_creation = False
32
35
 
33
36
  def get_file(self, name = 'file'):
34
37
  """
@@ -160,9 +163,6 @@ class File_maker(File_maker_ABC):
160
163
  self.dont_modify = dont_modify
161
164
  self.use_existing = use_existing
162
165
 
163
- # A flag of whether we have already created our output file.
164
- self.done_file_creation = False
165
-
166
166
  self.failed_file_creation = False
167
167
 
168
168
  self.full_path_names = full_path_names