Skip to content

[New Command] Effective Hamiltonian #131

Draft
ejmeitz wants to merge 8 commits intotdep-developers:mainfrom
ejmeitz:poteng
Draft

[New Command] Effective Hamiltonian #131
ejmeitz wants to merge 8 commits intotdep-developers:mainfrom
ejmeitz:poteng

Conversation

@ejmeitz
Copy link
Contributor

@ejmeitz ejmeitz commented Mar 28, 2025

This command calculates the effective Hamiltonian given trajectory data or optionally can generate configurations a la canonical_configurations to get a "harmonic average". Beyond calculating the energy, this will be useful to checking the convergence of U0 as well as other cumulants that could be used by anharmonic_free_energy. I also need this to check the accuracy of the anharmonic_free_energy command and figured I'd make it a command since there was an open issue (#93).

So far I have checked this against the existing energy calculator inside of extract_forceconstants and I get an exact math. There is still some work to ensure things are correct however. The bulk of the changes are done though and would be happy to get any revisions.

TODO

  • Check this on a polar material
  • Check the canonical configuration path of the code
  • Add tests
  • Docs page

Edit: Pls ignore the git history I made some mistakes :)

@ejmeitz ejmeitz force-pushed the poteng branch 2 times, most recently from 5d95810 to 682fdd9 Compare March 29, 2025 00:33
@ejmeitz
Copy link
Contributor Author

ejmeitz commented Mar 31, 2025

Ok the harmonic average works now. This is useful for estimating the cumulants from sTDEP.

@mjv500
Copy link
Contributor

mjv500 commented Feb 12, 2026

Any progress on the TODO list? should this be moved out of WIP? Please merge latest trunk and Alois or I can review the code

@mjv500 mjv500 requested a review from OrbitalC February 12, 2026 07:37
@mjv500 mjv500 self-assigned this Feb 12, 2026
@ejmeitz
Copy link
Contributor Author

ejmeitz commented Feb 13, 2026

I am not sure how to sanity check the polar contribution. Things like <V2>, <V4> and <V3^2> are possible to check analytically with equipartition/anharmonic_free_energy but I do not know what test to ensure Vp is correct as I've never bothered to work with a polar material.

I'm not using this code anymore as I re-implemented everything in Julia, but happy to get this merged as I think its still useful.

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

Comments