@@ -153,28 +153,18 @@ void ModuleBase::Global_File::make_dir_out(
153153#endif
154154 }
155155
156- std::stringstream ss,ss1;
157-
158- // mohan add 2010-09-12
159- if (out_alllog)
160- {
161- ss << " running_" << calculation << " _" << rank + 1 ;
162- open_log (GlobalV::ofs_running, ss.str (), calculation, restart);
163- #if defined(__CUDA) || defined(__ROCM)
164- open_log (GlobalV::ofs_device, " device" + std::to_string (rank), calculation, restart);
165- #endif
166- }
167- else
168- {
169- if (rank==0 )
170- {
171- ss << " running_" << calculation;
172- open_log (GlobalV::ofs_running, ss.str (), calculation, restart);
173- #if defined(__CUDA) || defined(__ROCM)
174- open_log (GlobalV::ofs_device, " device" , calculation, restart);
175- #endif
176- }
177- }
156+ auto open_running_log = [&](const std::string& keyword)
157+ {
158+ std::stringstream ss;
159+ ss << " running_" << keyword;
160+ if (out_alllog) { ss << " _" << rank + 1 ; }
161+ open_log (GlobalV::ofs_running, ss.str (), keyword, restart);
162+ #if defined(__CUDA) || defined(__ROCM)
163+ open_log (GlobalV::ofs_device, " device" + std::to_string (rank), calculation, restart);
164+ #endif
165+ };
166+ // if linear response solver only, open running_lr.log. else, open running_calculation.log
167+ if (out_alllog || rank == 0 ) { open_running_log (PARAM.inp .esolver_type == " lr" ? " lr" : calculation); }
178168
179169 if (rank==0 )
180170 {
@@ -242,27 +232,18 @@ void ModuleBase::Global_File::close_all_log(const int rank, const bool out_alllo
242232// NAME : ofs_build
243233// ----------------------------------------------------------
244234
245- // mohan update 2011-01-13
246- std::stringstream ss;
247- if (out_alllog)
248- {
249- ss << " running_" << calculation << " _cpu" << rank << " .log" ;
250- close_log (GlobalV::ofs_running,ss.str ());
251- #if defined(__CUDA) || defined(__ROCM)
252- close_log (GlobalV::ofs_device, " device" + std::to_string (rank));
253- #endif
254- }
255- else
256- {
257- if (rank==0 )
258- {
259- ss << " running_" << calculation << " .log" ;
260- close_log (GlobalV::ofs_running,ss.str ());
261- #if defined(__CUDA) || defined(__ROCM)
262- close_log (GlobalV::ofs_device, " device" );
263- #endif
264- }
265- }
235+ auto close_running_log = [&](const std::string& keyword)
236+ {
237+ std::stringstream ss;
238+ ss << " running_" << keyword;
239+ if (out_alllog) { ss << " _" << rank + 1 ; }
240+ close_log (GlobalV::ofs_running, ss.str ());
241+ #if defined(__CUDA) || defined(__ROCM)
242+ close_log (GlobalV::ofs_device, " device" + std::to_string (rank));
243+ #endif
244+ };
245+ // mohan update 2011-01-13
246+ if (out_alllog || rank == 0 ) { close_running_log (PARAM.inp .esolver_type == " lr" ? " lr" : calculation); }
266247
267248 if (rank==0 )
268249 {
0 commit comments