Skip to content

Commit 73aa674

Browse files
timduignanclaude
andcommitted
Refocus README orbmol-v2 update on CoulombModule + headline benchmarks
Per Ben's review feedback (PR orbital-materials#162 thread): - First bullet now leads with the CoulombModule, not the latent heads - Adds Speed (H100 QPS at 1k/10k atoms, periodic systems) and Accuracy (GSCDB138 Normalized Error Ratio, ex single-atom-species reactions) highlights - Moves the LatentChargeHead / LatentSpinHead detail and the Caution blockquote out of the README; they remain in MODELS.md - Links out to MODELS.md for the full architecture description Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 7dd0e20 commit 73aa674

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

README.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,18 @@ Alternatively, you can use Docker to run orb-models; [see instructions below](#d
2121

2222
### Updates
2323

24-
**May 2026**: Release of OrbMol-v2 — extends the OrbMol architecture with learnable per-atom electrostatics:
24+
**May 2026**: Release of OrbMol-v2 — adds a `CoulombModule` for long-range electrostatics on top of the OrbMol architecture, using direct Coulomb summation for non-periodic systems and Particle Mesh Ewald (via `nvalchemiops`) for periodic. Trained on OMol25 and OPoly26 (ωB97M-V/def2-TZVPD); load with `pretrained.orbmol_v2(device="cuda")`. See [MODELS.md](MODELS.md) for the full architecture description.
2525

26-
* New `LatentChargeHead` and `LatentSpinHead` predict per-atom latent features that are constrained to sum to the system total charge / 2S = `spin_multiplicity − 1`, and a `CoulombModule` adds long-range Coulomb energy on top of the GNN — direct Coulomb sum for non-periodic systems, Particle Mesh Ewald via `nvalchemiops` for periodic.
27-
* The energy head (`ChargeConditionedEnergyHead`) is conditioned on these per-atom features.
28-
* Trained on OMol25 and OPoly26 (ωB97M-V/def2-TZVPD); load with `pretrained.orbmol_v2(device="cuda")`.
29-
* `model.predict(...)["energy"]` now returns **fp64** by default. OMol25 reference energies reach ~1e4–1e5 eV, where fp32's ~0.01 eV step destroys kJ/mol resolution; fp64 preserves it. Pass `fp64_energy=False` to `predict` to opt out.
26+
Adding learned electrostatics (LES) to OrbMol-v2 costs essentially nothing on speed but slashes the error.
3027

31-
> **Caution:** While the model does predict per-atom charge and spin values as latent features in the charge and spin heads, the model has not seen any per-atom charge or spin values during training — these are emergent from optimisation against energies and forces alone. They should therefore be treated with caution: while in at least some cases they appear to correspond to the correct physical values, the reliability and generality of this correspondence is unclear and is the subject of ongoing investigations.
28+
* **Speed.** On H100, OrbMol-v2 runs at 44 QPS at 1k atoms and 9 QPS at 10k atoms on periodic systems — within ~5% of OrbMol-v1 at every system size.
29+
* **Accuracy.** On GSCDB138 (5,000+ reaction energies covering noncovalent interactions, thermochemistry, isomerization, transition-metal chemistry, etc.; excluding reactions involving single-atom species), OrbMol-v2's overall Normalized Error Ratio drops from **6.05 → 1.83** (3.3× lower, comparable to a good DFT functional). The improvement concentrates in categories that explicit long-range electrostatics actually fixes:
30+
* Noncovalent interactions (NC): 5.96 → 2.60 (2.3× lower)
31+
* Thermochemistry (TC): 11.68 → 1.53 (7.6× lower)
32+
* Transition metal chemistry (TM): 2.86 → 1.60 (1.8× lower)
33+
* Barrier heights and intramolecular noncovalent: modest gains; isomerization essentially unchanged.
34+
35+
`model.predict(...)["energy"]` now returns **fp64** by default to preserve kJ/mol resolution against OMol-scale references (~1e4–1e5 eV). Pass `fp64_energy=False` to opt out.
3236

3337
**February 2026**: Improved GPU-accelerated graph construction with [ALCHEMI Toolkit-Ops](https://github.com/NVIDIA/nvalchemi-toolkit-ops) and batched simulation with [TorchSim](https://github.com/TorchSim/torch-sim):
3438

0 commit comments

Comments
 (0)