Skip to content

Bugfix: Add ECP Contributions#447

Open
wavefunction91 wants to merge 2 commits intomainfrom
bugfix/ecp_hamiltonian
Open

Bugfix: Add ECP Contributions#447
wavefunction91 wants to merge 2 commits intomainfrom
bugfix/ecp_hamiltonian

Conversation

@wavefunction91
Copy link
Copy Markdown
Collaborator

Closes #446

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes Hamiltonian construction for systems using effective core potentials (ECPs) by ensuring ECP one-electron contributions (and ECP-adjusted nuclear charges) are incorporated into the AO core Hamiltonian before transforming to the active-space Hamiltonian. This addresses the incorrect/unstable energies reported in issue #446.

Changes:

  • Update both the standard and Cholesky Hamiltonian constructors to (1) use the ECP-adjusted internal molecule associated with the internal basis set and (2) add ECP one-electron integrals to H_core.
  • Add a Python regression test validating that Mo/def2-svp produces stable, expected one-electron integral magnitudes for both constructors.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
python/tests/test_ecp_hamiltonian.py Adds regression coverage ensuring ECP terms are reflected in returned one-electron integrals.
cpp/src/qdk/chemistry/algorithms/microsoft/hamiltonian.cpp Uses internal_basis_set->mol (ECP-adjusted charges) and adds ecp_integral into H_full.
cpp/src/qdk/chemistry/algorithms/microsoft/cholesky_hamiltonian.cpp Mirrors the same ECP handling fixes in the Cholesky-based Hamiltonian constructor.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

Hamiltonian constructor does not handle ECPs

2 participants