openWFN 0.11.0
Release date: October 4, 2026.
These historical notes describe 0.11.0. It added native Hirshfeld populations, vibrational spectroscopy and excited-state/UV–Vis analysis to the package. A stable software release does not make every method scientifically validated; each keeps its own evidence and limits.
Highlights
Native Hirshfeld populations and charges
- Adds ordinary neutral-pro-atom Hirshfeld populations and charges through the shared analysis engine.
- Uses packaged, reproducible H/C/N/O pro-atom reference data with provenance and integrity checks.
- Reports electron/population/charge closure diagnostics and does not renormalize final charges to hide integration residuals.
- Rejects unsupported elements, ECP/pseudopotential ambiguity, and ghost-center ambiguity instead of guessing a fallback.
- Independently compared against HORTON-PART for the named ten-case H/C/N/O all-electron validation set.
- Scientific status: Validated only for the documented H/C/N/O all-electron scope and fixed tolerances; unsupported chemistry remains explicit.
Vibrational spectroscopy
- Adds typed Gaussian harmonic vibrational modes, signed imaginary frequencies, source IR intensities, source Raman activities, and source normal-mode vectors.
- Adds deterministic Gaussian broadening, IR/Raman CSV and figure export, CLI/Python/MCP parity, report integration, and a dedicated offline Workbench workspace.
- Raman activities are preserved as source activities and are not silently converted to experimental Raman intensities.
- Scientific status: Experimental. Parser/regression/interface evidence is not yet an independent external spectroscopy validation campaign.
Excited states and UV–Vis
- Adds a universal typed excited-state/job-block model with deterministic multi-job isolation.
- Adds source adapters for Gaussian, ORCA, and Q-Chem.
- Preserves source method detail while classifying broad method families and amplitude conventions conservatively.
- Adds excited-state tables, one-state inspection, transition dipoles, source oscillator-strength sticks, and deterministic UV–Vis broadening.
- Uses a documented default Gaussian FWHM of 0.20 eV in energy space and applies the proper energy-to-wavelength Jacobian for wavelength-domain profiles.
- Preserves dark states (
f = 0), distinguishes missing oscillator strengths from zero, and excludes invalid/negative optical values from simulated curves with explicit reasons rather than clamping or inventing data. - Adds JSON/CSV/PNG/SVG export, HTML report integration, and an Excited States workspace in the offline Workbench.
- Scientific status: Experimental. Recognition of a source state is not a claim that every underlying TDDFT/EOM/ADC/multireference implementation is independently validated.
Interfaces
The new capabilities use the same scientific engine across public surfaces:
- command line;
- typed Python API and named analysis registry;
- local read-only MCP analysis routing;
- CSV/JSON/PNG/SVG exports;
- HTML research reports;
- offline Workbench workspaces.
Representative commands:
openwfn calculation.fchk population hirshfeld
openwfn frequency.log vibrations
openwfn frequency.log spectra ir --fwhm 20 --points 2001 --export ir.csv
openwfn excited.log excited states
openwfn excited.log excited state 1
openwfn excited.log excited dipoles
openwfn excited.log spectra uvvis --fwhm-ev 0.20 --export uvvis.svg
Reproducibility and release verification
The stable publication workflow remains fail-closed and version-driven. Before the 0.11.0 tag or PyPI upload is created, the exact release commit must pass the repository test, documentation, security, and offline Chromium workflows. The workflow then:
- checks synchronized release metadata;
- builds and validates wheel and source distributions;
- installs the built wheel in a fresh environment with interoperability/resource extras;
- installs the packaged eleven-molecule corpus;
- runs the 110-command bounded resource/workflow matrix against the installed package;
- creates the annotated
v0.11.0tag; - publishes to PyPI through OIDC trusted publishing;
- creates the GitHub stable release for the same exact commit;
- installs
openwfn==0.11.0back from public PyPI in a second clean environment and reruns the same 110-command matrix.
Command/resource completion and stable packaging are evaluated separately from scientific validation status.
Compatibility and support
- Python 3.10–3.13.
- Existing 0.10 public analysis/result schemas remain supported unless a capability explicitly exposes new additive fields.
- Optional IOData interoperability remains pinned to the tested 1.0.1 contract.
- Optional cclib source-output extraction remains Experimental and is not a substitute for the typed excited-state adapters.
- Gaussian formatted-checkpoint files remain the preferred native full-wavefunction input path.
Install
For an exact research environment:
Review the validation matrix and method-specific limitations before using any quantity for research reporting. Stable software packaging does not erase Experimental or Unsupported scientific boundaries.