diff --git a/stable/champ/save_for_champ.irp.f b/stable/champ/save_for_champ.irp.f index d01d75f..0f9d267 100644 --- a/stable/champ/save_for_champ.irp.f +++ b/stable/champ/save_for_champ.irp.f @@ -65,11 +65,13 @@ program qmcpack enddo !$OMP PARALLEL DO DEFAULT(SHARED) PRIVATE(i,j,istate,hij) REDUCTION(+:F) do k=1,N_det + if (sum(coef(k,:)*coef(k,:))==0.d0) cycle call i_H_j(det(1,1,k), det(1,1,k), N_int, hij) do istate=1,N_states F(istate) = F(istate) + hij*coef(k,istate)*coef(k,istate) enddo do l=1,k-1 + if (sum(coef(l,:)*coef(l,:))==0.d0) cycle call i_H_j(det(1,1,k), det(1,1,l), N_int, hij) do istate=1,N_states F(istate) = F(istate) + 2.d0*hij*coef(k,istate)*coef(l,istate)