dftd4/cpp-d4

Thoughts on interfacing with c++

RomitChakraborty opened this issue · 5 comments

This c++ port is super-useful for beginning the process of interfacing the fortran code with c++. Tacitly assume here is the ATM term which approximates three-body contribution to dispersion energy as indicated your reference. A comparison of the c++ port dispersion energy with the dftd4/dftd4 (2-body) term shows orders of magnitude difference which does seem to suggest that (please find attached).
I was hoping to hear your thoughts about interfacing the fortran code with c++. Since the D4(EEQ)-ATM method does need the C6 coefficients, I would imagine you have already given it some thought?
Many thanks for your help!

d4_prec.xlsx

How do you compute the energies with the Fortran implementation? Do you use the standalone or do you use the Python API (both in atomic units)? In case you have used the ASE API which uses an eV based unit system you might be off by a factor of ~27.2 if you don't convert back to Hartree.

Which is wrong, this program reads xyz-files, so they have to be in Ångström.

I think this one is resolved as well with #1 (comment).