Skip to content

Fix/typed cv virtual atoms - #3

Merged
xiaoxuan-yu merged 11 commits into
codex/xpongecpp-v1from
fix/typed-cv-virtual-atoms
Aug 18, 2026
Merged

xiaoxuan-yu merged 11 commits into
codex/xpongecpp-v1from
fix/typed-cv-virtual-atoms

Conversation

@xiaoxuan-yu

Copy link
Copy Markdown
Collaborator

This pull request delivers the XpongeCPP 0.2.6 release, targeting compatibility with Xponge-origin 1.7b10. The main highlights are a more robust QM backend selection mechanism, improved CMake and CI packaging for better wheel distribution, and several bugfixes and enhancements for molecule assembly and force field handling. It also introduces a new provider-neutral benchmarking script and updates documentation and release notes accordingly.

Backend selection and packaging improvements:

  • Changed QM backend selection to runtime capability detection: PySCF is now preferred and Psi4 is used as a fallback, with clear error reporting if neither is available. Windows packaging continues to skip PySCF, but users can install it manually or use Psi4. [1] [2] [3]
  • Updated CI and build configuration to set the tested XpongeCPP version to 0.2.6, added auditwheel and delvewheel repair commands for Linux and Windows wheel builds, and updated test cohorts to match the new release. [1] [2] [3]
  • CMake now sets RPATH for Linux, ensuring correct dynamic library loading, and installs bundled reference force-field data into the wheel. [1] [2]

Core molecule and force field enhancements:

  • Fixed and extended internal structure copying and remapping in molecule operations to include coordination bonds and parameter overrides, ensuring correct molecule assembly and force field application. [1] [2]
  • Molecule rebuilding operations now preserve additional box and force field metadata, improving fidelity when manipulating molecular systems. [1] [2]
  • Added new C++ API functions for registering residue templates and preparing atom order, and included necessary headers for improved compilation. [1] [2] [3]

Algorithm and bugfixes:

  • Corrected the Fibonacci grid generation for RESP charge fitting to use the standard golden angle and indexing, improving sphere point distribution.

Documentation and benchmarking:

  • Added comprehensive release notes for versions 0.2.3–0.2.6, detailing regression coverage, compatibility, and scientific validation.
  • Introduced a provider-neutral 1KV2 assembly benchmark script for release parity gates.

Documentation and minor clarifications:

  • Updated README to clarify backend selection behavior and Windows installation instructions. [1] [2]

yuhaosimba and others added 11 commits July 30, 2026 11:59
Vendor the origin RESP, QM, bundled-I/O, and Lipid17/Lipid21 compatibility modules and packaged lipid manifests.

Extend frcmod, legacy runtime, CLI, PSF, and force-field parsing behavior while aligning the native RESP grid orientation.

Add regression coverage for PSF residue grouping and constrained RESP compatibility.
Run every public XpongeCPP and legacy Xponge force-field module in a fresh interpreter so mutually exclusive force-field families are tested without contaminating one another.

Restore package-relative GLYCAM tool imports and add legacy EDIP and Martini namespace shims.
Clear synthetic O0/C0 head metadata in native, bundled, and reference GLYCAM registries. Add four-family parity and PDB export coverage, update release contracts and CI assertions, and bump XpongeCPP to 0.2.1.
Synchronize legacy AtomType and residue-link APIs with native registries, align GAFF/GAFF2 and PDB export behavior with Xponge 1.7b9, and remove obsolete Python-side CONECT rewriting.

Ship non-Amber reference force-field assets in wheels, add fail-closed capability metadata and provider-neutral performance coverage, and make the full test suite valid against installed runtimes.
Align the native template, force-field, export, and legacy compatibility layers with Xponge-origin 1.7b9 across Mokda-used workflows.

Preserve mmCIF template pseudobonds, synchronize temporary residue linkage overrides, normalize CMAP scientific identities, and close protein, GAFF, nucleic-acid, glycan, lipid, metal-patch, raw, and bundle parity gaps.

Add installed-wheel, release-contract, real-system scientific-manifest, and regression coverage; publish the 0.2.3 version metadata and release evidence.
Preserve residue-link bonds in MOL2 exports and keep mixed standard/GAFF systems intact during parameterization. Align the legacy MDAnalysis raw reader with Xponge format hints, add focused regressions, and advance package and CI release metadata to 0.2.4.
Expose the native SPONGE save permutation and apply it to compatibility-layer source atom IDs before raw serialization. This keeps Mokda atom-order mappings and trajectory CIF topology aligned when linked residue components are made contiguous, including repeated solvent residues.\n\nBump XpongeCPP to 0.2.5, update release automation and notes, and add focused mapping regression coverage.
Completes the integration-branch port of 9a7ce58 without replaying its obsolete 0.1.7 release metadata.
@xiaoxuan-yu
xiaoxuan-yu merged commit 70c641a into codex/xpongecpp-v1 Aug 18, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants