[CP2K-user] [CP2K:17855] Query regarding output of DFT-D3

Jürg Hutter hutter at chem.uzh.ch
Thu Oct 13 12:49:33 UTC 2022


Hi

this is a known problem in CP2K. Forces and derivatives are used as synonyms but should have
opposite signs.
Within the code this is handled correctly, but output and comments can disagree on the sign.

regards
JH

________________________________________
From: cp2k at googlegroups.com <cp2k at googlegroups.com> on behalf of Abhishek Sharma <asharma.ms.in at gmail.com>
Sent: Thursday, October 13, 2022 1:55 PM
To: cp2k at googlegroups.com
Subject: [CP2K:17854] Query regarding output of DFT-D3

Dear CP2K users,

I was trying to check the effect of D3 interactions on the energy, forces, and stress. So, I ran two CP2K(version 8.2) jobs (RUN_TYPE  ENERGY_FORCE) with and without D3 correction and printed stress and forces using,
  &PRINT
    &FORCES             ON
      FILENAME          =forces
    &END FORCES
    &STRESS_TENSOR      ON
FILENAME        =stress
    &END STRESS_TENSOR
  &END PRINT
  STRESS_TENSOR         ANALYTICAL

and printed D3 output using,
      &vDW_POTENTIAL
        POTENTIAL_TYPE  PAIR_POTENTIAL
        &PAIR_POTENTIAL
          TYPE          DFTD3
          PARAMETER_FILE_NAME dftd3.dat
          REFERENCE_FUNCTIONAL PBE
          VERBOSE_OUTPUT  .TRUE.
          &PRINT_DFTD
                FILENAME =VDWForces
          &END PRINT_DFTD
        &END PAIR_POTENTIAL
      &END vDW_POTENTIAL

I obtained following energy values,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
with D3:
  Dispersion energy:                                           -0.43391295044042
    Total energy:                                             -1822.59757123461372
without D3:
Total energy:                                             -1822.16365828416315
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
It shows that E_DFT+D3 = E_DFT + E_D3. Since forces are negative gradients of energy, so my expectation was F_DFT+D3 = F_DFT + F_D3.

I checked the files with forces and found following values:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
with D3:
  Dispersion Forces
  Atom   Kind                            Forces
    1      1   -0.00064625376145   -0.00178929821343    0.00063408272599
    2      1   -0.00010368151520    0.00098624399705   -0.00068002896134
    3      1   -0.00015900750143    0.00000043929734    0.00016150708715
    4      1   -0.00176730962009    0.00065208064208   -0.00062160173245
----------------------------------------------------
 ATOMIC FORCES in [a.u.]

 # Atom   Kind   Element          X              Y              Z
      1      1      C           0.00005291     0.00012528    -0.00005636
      2      1      C          -0.00000900    -0.00001802     0.00002341
      3      1      C           0.00001580     0.00007087    -0.00002165
      4      1      C          -0.00011523     0.00002219    -0.00005222

without D3:
 ATOMIC FORCES in [a.u.]

 # Atom   Kind   Element          X              Y              Z
      1      1      C          -0.00059335    -0.00166402     0.00057772
      2      1      C          -0.00011269     0.00096823    -0.00065662
      3      1      C          -0.00014321     0.00007131     0.00013985
      4      1      C          -0.00188254     0.00067427    -0.00067382
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

>From the printed forces, I found that (assuming printed dispersion forces are in a.u.) that F_DFT+D3 =  F_DFT - F_D3 (e.g. F1x: 0.00005291  = -0.00059335  - (-0.00064625376145) ), which should not be the case and it should be F_DFT+D3 =  F_DFT + F_D3.

Similarly, I checked the stress and got following values,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
with D3:
 Stress Tensor (dispersion)
 -0.302617856781     -0.301607753891E-04  0.414417744693E-03
 -0.301607753891E-04 -0.301666150572      0.101523675983E-03
  0.414417744693E-03  0.101523675983E-03 -0.302011925451
   Tr(P)/3 :   -0.30209864426787675
----------------------------------------------------
 STRESS| Analytical stress tensor [GPa]
 STRESS|                        x                   y                   z
 STRESS|      x        1.06013861421E-03  -2.63120964024E-05  -3.93224150664E-03
 STRESS|      y       -2.63120964024E-05   1.25227540891E-02   1.45254611477E-04
 STRESS|      z       -3.93224150664E-03   1.45254611477E-04   7.18280089554E-03
 STRESS| 1/3 Trace                                             6.92189786629E-03

without D3:
 STRESS| Analytical stress tensor [GPa]
 STRESS|                        x                   y                   z
 STRESS|      x        2.67537379581E-01   2.45931708730E-07  -4.29716685938E-03
 STRESS|      y        2.45931708730E-07   2.78161945635E-01   5.58511123164E-05
 STRESS|      z       -4.29716685938E-03   5.58511123164E-05   2.73126455701E-01
 STRESS| 1/3 Trace                                             2.72941926972E-01
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Assuming the dispersion stress in a.u., I got the following relation Stress_DFT+D3 (GPa) = Stress_DFT (GPa) + Stress_D3 (a.u.)*4359.74393 / volume (Angstrom^3), which seems fine.

So from output from CP2K, I got following relations:
E_DFT+D3 (a.u.)           =  E_DFT (a.u.)          +  E_D3 (a.u.)
F_DFT+D3 (a.u.)           =  F_DFT  (a.u.)          -  F_D3 (a.u.)
Stress_DFT+D3 (GPa)  =  Stress_DFT (GPa) +  Stress_D3 (a.u.)*4359.74393 / volume (Ang^3)

Could you please help me to understand why there is subtraction of the forces to obtain total (DFT+D3) forces?

Many thanks ,
Abhishek



--
You received this message because you are subscribed to the Google Groups "cp2k" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cp2k+unsubscribe at googlegroups.com<mailto:cp2k+unsubscribe at googlegroups.com>.
To view this discussion on the web visit https://groups.google.com/d/msgid/cp2k/CANbRB3t4RwX%3DJ7HxMpOpFZ03C6969vszxX093tgrb3U9ZR%3DXPA%40mail.gmail.com<https://groups.google.com/d/msgid/cp2k/CANbRB3t4RwX%3DJ7HxMpOpFZ03C6969vszxX093tgrb3U9ZR%3DXPA%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups "cp2k" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cp2k+unsubscribe at googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cp2k/ZR0P278MB07599567232F3E270DC28B6F9F259%40ZR0P278MB0759.CHEP278.PROD.OUTLOOK.COM.


More information about the CP2K-user mailing list