chemparseplot 1.9.4__tar.gz → 1.9.5__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 (85) hide show
  1. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/PKG-INFO +1 -1
  2. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/_version.py +2 -2
  3. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/neb.py +9 -6
  4. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/.gitignore +0 -0
  5. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/LICENSE +0 -0
  6. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/__init__.py +0 -0
  7. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/__init__.py +0 -0
  8. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/chemgp_hdf5.py +0 -0
  9. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/chemgp_jsonl.py +0 -0
  10. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/converter.py +0 -0
  11. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/__init__.py +0 -0
  12. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/_trajectory_common.py +0 -0
  13. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/con_io.py +0 -0
  14. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/dimer_trajectory.py +0 -0
  15. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/gprd.py +0 -0
  16. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/min_trajectory.py +0 -0
  17. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/minimization.py +0 -0
  18. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/neb.py +0 -0
  19. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/saddle_search.py +0 -0
  20. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/eon/stitch.py +0 -0
  21. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/file_.py +0 -0
  22. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/neb_utils.py +0 -0
  23. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/orca/__init__.py +0 -0
  24. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/orca/geomscan.py +0 -0
  25. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/orca/neb/__init__.py +0 -0
  26. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/orca/neb/interp.py +0 -0
  27. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/orca/neb/opi_parser.py +0 -0
  28. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/patterns.py +0 -0
  29. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/plumed.py +0 -0
  30. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/projection.py +0 -0
  31. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/sella/saddle_search.py +0 -0
  32. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/trajectory/__init__.py +0 -0
  33. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/trajectory/hdf5.py +0 -0
  34. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/trajectory/neb.py +0 -0
  35. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/parse/types.py +0 -0
  36. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/__init__.py +0 -0
  37. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/chemgp.py +0 -0
  38. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/geomscan.py +0 -0
  39. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/optimization.py +0 -0
  40. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/plumed.py +0 -0
  41. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/structs.py +0 -0
  42. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/plot/theme.py +0 -0
  43. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/units.py +0 -0
  44. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/chemparseplot/util.py +0 -0
  45. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/pyproject.toml +0 -0
  46. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/readme.md +0 -0
  47. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/__init__.py +0 -0
  48. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/_optional_imports.py +0 -0
  49. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/conftest.py +0 -0
  50. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/__init__.py +0 -0
  51. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/_con_fixtures.py +0 -0
  52. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/orca/test_geomscan.py +0 -0
  53. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/orca/test_interp.py +0 -0
  54. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_chemgp_hdf5.py +0 -0
  55. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_chemgp_jsonl_types.py +0 -0
  56. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_con_io.py +0 -0
  57. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_converter.py +0 -0
  58. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_dimer_trajectory.py +0 -0
  59. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_eon_neb_types.py +0 -0
  60. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_eon_trajectory_common.py +0 -0
  61. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_min_trajectory.py +0 -0
  62. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_minimization_result.py +0 -0
  63. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_neb_stitch.py +0 -0
  64. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_neb_utils.py +0 -0
  65. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_parser_types.py +0 -0
  66. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_patterns.py +0 -0
  67. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_plumed.py +0 -0
  68. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_projection.py +0 -0
  69. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_readcon_boundary.py +0 -0
  70. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_saddle_results.py +0 -0
  71. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_sella_saddle.py +0 -0
  72. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_trajectory_hdf5.py +0 -0
  73. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/parse/test_trajectory_neb.py +0 -0
  74. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/__init__.py +0 -0
  75. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_chemgp_utils.py +0 -0
  76. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_neb_helpers.py +0 -0
  77. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_neb_renderers.py +0 -0
  78. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_optimization.py +0 -0
  79. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_orca_neb_payload.py +0 -0
  80. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_projection_refactor.py +0 -0
  81. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_strip_rendering.py +0 -0
  82. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/plot/test_structs_units.py +0 -0
  83. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/test_coverage_batch.py +0 -0
  84. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/test_full_coverage.py +0 -0
  85. {chemparseplot-1.9.4 → chemparseplot-1.9.5}/tests/tutorials/test_chemparseplot.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: chemparseplot
3
- Version: 1.9.4
3
+ Version: 1.9.5
4
4
  Summary: Parsers and plotting tools for computational chemistry
5
5
  Project-URL: Documentation, https://chemparseplot.rgoswami.me
6
6
  Project-URL: Issues, https://github.com/HaoZeke/chemparseplot/issues
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '1.9.4'
22
- __version_tuple__ = version_tuple = (1, 9, 4)
21
+ __version__ = version = '1.9.5'
22
+ __version_tuple__ = version_tuple = (1, 9, 5)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -1590,11 +1590,14 @@ def landscape_half_span(
1590
1590
  *,
1591
1591
  path_pad: float = 1.15,
1592
1592
  min_half: float = 0.02,
1593
+ equal_metric: bool = True,
1593
1594
  ):
1594
- """Symmetric |d| half-span from the path (and optional overlays), not s/2.
1595
+ """Symmetric |d| half-span for a projected (s, d) landscape.
1595
1596
 
1596
- Using the reaction-progress half-width as the default forced a near-square
1597
- frame and large empty bands above/below paths that stay near ``d=0``.
1597
+ With ``equal_metric=True`` (default), the half-span is at least half the
1598
+ *s* window so that ``Δs = Δd`` and ``set_aspect('equal')`` yields a square
1599
+ panel where 1 Å of progress matches 1 Å of orthogonal deviation (same RMSD
1600
+ metric). Path/overlay markers still expand the span when they exceed that.
1598
1601
  """
1599
1602
 
1600
1603
  basis = landscape_projection_basis(global_basis, final_r, final_p)
@@ -1605,9 +1608,9 @@ def landscape_half_span(
1605
1608
  np.array([overlay.r]), np.array([overlay.p]), basis
1606
1609
  )
1607
1610
  half_span = max(half_span, abs(float(add_d[0])) * path_pad)
1608
- # Tiny floor only (absolute), never a fraction of s — that reintroduced the
1609
- # empty top/bottom bands on near-linear paths.
1610
- del x_limits # reserved for future asymmetric s handling
1611
+ if equal_metric and x_limits is not None:
1612
+ s_half = 0.5 * max(float(x_limits[1] - x_limits[0]), 1e-9)
1613
+ half_span = max(half_span, s_half)
1611
1614
  return max(half_span, min_half)
1612
1615
 
1613
1616
 
File without changes
File without changes
File without changes