xnn.hybrid.models.dispersion#
D3(CSO) dispersion for BAMBOO (Schroeder, Creon & Schwabe 2015).
BAMBOO adds a Grimme-D3 dispersion correction in the CSO reformulation
(Schroeder et al., J. Chem. Theory Comput. 11, 3163, 2015), which keeps only
the C6 term and replaces the Becke-Johnson denominator with a smooth,
coordination-independent damping:
E_disp = - sum_{i<j} C6_ij * m_ij / (r_ij^6 + R_c^6)
m_ij = s6 + a1 / (1 + exp(r_ij - 2.5 * R0_ij))
with R0_ij = sqrt(3 * r2r4_i * r2r4_j) and a fixed inner cutoff
R_c = 7.75 bohr. The coordination-number-dependent C6_ij is
interpolated exactly as in ordinary D3.
Implementation note: this reuses the standard Grimme-D3 reference tables and
the C6/coordination-number machinery already shipped with xnn
(xnn.common.models.d3) rather than the upstream dftd3.pt blob, so the
dispersion here is not on the machine-precision fidelity path (the paper
excludes dispersion from the DFT training set entirely and only adds it during
MD, so it never enters the trained BAMBOO weights). It is provided for
MD/inference use and is off by default. Distances are handled in bohr and
the returned per-atom energy is converted to BAMBOO’s native kcal/mol.
Module Attributes
hartree -> kcal/mol (bytedance/bamboo |
Classes
|
Grimme D3(CSO) dispersion energy on a neighbour graph. |