Companion repository for Open-Quantum-Platform/openqp.
It holds CI / build infrastructure and validation tooling that is not part of
the shipped quantum-chemistry source tree, so the main repo stays limited to
library code. Relocated here from openqp (see
openqp#212);
extracted from openqp commit 1aabd75.
The OpenQP build-environment image: the toolchain, an ILP64 (8-byte integer) OpenBLAS built from source, and the Python build deps — everything the OpenQP image build needs that does not depend on OpenQP sources.
This repo's publish-buildenv.yml
builds it and pushes it to Docker Hub as openqp/openqp-buildenv:<tag>. The
main openqp repo's docker-build.yml and root Dockerfile (FROM openqp/openqp-buildenv:<tag>) only pull that tag — they no longer build it.
Cross-repo tag contract. When buildenv.Dockerfile changes, bump the tag in
lockstep across all four places, and publish here before the new tag is
consumed by openqp:
| Where | What to bump |
|---|---|
this repo: publish-buildenv.yml |
BUILDENV_IMAGE |
this repo: docker/buildenv.Dockerfile |
header comment |
openqp: root Dockerfile |
FROM openqp/openqp-buildenv:<tag> |
openqp: .github/workflows/docker-build.yml |
BUILDENV_IMAGE |
Publishing requires secrets. publish-buildenv.yml no-ops until
DOCKER_USERNAME / DOCKER_PASSWORD (a Docker Hub account with push access to
the openqp namespace) are set under Settings → Secrets and variables →
Actions.
PCM / numerical validation and reference-generation tooling. These are
PySCF-based cross-checking utilities, deliberately kept out of the shipped
QC tree, and expect oqp (and pyscf) installed in the environment:
| Script | Purpose |
|---|---|
pcm_validate_all.py |
Top-level driver running the PCM validation suite |
pcm_benchmark_matrix.py |
PCM benchmark matrix across molecules/methods |
pcm_pyscf_reference.py |
Generate PySCF ddCOSMO/ddPCM reference energies |
pcm_independent_ddpcm_validation.py |
Independent ddPCM cross-check |
pcm_vacuum_pyscf_validation.py |
Vacuum (no-PCM) PySCF cross-check |
pcm_trusted_reference_diagnostics.py |
Diagnostics for trusted PCM references |
refresh_example_json_refs.py |
Refresh stored example JSON reference outputs |
sg0_multiexp_nodes.py |
SG-0 multi-exponent grid node helper |