Skip to content

Analytical charge Hessian contractions - #71

Merged
awvwgk merged 7 commits into
grimme-lab:mainfrom
Growl1234:hess
Oct 26, 2026
Merged

awvwgk merged 7 commits into
grimme-lab:mainfrom
Growl1234:hess

Conversation

@Growl1234

Copy link
Copy Markdown
Contributor
  • Support weighted charge Hessian contractions, making analytical DFT-D4 two-body Hessians possible.
  • Reuse cached charge solutions and first derivatives without storing the full second-order response tensor.
  • Fix EEQBC response terms and periodic self-image indexing.

@codecov

codecov Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 30.68%. Comparing base (282626e) to head (b5e90ed).
⚠️ Report is 27 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff             @@
##             main      #71       +/-   ##
===========================================
- Coverage   51.57%   30.68%   -20.90%     
===========================================
  Files          18        2       -16     
  Lines        1648      176     -1472     
  Branches      746       72      -674     
===========================================
- Hits          850       54      -796     
+ Misses        390       85      -305     
+ Partials      408       37      -371     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Growl1234

Copy link
Copy Markdown
Contributor Author

The test failure seems to be related to mctc-lib.

@Growl1234
Growl1234 force-pushed the hess branch 3 times, most recently from 258e59b to 166ed7c Compare October 20, 2026 18:04
Growl1234 added a commit to Growl1234/dftd4 that referenced this pull request Oct 21, 2026
Growl1234 added a commit to Growl1234/dftd4 that referenced this pull request Oct 21, 2026
…ge#71

Should be dropped once that PR get through review
Growl1234 added a commit to Growl1234/dftd4 that referenced this pull request Oct 21, 2026
…ge#71

Should be dropped once that PR get through review
Growl1234 added a commit to Growl1234/dftd4 that referenced this pull request Oct 22, 2026
…ge#71

Should be dropped once that PR get through review
@awvwgk
awvwgk merged commit 0a21128 into grimme-lab:main Oct 26, 2026
9 of 10 checks passed
@Growl1234
Growl1234 deleted the hess branch October 26, 2026 08:57
timchem1508 added a commit to timchem1508/multicharge that referenced this pull request Oct 27, 2026
…main

Main v0.6.0 brings the analytical charge Hessian (grimme-lab#71) and the mctc-lib
Wigner-Seitz cell (grimme-lab#75), both written against the dense solve and
cache_container API that this branch replaced. Port them onto the solver
architecture:

- get_charges(..., dqdL, cache, efield) retains the response in
  mchrg_cache (new dqdr field); add_charge_hessian reuses
  get_coulomb_derivs with the adjoint in place of the charges
- add_model_hessian for EEQ and EEQ-BC on the branch cache layout
  (element-indexed rvdw, EEQ-BC lattice cutoff)
- exact derivative of the regularised EEQ CN term in get_xvec_derivs
  and get_grad, as on main
- use new_wignerseitz_cell from mctc-lib and drop multicharge_wignerseitz;
  drop the CSR-list arguments of local_charge that mctc-lib lacks
- pin mctc-lib v0.7.0 and restore main's fpm.toml (mstore v0.4.0,
  fortitude configuration)
- add main's eeqbc-response-znoh tests and the updated formamide
  reference; use the EEQ-BC tolerance of test_dadr also in test_dadL

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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