stjames 0.0.11__py3-none-any.whl → 0.0.12__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.

Potentially problematic release.


This version of stjames might be problematic. Click here for more details.

stjames/basis_set.py CHANGED
@@ -1,11 +1,27 @@
1
1
  import pydantic
2
+ from typing import Optional, Self
2
3
 
3
4
  from .base import Base
4
5
 
5
6
 
7
+ class BasisSetOverride(Base):
8
+ name: str
9
+ atomic_numbers: Optional[list[pydantic.PositiveInt]] = None
10
+ atoms: Optional[list[pydantic.PositiveInt]] = None # 1-indexed
11
+
12
+ @pydantic.model_validator(mode="after")
13
+ def check_override(self) -> Self:
14
+ # ^ is xor
15
+ assert (self.atomic_numbers is not None) ^ (self.atoms is not None), "Exactly one of ``atomic_numbers`` or ``atoms`` must be specified!"
16
+ return self
17
+
18
+
6
19
  class BasisSet(Base):
7
20
  name: str
8
21
 
22
+ # do we want to override the default basis set for specific atoms or elements?
23
+ overrides: Optional[list[BasisSetOverride]] = []
24
+
9
25
  # value below which a basis function can be ignored
10
26
  # (for improving DFT grid calcs, as per Stratmann/Scuseria/Frisch CPL 1996)
11
27
  # this shouldn't really need to be modified...
stjames/opt_settings.py CHANGED
@@ -15,7 +15,7 @@ class Constraint(Base):
15
15
  """Represents a single constraint."""
16
16
 
17
17
  constraint_type: ConstraintType
18
- atoms: list[int]
18
+ atoms: list[int] # 1-indexed
19
19
 
20
20
 
21
21
  class OptimizationSettings(Base):
stjames/scf_settings.py CHANGED
@@ -15,6 +15,12 @@ class SCFInitMethod(LowercaseStrEnum):
15
15
  READ = "read"
16
16
 
17
17
 
18
+ class OrthonormalizationMethod(LowercaseStrEnum):
19
+ SYMMETRIC = "symmetric"
20
+ CANONICAL = "canonical"
21
+ # cholesky, in future?
22
+
23
+
18
24
  class SCFSettings(Base):
19
25
  max_iters: int = 100
20
26
  init_method: SCFInitMethod = SCFInitMethod.SAD
@@ -23,6 +29,9 @@ class SCFSettings(Base):
23
29
  grid_settings: GridSettings = GridSettings()
24
30
  diis_settings: DIISSettings = DIISSettings()
25
31
 
32
+ #### orthonormalization
33
+ orthonormalization: OrthonormalizationMethod = OrthonormalizationMethod.CANONICAL
34
+
26
35
  #### damping
27
36
  do_damping: bool = True
28
37
  # when should we stop damping?
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: stjames
3
- Version: 0.0.11
3
+ Version: 0.0.12
4
4
  Summary: standardized JSON atom/molecule encoding scheme
5
5
  Author-email: Corin Wagen <corin@rowansci.com>
6
6
  Project-URL: Homepage, https://github.com/rowansci/stjames
@@ -1,6 +1,6 @@
1
1
  stjames/__init__.py,sha256=Ug7W5de-chl5pK1KU5StVUReJAnw2G1g6zJpoBywmVY,407
2
2
  stjames/base.py,sha256=ww8aRYBC1w1mga90QVOSdtQO8Dh3mPFn4oP0woQ_9qQ,1069
3
- stjames/basis_set.py,sha256=l-K9yepRHE3mA_0eY3MVbtQQNxU8xoYkXL4Ap_EELS0,319
3
+ stjames/basis_set.py,sha256=uax7wOv7C9640TMDOkFqTQvgZ5UxvyWx1Fp8-IGzils,935
4
4
  stjames/calculation.py,sha256=H2YubnWeWCg62MSdih4PT1jBqFosT8QZ1ioljOHvvTE,784
5
5
  stjames/corrections.py,sha256=vVO0CEBxWveCsWGd2Fa9D9eFeteFYB_bpa56T2f8S-Y,268
6
6
  stjames/diis_settings.py,sha256=vplTXRf_noJYJM3Qfre1aHsb9ZTfSrQAL7_zA41zvMg,546
@@ -9,14 +9,14 @@ stjames/int_settings.py,sha256=9B3Np7cV2A2C2PqUoxITHlJ2J90558thqkX2JDNxk-U,635
9
9
  stjames/methods.py,sha256=7cs5aaz1khuY1E9ozCYQvwkWdjhAMhfBIXc0pd6rU9w,369
10
10
  stjames/modes.py,sha256=xw46Cc7f3eTS8i35qECi-8DocAlANhayK3w4akD4HBU,496
11
11
  stjames/molecule.py,sha256=cOtSI0pxyQeVLqR0E0owx4MU4HUor0c36kwUP9564wE,2820
12
- stjames/opt_settings.py,sha256=7qpMGq8dPLKLaZ7N-KAeal_VoEl40okfH9AvNCKXVuA,722
13
- stjames/scf_settings.py,sha256=17NwifBfbbnflVQQ2d3Fa1V6dd3eh4S1fTAAe5QbSM4,1854
12
+ stjames/opt_settings.py,sha256=qhmhodrk0d3tGlBEl5RVCWvTYBzOKZTLdOqmkmRoF0I,735
13
+ stjames/scf_settings.py,sha256=rsXk19OQmOLsiYT3vREEia4RMU89uMUQceVA1UsvlY0,2104
14
14
  stjames/settings.py,sha256=uMtILIxJ3dF1UI_V6Z-_bZr81j3fLAhoZx_796NBsJ8,7148
15
15
  stjames/status.py,sha256=wTKNcNxStoEHrxxgr_zTyN90NITa3rxMQZzOgrCifEw,332
16
16
  stjames/tasks.py,sha256=TTl-iTdvDNCZTdPsyS6bYmxzY0ez9PgYlL62fztayXQ,307
17
17
  stjames/thermochem_settings.py,sha256=ZTLz31v8Ltutde5Nfm0vH5YahWjcfFWfr_R856KffxE,517
18
- stjames-0.0.11.dist-info/LICENSE,sha256=i7ehYBS-6gGmbTcgU4mgk28pyOx2kScJ0kcx8n7bWLM,1084
19
- stjames-0.0.11.dist-info/METADATA,sha256=J_-PPWlqR8UbfKWWHB7wCG-3YaAKUQE1DEmLM6fsMSo,1605
20
- stjames-0.0.11.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
21
- stjames-0.0.11.dist-info/top_level.txt,sha256=FYCwxl6quhYOAgG-mnPQcCK8vsVM7B8rIUrO-WrQ_PI,8
22
- stjames-0.0.11.dist-info/RECORD,,
18
+ stjames-0.0.12.dist-info/LICENSE,sha256=i7ehYBS-6gGmbTcgU4mgk28pyOx2kScJ0kcx8n7bWLM,1084
19
+ stjames-0.0.12.dist-info/METADATA,sha256=9_RxJtFnM7V9LPwsvJsh3v7hN_rM2ytvtFD6i1Exv_I,1605
20
+ stjames-0.0.12.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
21
+ stjames-0.0.12.dist-info/top_level.txt,sha256=FYCwxl6quhYOAgG-mnPQcCK8vsVM7B8rIUrO-WrQ_PI,8
22
+ stjames-0.0.12.dist-info/RECORD,,