DeePMD-kit Long-Range and Surface Modeling#
Short-Range Descriptor Limitations for Surface Phenomena#
DeePMD-kit models are fundamentally short-range: they only account for atomic interactions within the cutoff radius rcut. Once a species — such as an evaporating MoO₃ unit or a desorbing molecule — moves beyond rcut from all neighboring atoms, the model treats it as completely non-interacting with zero surface forces. This is a hard architectural constraint, not a parameter-tuning issue.
Practical consequences for surface modeling:
- Evaporation and desorption accuracy depend entirely on training data coverage, not cutoff size. Increasing
rcutfrom 6.0 to 8.0 Å improves the description of bond-breaking over a longer distance but does not make evaporation more or less likely to occur in simulation. - High failure rates during exploration (e.g., 42–99% of frames flagged as failed in
model_devi.out) typically indicate the model has encountered configurations outside its training distribution — e.g., a partially detached molecule — rather than a parameter misconfiguration. - Ionic oxides and polar systems (e.g., Bi₂Mo₃O₁₂) have long-range electrostatic interactions that are not captured by any standard short-range DeePMD descriptor with
rcut= 6–8 Å. Whether this matters for a given process depends on whether electrostatics significantly contribute to the desorption energetics; for primarily covalent bond-breaking events, the standard model may be sufficient.
Long-Range Interaction Models#
Three specialized model types address the limitations above, each targeting a distinct scenario.
DPLR (Deep Potential Long-Range)#
DPLR adds long-range electrostatic energy to the total energy by representing the electronic structure as a set of Gaussian charge distributions whose positions are predicted by a Deep Wannier (DW) model. The electrostatic term is computed in Fourier space; the approximation error decays as r⁻⁴ (dipole–quadrupole), which is far slower than the hard cutoff of standard descriptors.
Training workflow (two steps, TensorFlow only — interfaces are unstable and subject to change):
- Train a Deep Wannier model (
fitting_net: dipole) on Wannier centroid displacements from DFT+Wannier90 data, stored asatomic_dipole.npy. - Train the DPLR model, referencing the frozen DW model via
model_modifier.dipole_charge. Key hyperparameters:ewald_beta(Gaussian spread, Å⁻¹) andewald_h(Fourier grid size, Å).
MD simulation uses LAMMPS kspace_style pppm/dplr for the long-range part and fix dplr to back-propagate forces from virtual Wannier centroid sites to real atoms. The WC coordinates must be explicitly written in the LAMMPS configuration file with a virtual bond to their parent atom.
When to use DPLR: Polar/ionic systems where long-range electrostatics materially contribute to surface or interfacial energetics (e.g., water, ionic oxides). For systems where desorption is driven primarily by short-range covalent bond breaking, the standard model is often sufficient.
se_e2_r (Radial-Only Descriptor)#
se_e2_r (DeepPot-SE radial edition) encodes only the radial distances s(rᵢⱼ) — not angular information — in the embedding matrix. It is computationally lighter than se_e2_a and can be combined with it in a hybrid descriptor to capture long-range radial contributions beyond the angular cutoff. See the se_e2_r documentation for the training input format, which differs from se_e2_a only in the descriptor.type field.
DPRc (Deep Potential Range Correction)#
DPRc corrects energies from a low-level semiempirical QM/MM method to a high-level ab initio QM/MM method within the cutoff, while letting long-range electrostatics be handled by particle mesh Ewald. It is not a general long-range electrostatics model — it is a multiscale QM/MM tool.
Architectural modifications distinguish QM and MM atoms:
- Switch function zeroes out MM–MM interactions.
- Fitting network sets MM atom energies to zero, removing their energy bias.
Training data must be the energy difference (high-level QM/MM minus low-level QM/MM), not standard ab initio data. DPRc has best-practice integration with the AMBER QM/MM module. A pairwise variant supports cases where the system is too large for full DFT labeling. See the DPRc documentation for the hybrid descriptor setup distinguishing QM/MM regions.
Training Data Strategies for Surface and Non-Equilibrium Systems#
Why Standard Approaches Fail#
Bulk + stoichiometric-surface data alone is insufficient for modeling surface evaporation, desorption, or volatilization. The model only learns the equilibrium endpoints and has no knowledge of the energy landscape between them. When active learning explores at temperature, it immediately encounters partially detached or intermediate configurations, producing near-100% failure rates and unstable trajectories.
The scale_pert init method (box scaling + small atomic displacements) is designed for periodic bulk crystalline systems. For gas-phase molecules or surface-evaporation scenarios, it generates nearly identical near-equilibrium configurations that leave the model unable to sustain MD trajectories at temperature. AIMD-generated data spans the relevant configuration space and is strongly preferred for these cases.
Required Configuration Categories#
For a surface evaporation/desorption system (illustrated by Mo volatilization from Bi₂Mo₃O₁₂), include:
| Category | Purpose |
|---|---|
| Bulk phases at 3+ temperatures | Captures bulk thermal motion and product-phase endpoints |
| Stoichiometric surface slab (≥6 layers, no fixed atoms) | Baseline surface environment |
| Species-depleted surface configs (e.g., 1, 2, N vacancies) | Critical intermediates along detachment pathway |
| Partially rearranged/enriched surface | Post-evaporation surface states |
| Desorbing species at 3–4 Å above surface | Transition-state region; model must know this regime |
| Isolated gas-phase species | Fully desorbed endpoint |
The species-depleted and partially desorbed configurations are the most commonly omitted and the most important: without them, the model extrapolates wildly during any MD simulation that begins a surface transformation.
Key Practical Rules#
- Never fix bottom-layer atoms. dpgen strips selective dynamics flags when writing DFT inputs; fixing atoms in AIMD produces inconsistent force labels. Use thick slabs (≥6 layers) instead.
- Identical DFT settings (functional, ENCUT, KSPACING, pseudopotentials) across all AIMD and dpgen
fpcalculations. Inconsistent settings produce contradictory training labels and are a common cause of persistently high failure rates. - Group
sys_configsby environment type, not temperature. Merge POSCARs from different temperatures into one directory per environment; control temperature range viatempsinmodel_devi_jobs. This avoids combinatorial explosion ofsys_configsentries and simplifies probability weighting. - Stage temperature expansion across iterations. Start exploration at the target temperature; add higher temperatures in later iterations as the model matures.
Active Learning Diagnostics#
When surface or non-equilibrium modeling fails in dpgen, the model_devi.out file is the primary diagnostic tool. Check the max_devi_f column (column 4):
- Values >> 1.0 eV/Å or NaN — trajectory has exploded; the model encountered configurations completely outside its training distribution. Fix by adding intermediate-state training data (see above).
- Near-100% "failed" frames — model deviation exceeds
f_trust_hion nearly every frame. Either the trust level is too tight relative to the force RMSE, or the model is fundamentally unprepared for the explored configurations. - Near-0% "accurate" frames with low failure rate (high "candidate" rate) — model is learning but needs more iterations; this is expected behavior in early iterations.
Trust level calibration: Set model_devi_f_trust_lo to approximately 2–5× the training force RMSE from lcurve.out. If f_trust_lo is below the RMSE, almost all frames will be classified as "candidate" or "failed" regardless of model quality.
Sampling imbalance: By default, dpgen weights training data by prob_sys_size (proportional to frame count). Underrepresented structure types (e.g., O-atom adsorption vs. O₂ adsorption) will have lower model accuracy even if total RMSE appears acceptable. Remedy by duplicating entries in init_data_sys, adjusting auto_prob in the training input, or ensuring comparable frame counts across structure types.