@@ -144,28 +144,29 @@ HamiltLCAO<T>::HamiltLCAO(
144144 this ->opsd ->add (exx);
145145 }
146146
147- if (GlobalV::dft_plus_u)
147+ #ifdef __DEEPKS
148+ if (GlobalV::deepks_scf)
148149 {
149- Operator<double >* dftu = new OperatorDFTU<OperatorLCAO<double >>(
150+ Operator<double >* deepks = new DeePKS<OperatorLCAO<double >>(
151+ loc_in,
150152 LM_in,
151153 nullptr ,// no explicit call yet
152154 &(LM_in->Hloc )
153155 );
154- this ->opsd ->add (dftu );
156+ this ->opsd ->add (deepks );
155157 }
158+ #endif
156159
157- # ifdef __DEEPKS
158- if (GlobalV::deepks_scf )
160+ // end node should be OperatorDFTU
161+ if (GlobalV::dft_plus_u )
159162 {
160- Operator<double >* deepks = new DeePKS<OperatorLCAO<double >>(
161- loc_in,
163+ Operator<double >* dftu = new OperatorDFTU<OperatorLCAO<double >>(
162164 LM_in,
163165 nullptr ,// no explicit call yet
164166 &(LM_in->Hloc )
165167 );
166- this ->opsd ->add (deepks );
168+ this ->opsd ->add (dftu );
167169 }
168- #endif
169170 return ;
170171}
171172
@@ -288,16 +289,6 @@ HamiltLCAO<T>::HamiltLCAO(
288289 this ->ops ->add (nonlocal);
289290 }
290291
291- if (GlobalV::dft_plus_u)
292- {
293- Operator<std::complex <double >>* dftu = new OperatorDFTU<OperatorLCAO<std::complex <double >>>(
294- LM_in,
295- nullptr ,// no explicit call yet
296- &(LM_in->Hloc2 )
297- );
298- this ->ops ->add (dftu);
299- }
300-
301292#ifdef __DEEPKS
302293 if (GlobalV::deepks_scf)
303294 {
@@ -310,6 +301,16 @@ HamiltLCAO<T>::HamiltLCAO(
310301 this ->ops ->add (deepks);
311302 }
312303#endif
304+ // end node should be OperatorDFTU
305+ if (GlobalV::dft_plus_u)
306+ {
307+ Operator<std::complex <double >>* dftu = new OperatorDFTU<OperatorLCAO<std::complex <double >>>(
308+ LM_in,
309+ nullptr ,// no explicit call yet
310+ &(LM_in->Hloc2 )
311+ );
312+ this ->ops ->add (dftu);
313+ }
313314
314315}
315316
0 commit comments