adcc icon indicating copy to clipboard operation
adcc copied to clipboard

Implement PCM and other solvation models supported in backends

Open mfherbst opened this issue 5 years ago • 2 comments
trafficstars

With #30 merged the next step in this direction is to go for PCM (and maybe EFP)?

mfherbst avatar May 31 '20 12:05 mfherbst

Having these features is not a problem at all. Testing and verifying them is another issue. Furthermore, not all backends support all of the solvation models. For PE, it was easy because I knew about the PE implementation in each program 😉

Some notes:

  • EFP: Psi4 and Q-Chem have (roughly) the same EFP implementation (libefp iirc), the other backends do not have EFP implemented.
  • PCM: Psi4 uses PCMSolver, Q-Chem has its own implementation, pyscf has a variant of ddPCM/ddCOSMO, i.e., the solvation-specific results are hard to compare, it will probably take some time to obtain "similar" results from all programs. VeloxChem does not have PCM implemented.

If we do not explicitly test the other solvation models, it's not a problem to support the feature and throw a warning that no reference data for these values is available or something.

maxscheurer avatar May 31 '20 14:05 maxscheurer

Thanks for the info. I did not have in mind to do this right now. It was more of a mental note that this should not be too hard to get done with the structure we implemented.

Also, in principle the results might not be identical but should (hopefully) at least agree qualitatively for the different PCM implementations (might be naive ...). So we might not be able to compare to 6 digits, but I would expect for simple cases to at least find agreement to maybe the leading order(s). This allows us to find the usual factors of 2 or minuses, which would be a good start for debugging. For regression testing we can use hard-coded data again.

mfherbst avatar May 31 '20 15:05 mfherbst