Variational eom excitation energies
What has been done:
- Input keyword
variational energyhas been added to thecc responsesection, enabling the computation of the variational excitation energy (E = L^T A R) for eom response calculations. - Test has been added which reproduces the excitation energies in the
ccsd_right_es_energiestest to ~2.5e-10 while only using residual thresholds in the es calculation of 10e-4. The resulting left and right es energies are off by ~4e-7.- In the
ccsd_right_es_energiesit takes 30 iterations to converge the right states. In the new test the right states take 20 iterations, the left 7, and then an additional two jacobian transformations are used to perform the sandwich.
- In the
- The current implementation perform one additional jacobian transformation per excited state, but I assume there might be a way of storing the transformed vectors from the davidson solver, but I do not know how easy that is, and how much the biorthonormalisation messes that up.
- The new code is called from the eom_transition_moment_engine directly which feels a bit wrong so maybe the
calculate_and_print_variational_es_energiesroutine should be moved out of ccs_class and into a new task?
ToDo-list
The boxes below need to be checked before merge review will start
- Testing
-
All tests pass -rcheckflag enabled insetup.py -
All tests pass -fbatchflag enabled insetup.py
-
- Versioning
-
Changelog.mdis up to date -
If merge into master: The patch number in parameters.F90andchangelog.mdis up to date
-
- Website (Needs to be done before merge)
-
Updates (if any) to the website have been added
-
- Compliance with style guide
Edited by Marcus Takvam Lexander