@@ -63,15 +63,15 @@ RDMFT_LCAO<TK, TR>::RDMFT_LCAO(UnitCell& ucell, const Input_para& inp)
6363 // inp.rdmft_power_alpha);
6464 // call update_ion for rdmft_ptr;
6565 ESolver_KS_LCAO<TK, TR>::before_scf (ucell, 0 );
66- rdmft_ptr->update_ion (ucell, *(this ->pw_rho ), this ->locpp .vloc , this ->sf .strucFac );
66+ // rdmft_ptr->update_ion(ucell, *(this->pw_rho), this->locpp.vloc, this->sf.strucFac);
6767
68- rdmft_ptr->cal_Energy ();
68+ // rdmft_ptr->cal_Energy();
6969
70- std::cout << " Called f() in RDMFT_LCAO, Etotal = " << this ->rdmft_ptr ->Etotal << std::endl;
71- std::cout << " Called f() in RDMFT_LCAO, E[0] = " << this ->rdmft_ptr ->E_RDMFT [0 ] << std::endl;
72- std::cout << " Called f() in RDMFT_LCAO, E[1] = " << this ->rdmft_ptr ->E_RDMFT [1 ] << std::endl;
73- std::cout << " Called f() in RDMFT_LCAO, E[2] = " << this ->rdmft_ptr ->E_RDMFT [2 ] << std::endl;
74- std::cout << " Called f() in RDMFT_LCAO, E[3] = " << this ->rdmft_ptr ->E_RDMFT [3 ] << std::endl;
70+ // std::cout << "Called f() in RDMFT_LCAO, Etotal = " << this->rdmft_ptr->Etotal << std::endl;
71+ // std::cout << "Called f() in RDMFT_LCAO, E[0] = " << this->rdmft_ptr->E_RDMFT[0] << std::endl;
72+ // std::cout << "Called f() in RDMFT_LCAO, E[1] = " << this->rdmft_ptr->E_RDMFT[1] << std::endl;
73+ // std::cout << "Called f() in RDMFT_LCAO, E[2] = " << this->rdmft_ptr->E_RDMFT[2] << std::endl;
74+ // std::cout << "Called f() in RDMFT_LCAO, E[3] = " << this->rdmft_ptr->E_RDMFT[3] << std::endl;
7575
7676 // const integer nbands = static_cast<integer>(inp.nbands > 0 ? inp.nbands : 1);
7777 // const integer stiefel_n = nbands;
@@ -121,6 +121,7 @@ RDMFT_LCAO<TK, TR>::RDMFT_LCAO(UnitCell& ucell, const Input_para& inp)
121121
122122 // this->mani->ChooseParamsSet4();
123123
124+ this ->printInfo ();
124125}
125126
126127// template <typename TK, typename TR>
@@ -192,7 +193,7 @@ realdp RDMFT_LCAO<TK, TR>::f(const Variable& x) const
192193 ModuleBase::WARNING (" RDMFT_LCAO" , " UnitCell reference is unavailable before calling update_elec" );
193194 throw std::runtime_error (" RDMFT_LCAO::f requires a valid UnitCell reference" );
194195 }
195- if (false )
196+ if (true )
196197 {
197198 std::cout << " before update_elec" << std::endl;
198199 std::cout << " nk_total = " << this ->nk_total << " , nbands_total = " << this ->nbands_total << std::endl;
@@ -459,6 +460,21 @@ void RDMFT_LCAO<TK, TR>::KSStateToVariable(const ModuleBase::matrix& occ_num,
459460 this ->rdmft_ptr ->update_elec (*this ->ucell_ref_ , occ_num, wfc);
460461}
461462
463+ template <typename TK, typename TR>
464+ void RDMFT_LCAO<TK, TR>::printInfo()
465+ {
466+ std::cout << std::endl;
467+ std::cout << " ----------------------------------------" << std::endl;
468+ std::cout << " RDMFT_LCAO Problem Info:" << std::endl;
469+ std::cout << " Number of spins: " << nspin << std::endl;
470+ std::cout << " Total k-points: " << nk_total << std::endl;
471+ std::cout << " Total bands: " << nbands_total << std::endl;
472+ std::cout << " Total basis functions: " << nbasis_total << std::endl;
473+ std::cout << " ----------------------------------------" << std::endl;
474+ std::cout << std::endl;
475+
476+ }
477+
462478// Explicit template instantiations for the typical scalar combinations used in ABACUS.
463479template class RDMFT_LCAO <double , double >;
464480template class RDMFT_LCAO <std::complex <double >, double >;
0 commit comments