From d62e4ce7ea5b2d584da378efa45bdbf7f716ec36 Mon Sep 17 00:00:00 2001 From: YuLiu98 Date: Sat, 29 Jul 2023 12:29:46 +0800 Subject: [PATCH] Fix: check atom types cpmsostence between STRU and DP model --- source/module_esolver/esolver_dp.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source/module_esolver/esolver_dp.cpp b/source/module_esolver/esolver_dp.cpp index 114486d0f61..b05b2e1a719 100644 --- a/source/module_esolver/esolver_dp.cpp +++ b/source/module_esolver/esolver_dp.cpp @@ -113,7 +113,7 @@ namespace ModuleESolver } } #else - ModuleBase::WARNING_QUIT("DP_pot", "Please recompile with -D__DPMD"); + ModuleBase::WARNING_QUIT("ESolver_DP", "Please recompile with -D__DPMD"); #endif ModuleBase::timer::tick("ESolver_DP", "Run"); } @@ -195,13 +195,19 @@ namespace ModuleESolver for (int it = 0; it < ucell.ntype; ++it) { + bool consistent = false; for (int it2 = 0; it2 < ntype_dp; ++it2) { if (ucell.atom_label[it] == label[it2]) { dp_type[it] = it2; + consistent = true; } } + if (!consistent) + { + ModuleBase::WARNING_QUIT("ESolver_DP", "Unsupported atom types for the DP model"); + } } delete[] label; } @@ -217,7 +223,7 @@ namespace ModuleESolver if (!ok) { - ModuleBase::WARNING_QUIT("type_map", "can not find the DP model"); + ModuleBase::WARNING_QUIT("ESolver_DP", "can not find the DP model"); } return find_type; }