if(dabs(psi_h_alpha*alpha_h_psi - psi_h_alpha_tmp*alpha_h_psi_tmp).gt.1.d-10)then !!! print*,'---' !!! print*,psi_h_alpha *alpha_h_psi, psi_h_alpha, alpha_h_psi !!! print*,psi_h_alpha_tmp*alpha_h_psi_tmp,psi_h_alpha_tmp,alpha_h_psi_tmp call debug_det(det,N_int) print*,dabs(psi_h_alpha*alpha_h_psi - psi_h_alpha_tmp*alpha_h_psi_tmp),psi_h_alpha *alpha_h_psi,psi_h_alpha_tmp*alpha_h_psi_tmp print*,'-- Good ' print*, psi_h_alpha, alpha_h_psi print*,'-- bad ' print*,psi_h_alpha_tmp,alpha_h_psi_tmp print*,'-- details good' double precision :: accu_1, accu_2 accu_1 = 0.d0 accu_2 = 0.d0 do iii = 1, N_det call get_excitation_degree( psi_det(1,1,iii), det, degree, N_int) call htilde_mu_mat_bi_ortho_tot(psi_det(1,1,iii), det, N_int, i_h_alpha) call htilde_mu_mat_bi_ortho_tot(det, psi_det(1,1,iii), N_int, alpha_h_i) print*,iii,degree,i_h_alpha,alpha_h_i accu_1 += i_h_alpha accu_2 += alpha_h_i print*,accu_1,accu_2 enddo !!! if(dabs(psi_h_alpha*alpha_h_psi).gt.1.d-10)then !!! print*,p1,p2 !!! print*,det(1,1), det(1,2) !!! call debug_det(det,N_int) !!! print*,psi_h_alpha *alpha_h_psi, psi_h_alpha, alpha_h_psi !!! print*,psi_h_alpha_tmp*alpha_h_psi_tmp,psi_h_alpha_tmp,alpha_h_psi_tmp !!! print*, dabs(psi_h_alpha*alpha_h_psi - psi_h_alpha_tmp*alpha_h_psi_tmp),& !!! psi_h_alpha *alpha_h_psi,psi_h_alpha_tmp*alpha_h_psi_tmp