Confusion about the D4 parameters

11 views
Skip to first unread message

Torstein Fjermestad

unread,
Feb 9, 2026, 8:47:14 AM (3 days ago) Feb 9
to cp2k

CP2K version 2025.2

 Dear all, 

 I am running some test calculations using the D4 dispersion together with the m06 functional. 

I am confused about some of the parameters in the input and how these correspond to information in the output. 

My VDW_POTENTIAL section looks like the following:

 

      &VDW_POTENTIAL
       POTENTIAL_TYPE PAIR_POTENTIAL
       &PAIR_POTENTIAL
        TYPE DFTD4
        D4_CN_CUTOFF 5.29177209
        D4_CUTOFF 1.05835442E+001
        D4_DEBUG T
        D4_REFERENCE_CODE F
        FACTOR_S9_TERM 1.00000000E+000
        REFERENCE_FUNCTIONAL m06
        R_CUTOFF 1.05835442E+001
        VERBOSE_OUTPUT T
        &PRINT_DFTD DEBUG
        &END PRINT_DFTD
       &END PAIR_POTENTIAL
      &END VDW_POTENTIAL

 

The value of D4_CN_CUTOFF is the suggested value in the manual. 

 

In the output, the following information is printed:

 

 !-----------------------------------------------------------------------------!
                               DEBUG D4 DISPERSION
 !-----------------------------------------------------------------------------!
 DEBUG D4| Reference functional                                              m06
 DEBUG D4| Scaling parameter (s6)                                         1.0000
 DEBUG D4| Scaling parameter (s8)                                         0.1637
 DEBUG D4| BJ Damping parameter (a1)                                      0.5346
 DEBUG D4| BJ Damping parameter (a2)                                      6.0619
 DEBUG D4| Cutoff value coordination numbers                          0.1000E-05
 DEBUG D4| Cutoff radius coordination numbers                            11.1000
 DEBUG D4| Coordination number function type                                   3
 DEBUG D4| Cutoff radius 2-body terms [bohr]                             40.0000
 DEBUG D4| Cutoff radius 3-body terms [bohr]                             40.0000
 DEBUG D4| CN differences (max)                                         0.000001
 DEBUG D4| CN differences (ave)                                         0.000000

 

I have the following questions regarding this output section:

  1. I don't understand what "Cutoff radius coordination numbers" means. I could guess that it is the value of the input parameter D4_CN_CUTOFF, but the value does not match. If D4_CN_CUTOFF is converted from Ångstrøm to Bohr in the output, the value should be 10 and not 11.1. Is the value of D4_CN_CUTOFF in the input ignored?
  2. What does “Coordination number function type” refer to?
  3. By comparing the values of the scaling and BJ damping parameters to the values of the dftd4 Github web page, I see that the ATM values are used. Is there an input option for choosing the many-body dispersion parameters instead?


Thanks in advance for your help.

Best regards,

Torstein

 

Johann Pototschnig

unread,
Feb 10, 2026, 9:14:11 AM (2 days ago) Feb 10
to cp2k
1+2)
The  Coordination number function type (cnfun) determines which definition for the coordination number calculation is used:
  1 - D3
  2 - new D3
  3 - D4
which updates the Cutoff radius coordination number. 
Therefore, the value from the input is not used. This probably should be fixed, I will open an issue. 

3) Yes, the values from the dftd4 github are used. 
     As far as I can see, at the github the same set of parameters is used.

If you want to use parameters defined somewhere else it might be necessary to extend the input. 

best,
Johann Pototschnig
Reply all
Reply to author
Forward
0 new messages