SAPT(DFT) auto compute GRAC
Description
I have added an option to compute the necessary GRAC shifts for SAPT(DFT) automatically. I added a little extra logic to "try harder" at converging cations to hopefully fail less often if this option is specified. These changes will enable more users to call SAPT(DFT) more routinely in their workflows without having to consider acquiring GRAC shifts externally through their own logic or tabulated sources.
User API & Changelog headlines
- [X] User can now specify -99 for GRAC shifts (A and/or B) to automatically compute the shift required for SAPT(DFT) to make the code more accessible to users. Here is the example usage:
psi4.set_options(
{
"sapt_dft_grac_shift_a": -99,
"sapt_dft_grac_shift_b": -99,
}
)
psi4.energy("SAPT(DFT)", molecule=mol_dimer)
Dev notes & details
- [x] Automatically computes SAPT(DFT) GRAC shifts for monomer A and/or B
- [x] Logic for trying extra options with level shifts to attempt to converge more cations in approximating the ionization potential
Questions
Checklist
- [x] Tests added for any new features
- [x] All or relevant fraction of full tests run
Status
- [x] Ready for review
- [ ] Ready for merge
Rebase when #3256 is merged in (there will be a merge conflict), and then ping me for review. Apologies for not reviewing this earlier.
Rebase when #3256 is merged in (there will be a merge conflict), and then ping me for review. Apologies for not reviewing this earlier.
Hello @JonathonMisiewicz, since #3256 is now merged into master, I thought that I would notify you. This PR should likely be merged before my SAPT(DFT) External Potential #3257. Please let me know if there are any necessary changes or concerns. Thanks for your help!
Ping me for review when all checks pass. The current failures are due to this PR.
Next commit make this change to fix the Eco (W) lane, https://github.com/psi4/psi4/pull/3302/files#diff-9886b1fe077112c3a9952964ed992dc3cd38b48d0a506a6b7a00241e4669d2b1R192 . Will watch the dftgrac error on Azure to see if it repeats.