@@ -625,13 +625,15 @@ void ESolver_KS_LCAO<TK, TR>::iter_init(const int istep, const int iter)
625625 // calculate exact-exchange
626626 if (GlobalC::exx_info.info_ri .real_number )
627627 {
628- this ->exd ->exx_eachiterinit (*dynamic_cast <const elecstate::ElecStateLCAO<TK>*>(this ->pelec )->get_DM (),
628+ this ->exd ->exx_eachiterinit (istep,
629+ *dynamic_cast <const elecstate::ElecStateLCAO<TK>*>(this ->pelec )->get_DM (),
629630 this ->kv ,
630631 iter);
631632 }
632633 else
633634 {
634- this ->exc ->exx_eachiterinit (*dynamic_cast <const elecstate::ElecStateLCAO<TK>*>(this ->pelec )->get_DM (),
635+ this ->exc ->exx_eachiterinit (istep,
636+ *dynamic_cast <const elecstate::ElecStateLCAO<TK>*>(this ->pelec )->get_DM (),
635637 this ->kv ,
636638 iter);
637639 }
@@ -914,12 +916,12 @@ void ESolver_KS_LCAO<TK, TR>::update_pot(const int istep, const int iter)
914916// ! 5) cal_MW? (why put it here?)
915917// ------------------------------------------------------------------------------
916918template <typename TK, typename TR>
917- void ESolver_KS_LCAO<TK, TR>::iter_finish(int & iter)
919+ void ESolver_KS_LCAO<TK, TR>::iter_finish(const int istep, int & iter)
918920{
919921 ModuleBase::TITLE (" ESolver_KS_LCAO" , " iter_finish" );
920922
921923 // call iter_finish() of ESolver_KS
922- ESolver_KS<TK>::iter_finish (iter);
924+ ESolver_KS<TK>::iter_finish (istep, iter);
923925
924926 // 1) mix density matrix if mixing_restart + mixing_dmr + not first
925927 // mixing_restart at every iter
@@ -944,8 +946,8 @@ void ESolver_KS_LCAO<TK, TR>::iter_finish(int& iter)
944946 if (GlobalC::exx_info.info_global .cal_exx )
945947 {
946948 GlobalC::exx_info.info_ri .real_number ?
947- this ->exd ->exx_iter_finish (this ->kv , GlobalC::ucell, *this ->p_hamilt , *this ->pelec , *this ->p_chgmix , this ->scf_ene_thr , iter, this ->conv_esolver ) :
948- this ->exc ->exx_iter_finish (this ->kv , GlobalC::ucell, *this ->p_hamilt , *this ->pelec , *this ->p_chgmix , this ->scf_ene_thr , iter, this ->conv_esolver );
949+ this ->exd ->exx_iter_finish (this ->kv , GlobalC::ucell, *this ->p_hamilt , *this ->pelec , *this ->p_chgmix , this ->scf_ene_thr , iter, istep, this ->conv_esolver ) :
950+ this ->exc ->exx_iter_finish (this ->kv , GlobalC::ucell, *this ->p_hamilt , *this ->pelec , *this ->p_chgmix , this ->scf_ene_thr , iter, istep, this ->conv_esolver );
949951 }
950952#endif
951953
0 commit comments