benroberts999 / ampsci

A c++ program for high-precision atomic structure calculations of one and two valence systems. Uses Hartree-Fock + correlation potential method. Can calculate ionisation cross sections with large of energy/momentum transfer.
https://ampsci.dev
MIT License
16 stars 6 forks source link

TDHF for even operators #3

Open benroberts999 opened 3 years ago

benroberts999 commented 3 years ago

Note: Uses "Green" method to solve inhomogeneous equation twice for TDHF - once for mixed states, and once for exchange. Possibly this is the issue. Switching to new inhomogeneous Hartree-Fock method might solve problem?

Diagram RPA method does work well for these operators (though, Breit is not included in diagram RPA, so it's not a perfect workaround)

benroberts999 commented 3 years ago

Also: doesn't work for E1 v_form (but diagram method does). Not sure if this is the same issue

benroberts999 commented 3 years ago

Note: It doesn't seem like this is actually a problem with solving TDHF. Rather, this implies the issue is in the dV equations? See commit below; introduced a new tests for hyperfine, testing equations for \chi and \eta - and they work extremely well (implying we solve TDHF equations perfectly) - note: the \delte E is included in this, so we're not just skipping the hard part.

1ced43ba63698cde876a5ca9cfa118384b968b1d

benroberts999 commented 3 years ago

Note: Seems to be different if I swap:

Xx = HF::solveMixedState(Xx.k, Fc, omega, m_vl, m_alpha, p_core, rhs, eps_ms, nullptr, p_VBr, m_Hmag); HF::solveMixedState(Xx, Fc, omega, m_vl, m_alpha, p_core, rhs, eps_ms, nullptr, p_VBr, m_Hmag);

This gives opposite conclusion to last comment; implying issue is with solving equations. Difference between these two functions is one starts from scratch, other starts from existing solution

benroberts999 commented 2 years ago

TDHF - physics

TDHF - performance