diff --git a/source/source_estate/module_pot/pot_ml_exx.h b/source/source_estate/module_pot/pot_ml_exx.h index 1fef8b8e9c..d1edd7117b 100644 --- a/source/source_estate/module_pot/pot_ml_exx.h +++ b/source/source_estate/module_pot/pot_ml_exx.h @@ -62,7 +62,7 @@ class PotML_EXX : public PotBase } ~PotML_EXX() {}; - void cal_v_eff(const Charge*const chg, const UnitCell*const ucell, ModuleBase::matrix& v_eff) + void cal_v_eff(const Charge*const chg, const UnitCell*const ucell, ModuleBase::matrix& v_eff) override { if (PARAM.inp.of_ml_local_test) this->ml_exx.localTest(chg->rho, this->rho_basis_); this->ml_exx.ml_potential(chg->rho, this->rho_basis_, v_eff); diff --git a/source/source_io/read_input_item_ofdft.cpp b/source/source_io/read_input_item_ofdft.cpp index a86c93a0a2..543f4efa90 100644 --- a/source/source_io/read_input_item_ofdft.cpp +++ b/source/source_io/read_input_item_ofdft.cpp @@ -14,7 +14,8 @@ void ReadInput::item_ofdft() #ifndef __MLALGO if (para.input.of_kinetic == "ml" || para.input.of_kinetic == "mpn" || para.input.of_kinetic == "cpn5") { - ModuleBase::WARNING_QUIT("ReadInput", "ML KEDF is not supported."); + ModuleBase::WARNING_QUIT("ReadInput", "Error: ML KEDF requires ENABLE_MLALGO option.\n " + "Please enable ENABLE_MLALGO during compilation to use this feature."); } #endif if (para.input.of_kinetic != "tf" && para.input.of_kinetic != "vw" && para.input.of_kinetic != "wt" diff --git a/source/source_io/read_input_item_output.cpp b/source/source_io/read_input_item_output.cpp index dce309772c..1ce9d63371 100644 --- a/source/source_io/read_input_item_output.cpp +++ b/source/source_io/read_input_item_output.cpp @@ -564,6 +564,10 @@ void ReadInput::item_output() { ModuleBase::WARNING_QUIT("ReadInput", "ELF is only aviailable for ksdft and ofdft"); } + if (para.input.out_elf[0] > 0 && para.input.nspin == 4) + { + ModuleBase::WARNING_QUIT("ReadInput", "ELF is not aviailable for nspin = 4"); + } }; sync_intvec(input.out_elf, 2, 0); this->add_item(item);