From 608f1fd30218ab64c53784cf37373f25d7c7da20 Mon Sep 17 00:00:00 2001 From: Manu Date: Tue, 28 Jul 2015 16:41:02 +0200 Subject: [PATCH] MRCC_Utils_new seems to work, but not sure --- plugins/MRCC_Utils_new/README.rst | 23 + plugins/MRCC_Utils_new/davidson.irp.f | 430 +++++++++++++++++++ plugins/MRCC_Utils_new/mrcc_amplitudes.irp.f | 85 ++++ plugins/MRCC_Utils_new/mrcc_dress.irp.f | 129 ++++++ plugins/MRCC_Utils_new/mrcc_general.irp.f | 67 +++ plugins/MRCC_Utils_new/mrcc_utils.irp.f | 179 ++++++++ plugins/MRCC_Utils_new/tree_dependency.png | Bin 0 -> 108444 bytes src/Determinants/davidson.irp.f | 4 +- src/Determinants/slater_rules.irp.f | 11 +- 9 files changed, 920 insertions(+), 8 deletions(-) create mode 100644 plugins/MRCC_Utils_new/README.rst create mode 100644 plugins/MRCC_Utils_new/davidson.irp.f create mode 100644 plugins/MRCC_Utils_new/mrcc_amplitudes.irp.f create mode 100644 plugins/MRCC_Utils_new/mrcc_dress.irp.f create mode 100644 plugins/MRCC_Utils_new/mrcc_general.irp.f create mode 100644 plugins/MRCC_Utils_new/mrcc_utils.irp.f create mode 100644 plugins/MRCC_Utils_new/tree_dependency.png diff --git a/plugins/MRCC_Utils_new/README.rst b/plugins/MRCC_Utils_new/README.rst new file mode 100644 index 00000000..0b12d7fc --- /dev/null +++ b/plugins/MRCC_Utils_new/README.rst @@ -0,0 +1,23 @@ +=========== +MRCC Module +=========== + +Needed Modules +============== + +.. Do not edit this section. It was auto-generated from the +.. by the `update_README.py` script. + +.. image:: tree_dependency.png + +* `Perturbation `_ +* `Selectors_full `_ +* `Generators_full `_ +* `Psiref_Utils `_ + +Documentation +============= + +.. Do not edit this section. It was auto-generated from the +.. by the `update_README.py` script. + diff --git a/plugins/MRCC_Utils_new/davidson.irp.f b/plugins/MRCC_Utils_new/davidson.irp.f new file mode 100644 index 00000000..0c7bebbd --- /dev/null +++ b/plugins/MRCC_Utils_new/davidson.irp.f @@ -0,0 +1,430 @@ +subroutine davidson_diag_mrcc(dets_in,u_in,energies,dim_in,sze,N_st,Nint,iunit,istate) + use bitmasks + implicit none + BEGIN_DOC + ! Davidson diagonalization. + ! + ! dets_in : bitmasks corresponding to determinants + ! + ! u_in : guess coefficients on the various states. Overwritten + ! on exit + ! + ! dim_in : leftmost dimension of u_in + ! + ! sze : Number of determinants + ! + ! N_st : Number of eigenstates + ! + ! iunit : Unit number for the I/O + ! + ! Initial guess vectors are not necessarily orthonormal + END_DOC + integer, intent(in) :: dim_in, sze, N_st, Nint, iunit, istate + integer(bit_kind), intent(in) :: dets_in(Nint,2,sze) + double precision, intent(inout) :: u_in(dim_in,N_st) + double precision, intent(out) :: energies(N_st) + double precision, allocatable :: H_jj(:) + + double precision :: diag_h_mat_elem + integer :: i + ASSERT (N_st > 0) + ASSERT (sze > 0) + ASSERT (Nint > 0) + ASSERT (Nint == N_int) + PROVIDE mo_bielec_integrals_in_map + allocate(H_jj(sze)) + + !$OMP PARALLEL DEFAULT(NONE) & + !$OMP SHARED(sze,H_jj,N_det_ref,dets_in,Nint,istate,delta_ii,idx_ref) & + !$OMP PRIVATE(i) + !$OMP DO SCHEDULE(guided) + do i=1,sze + H_jj(i) = diag_h_mat_elem(dets_in(1,1,i),Nint) + enddo + !$OMP END DO + !$OMP DO SCHEDULE(guided) + do i=1,N_det_ref + H_jj(idx_ref(i)) += delta_ii(i,istate) + enddo + !$OMP END DO + !$OMP END PARALLEL + + call davidson_diag_hjj_mrcc(dets_in,u_in,H_jj,energies,dim_in,sze,N_st,Nint,iunit,istate) + deallocate (H_jj) +end + +subroutine davidson_diag_hjj_mrcc(dets_in,u_in,H_jj,energies,dim_in,sze,N_st,Nint,iunit,istate) + use bitmasks + implicit none + BEGIN_DOC + ! Davidson diagonalization with specific diagonal elements of the H matrix + ! + ! H_jj : specific diagonal H matrix elements to diagonalize de Davidson + ! + ! dets_in : bitmasks corresponding to determinants + ! + ! u_in : guess coefficients on the various states. Overwritten + ! on exit + ! + ! dim_in : leftmost dimension of u_in + ! + ! sze : Number of determinants + ! + ! N_st : Number of eigenstates + ! + ! iunit : Unit for the I/O + ! + ! Initial guess vectors are not necessarily orthonormal + END_DOC + integer, intent(in) :: dim_in, sze, N_st, Nint, istate + integer(bit_kind), intent(in) :: dets_in(Nint,2,sze) + double precision, intent(in) :: H_jj(sze) + integer, intent(in) :: iunit + double precision, intent(inout) :: u_in(dim_in,N_st) + double precision, intent(out) :: energies(N_st) + + integer :: iter + integer :: i,j,k,l,m + logical :: converged + + double precision :: overlap(N_st,N_st) + double precision :: u_dot_v, u_dot_u + + integer, allocatable :: kl_pairs(:,:) + integer :: k_pairs, kl + + integer :: iter2 + double precision, allocatable :: W(:,:,:), U(:,:,:), R(:,:) + double precision, allocatable :: y(:,:,:,:), h(:,:,:,:), lambda(:) + double precision :: diag_h_mat_elem + double precision :: residual_norm(N_st) + character*(16384) :: write_buffer + double precision :: to_print(2,N_st) + double precision :: cpu, wall + + PROVIDE det_connections + + call write_time(iunit) + call wall_time(wall) + call cpu_time(cpu) + write(iunit,'(A)') '' + write(iunit,'(A)') 'Davidson Diagonalization' + write(iunit,'(A)') '------------------------' + write(iunit,'(A)') '' + call write_int(iunit,N_st,'Number of states') + call write_int(iunit,sze,'Number of determinants') + write(iunit,'(A)') '' + write_buffer = '===== ' + do i=1,N_st + write_buffer = trim(write_buffer)//' ================ ================' + enddo + write(iunit,'(A)') trim(write_buffer) + write_buffer = ' Iter' + do i=1,N_st + write_buffer = trim(write_buffer)//' Energy Residual' + enddo + write(iunit,'(A)') trim(write_buffer) + write_buffer = '===== ' + do i=1,N_st + write_buffer = trim(write_buffer)//' ================ ================' + enddo + write(iunit,'(A)') trim(write_buffer) + + allocate( & + kl_pairs(2,N_st*(N_st+1)/2), & + W(sze,N_st,davidson_sze_max), & + U(sze,N_st,davidson_sze_max), & + R(sze,N_st), & + h(N_st,davidson_sze_max,N_st,davidson_sze_max), & + y(N_st,davidson_sze_max,N_st,davidson_sze_max), & + lambda(N_st*davidson_sze_max)) + + ASSERT (N_st > 0) + ASSERT (sze > 0) + ASSERT (Nint > 0) + ASSERT (Nint == N_int) + + ! Initialization + ! ============== + + k_pairs=0 + do l=1,N_st + do k=1,l + k_pairs+=1 + kl_pairs(1,k_pairs) = k + kl_pairs(2,k_pairs) = l + enddo + enddo + + !$OMP PARALLEL DEFAULT(NONE) & + !$OMP SHARED(U,sze,N_st,overlap,kl_pairs,k_pairs, & + !$OMP Nint,dets_in,u_in) & + !$OMP PRIVATE(k,l,kl,i) + + + ! Orthonormalize initial guess + ! ============================ + + !$OMP DO + do kl=1,k_pairs + k = kl_pairs(1,kl) + l = kl_pairs(2,kl) + if (k/=l) then + overlap(k,l) = u_dot_v(U_in(1,k),U_in(1,l),sze) + overlap(l,k) = overlap(k,l) + else + overlap(k,k) = u_dot_u(U_in(1,k),sze) + endif + enddo + !$OMP END DO + !$OMP END PARALLEL + + call ortho_lowdin(overlap,size(overlap,1),N_st,U_in,size(U_in,1),sze) + + ! Davidson iterations + ! =================== + + converged = .False. + + do while (.not.converged) + + !$OMP PARALLEL DEFAULT(NONE) & + !$OMP PRIVATE(k,i) SHARED(U,u_in,sze,N_st) + do k=1,N_st + !$OMP DO + do i=1,sze + U(i,k,1) = u_in(i,k) + enddo + !$OMP END DO + enddo + !$OMP END PARALLEL + + do iter=1,davidson_sze_max-1 + + ! Compute W_k = H |u_k> + ! ---------------------- + + do k=1,N_st + call H_u_0_mrcc(W(1,k,iter),U(1,k,iter),H_jj,sze,dets_in,Nint,istate) + enddo + + ! Compute h_kl = = + ! ------------------------------------------- + + do l=1,N_st + do k=1,N_st + do iter2=1,iter-1 + h(k,iter2,l,iter) = u_dot_v(U(1,k,iter2),W(1,l,iter),sze) + h(k,iter,l,iter2) = h(k,iter2,l,iter) + enddo + enddo + do k=1,l + h(k,iter,l,iter) = u_dot_v(U(1,k,iter),W(1,l,iter),sze) + h(l,iter,k,iter) = h(k,iter,l,iter) + enddo + enddo + + !DEBUG H MATRIX + !do i=1,iter + ! print '(10(x,F16.10))', h(1,i,1,1:i) + !enddo + !print *, '' + !END + + ! Diagonalize h + ! ------------- + call lapack_diag(lambda,y,h,N_st*davidson_sze_max,N_st*iter) + + ! Express eigenvectors of h in the determinant basis + ! -------------------------------------------------- + + do k=1,N_st + do i=1,sze + U(i,k,iter+1) = 0.d0 + W(i,k,iter+1) = 0.d0 + do l=1,N_st + do iter2=1,iter + U(i,k,iter+1) = U(i,k,iter+1) + U(i,l,iter2)*y(l,iter2,k,1) + W(i,k,iter+1) = W(i,k,iter+1) + W(i,l,iter2)*y(l,iter2,k,1) + enddo + enddo + enddo + enddo + + ! Compute residual vector + ! ----------------------- + + do k=1,N_st + do i=1,sze + R(i,k) = lambda(k) * U(i,k,iter+1) - W(i,k,iter+1) + enddo + residual_norm(k) = u_dot_u(R(1,k),sze) + to_print(1,k) = lambda(k) + nuclear_repulsion + to_print(2,k) = residual_norm(k) + enddo + + write(iunit,'(X,I3,X,100(X,F16.10,X,E16.6))'), iter, to_print(:,1:N_st) + call davidson_converged(lambda,residual_norm,wall,iter,cpu,N_st,converged) + if (converged) then + exit + endif + + + ! Davidson step + ! ------------- + + do k=1,N_st + do i=1,sze + U(i,k,iter+1) = -1.d0/max(H_jj(i) - lambda(k),1.d-2) * R(i,k) + enddo + enddo + + ! Gram-Schmidt + ! ------------ + + double precision :: c + do k=1,N_st + do iter2=1,iter + do l=1,N_st + c = u_dot_v(U(1,k,iter+1),U(1,l,iter2),sze) + do i=1,sze + U(i,k,iter+1) -= c * U(i,l,iter2) + enddo + enddo + enddo + do l=1,k-1 + c = u_dot_v(U(1,k,iter+1),U(1,l,iter+1),sze) + do i=1,sze + U(i,k,iter+1) -= c * U(i,l,iter+1) + enddo + enddo + call normalize( U(1,k,iter+1), sze ) + enddo + + !DEBUG : CHECK OVERLAP + !print *, '===' + !do k=1,iter+1 + ! do l=1,k + ! c = u_dot_v(U(1,1,k),U(1,1,l),sze) + ! print *, k,l, c + ! enddo + !enddo + !print *, '===' + !pause + !END DEBUG + + + enddo + + if (.not.converged) then + iter = davidson_sze_max-1 + endif + + ! Re-contract to u_in + ! ----------- + + do k=1,N_st + energies(k) = lambda(k) + do i=1,sze + u_in(i,k) = 0.d0 + do iter2=1,iter + do l=1,N_st + u_in(i,k) += U(i,l,iter2)*y(l,iter2,k,1) + enddo + enddo + enddo + enddo + + enddo + + write_buffer = '===== ' + do i=1,N_st + write_buffer = trim(write_buffer)//' ================ ================' + enddo + write(iunit,'(A)') trim(write_buffer) + write(iunit,'(A)') '' + call write_time(iunit) + + deallocate ( & + kl_pairs, & + W, & + U, & + R, & + h, & + y, & + lambda & + ) + abort_here = abort_all +end + +subroutine H_u_0_mrcc(v_0,u_0,H_jj,n,keys_tmp,Nint,istate) + use bitmasks + implicit none + BEGIN_DOC + ! Computes v_0 = H|u_0> + ! + ! n : number of determinants + ! + ! H_jj : array of + END_DOC + integer, intent(in) :: n,Nint,istate + double precision, intent(out) :: v_0(n) + double precision, intent(in) :: u_0(n) + double precision, intent(in) :: H_jj(n) + integer(bit_kind),intent(in) :: keys_tmp(Nint,2,n) + integer, allocatable :: idx(:) + double precision :: hij + double precision, allocatable :: vt(:) + integer :: i,j,k,l, jj,ii + integer :: i0, j0 + ASSERT (Nint > 0) + ASSERT (Nint == N_int) + ASSERT (n>0) + PROVIDE ref_bitmask_energy delta_ij + integer, parameter :: block_size = 157 + !$OMP PARALLEL DEFAULT(NONE) & + !$OMP PRIVATE(i,hij,j,k,idx,jj,ii,vt) & + !$OMP SHARED(n_det_ref,n_det_non_ref,idx_ref,idx_non_ref,n,H_jj,u_0,keys_tmp,Nint,v_0,istate,delta_ij) + !$OMP DO SCHEDULE(static) + do i=1,n + v_0(i) = H_jj(i) * u_0(i) + enddo + !$OMP END DO + allocate(idx(0:n), vt(n)) + Vt = 0.d0 + !$OMP DO SCHEDULE(guided) + do i=1,n + idx(0) = i + call filter_connected_davidson(keys_tmp,keys_tmp(1,1,i),Nint,i-1,idx) + do jj=1,idx(0) + j = idx(jj) + if ( (dabs(u_0(j)) > 1.d-7).or.((dabs(u_0(i)) > 1.d-7)) ) then + call i_H_j(keys_tmp(1,1,j),keys_tmp(1,1,i),Nint,hij) + hij = hij + vt (i) = vt (i) + hij*u_0(j) + vt (j) = vt (j) + hij*u_0(i) + endif + enddo + enddo + !$OMP END DO + + !$OMP DO SCHEDULE(guided) + do ii=1,n_det_ref + i = idx_ref(ii) + do jj = 1, n_det_non_ref + j = idx_non_ref(jj) + vt (i) = vt (i) + delta_ij(ii,jj,istate)*u_0(j) + vt (j) = vt (j) + delta_ij(ii,jj,istate)*u_0(i) + enddo + enddo + !$OMP END DO + !$OMP CRITICAL + do i=1,n + v_0(i) = v_0(i) + vt(i) + enddo + !$OMP END CRITICAL + deallocate(idx,vt) + !$OMP END PARALLEL +end + + diff --git a/plugins/MRCC_Utils_new/mrcc_amplitudes.irp.f b/plugins/MRCC_Utils_new/mrcc_amplitudes.irp.f new file mode 100644 index 00000000..8d1bce33 --- /dev/null +++ b/plugins/MRCC_Utils_new/mrcc_amplitudes.irp.f @@ -0,0 +1,85 @@ +subroutine get_excitation_operators_for_one_ref(det_ref,i_state,ndetnonref,N_connect_ref,excitation_operators,amplitudes_phase_less,index_connected) + use bitmasks + implicit none + integer(bit_kind), intent(in) :: det_ref(N_int,2) + integer, intent(in) :: i_state,ndetnonref + integer*2, intent(out) :: excitation_operators(5,ndetnonref) + integer, intent(out) :: index_connected(ndetnonref) + integer, intent(out) :: N_connect_ref + double precision, intent(out) :: amplitudes_phase_less(ndetnonref) + + integer :: i,j,k,l,degree,h1,p1,h2,p2,s1,s2 + integer :: exc(0:2,2,2) + double precision :: phase,hij + BEGIN_DOC +! This subroutine provides all the amplitudes and excitation operators +! that one needs to go from the reference to the non reference wave function +! you enter with det_ref that is a reference determinant +! +! N_connect_ref is the number of determinants belonging to psi_non_ref +! that are connected to det_ref. +! +! amplitudes_phase_less(i) = amplitude phase less t_{I->i} = * lambda_mrcc(i) * phase(I->i) +! +! excitation_operators(:,i) represents the holes and particles that +! link the ith connected determinant to det_ref +! if :: +! excitation_operators(5,i) = 2 :: double excitation alpha +! excitation_operators(5,i) = -2 :: double excitation beta +!!! excitation_operators(1,i) :: hole 1 +!!! excitation_operators(2,i) :: particle 1 +!!! excitation_operators(3,i) :: hole 2 +!!! excitation_operators(4,i) :: particle 2 +! else if :: +! excitation_operators(5,i) = 1 :: single excitation alpha +!!! excitation_operators(1,i) :: hole 1 +!!! excitation_operators(2,i) :: particle 1 +! else if :: +! excitation_operators(5,i) = -1 :: single excitation beta +!!! excitation_operators(3,i) :: hole 1 +!!! excitation_operators(4,i) :: particle 1 +! else if :: +!!! excitation_operators(5,i) = 0 :: double excitation alpha/beta +!!! excitation_operators(1,i) :: hole 1 alpha +!!! excitation_operators(2,i) :: particle 1 alpha +!!! excitation_operators(3,i) :: hole 2 beta +!!! excitation_operators(4,i) :: particle 2 beta + END_DOC + N_connect_ref = 0 + do i = 1, ndetnonref + call i_H_j_phase_out(det_ref,psi_non_ref(1,1,i),N_int,hij,phase,exc,degree) +! if(dabs(hij).le.mo_integrals_threshold)cycle + N_connect_ref +=1 + index_connected(N_connect_ref) = i + call decode_exc(exc,degree,h1,p1,h2,p2,s1,s2) + amplitudes_phase_less(N_connect_ref) = hij * lambda_mrcc(i_state,i) !*phase + + if(degree==2)then + excitation_operators(1,N_connect_ref) = h1 + excitation_operators(2,N_connect_ref) = p1 + excitation_operators(3,N_connect_ref) = h2 + excitation_operators(4,N_connect_ref) = p2 + if(s1==s2.and.s1==1)then ! double alpha + excitation_operators(5,N_connect_ref)= 2 + elseif(s1==s2.and.s1==2)then ! double beta + excitation_operators(5,N_connect_ref)=-2 + else + excitation_operators(5,N_connect_ref)= 0 ! double alpha/beta + endif + elseif(degree==1)then + if(s1==1)then ! mono alpha + excitation_operators(5,N_connect_ref)= 1 + excitation_operators(1,N_connect_ref) = h1 + excitation_operators(2,N_connect_ref) = p1 + else ! mono beta + excitation_operators(5,N_connect_ref)=-1 + excitation_operators(3,N_connect_ref) = h1 + excitation_operators(4,N_connect_ref) = p1 + endif + else + N_connect_ref-=1 + endif + + enddo + +end diff --git a/plugins/MRCC_Utils_new/mrcc_dress.irp.f b/plugins/MRCC_Utils_new/mrcc_dress.irp.f new file mode 100644 index 00000000..eb06b14a --- /dev/null +++ b/plugins/MRCC_Utils_new/mrcc_dress.irp.f @@ -0,0 +1,129 @@ +subroutine mrcc_dress(ndetref,ndetnonref,nstates,delta_ij_,delta_ii_) + use bitmasks + implicit none + integer, intent(in) :: ndetref,nstates,ndetnonref + double precision, intent(inout) :: delta_ii_(ndetref,nstates),delta_ij_(ndetref,ndetnonref,nstates) + integer :: i,j,k,l + integer :: i_state + integer :: N_connect_ref + integer*2,allocatable :: excitation_operators(:,:) + double precision, allocatable :: amplitudes_phase_less(:) + double precision, allocatable :: coef_test(:) + integer(bit_kind), allocatable :: key_test(:,:) + integer, allocatable :: index_connected(:) + integer :: i_hole,i_particle,ispin,i_ok,connected_to_ref,index_wf + integer, allocatable :: idx_vector(:), degree_vector(:) + double precision :: phase_ij + double precision :: dij,phase_la + double precision :: hij,phase + integer :: exc(0:2,2,2),degree + logical :: is_in_wavefunction + allocate(excitation_operators(5,N_det_non_ref)) + allocate(amplitudes_phase_less(N_det_non_ref)) + allocate(key_test(N_int,2)) + allocate(index_connected(N_det_non_ref)) + allocate(idx_vector(0:N_det_non_ref)) + allocate(degree_vector(N_det_non_ref)) + i_state = 1 + + do i = 1, N_det_ref + call get_excitation_operators_for_one_ref(psi_ref(1,1,i),i_state,N_det_non_ref,N_connect_ref,excitation_operators,amplitudes_phase_less,index_connected) + print*,'N_connect_ref =',N_connect_ref + do l = 1, N_det_non_ref + double precision :: t_il,phase_il,hil + call i_H_j_phase_out(psi_ref(1,1,i),psi_non_ref(1,1,l),N_int,hil,phase_il,exc,degree) + t_il = hil * lambda_mrcc(i_state,l) + ! loop on the non ref determinants + do j = 1, N_connect_ref + ! loop on the excitation operators linked to i + if(j==l)cycle + do k = 1, N_int + key_test(k,1) = psi_non_ref(k,1,l) + key_test(k,2) = psi_non_ref(k,2,l) + enddo + ! we apply the excitation operator T_I->j + call apply_excitation_operator(key_test,excitation_operators(1,j),i_ok) + if(i_ok.ne.1)cycle + ! we check if such determinant is already in the wave function + if(is_in_wavefunction(key_test,N_int,N_det))cycle + ! we get the phase for psi_non_ref(l) -> T_I->j |psi_non_ref(l)> + call get_excitation(psi_non_ref(1,1,l),key_test,exc,degree,phase_la,N_int) + ! we get the phase T_I->j + call i_H_j_phase_out(psi_ref(1,1,i),psi_non_ref(1,1,index_connected(j)),N_int,hij,phase_ij,exc,degree) + ! we compute the contribution to the coef of key_test + dij = t_il * hij * phase_la *phase_ij *lambda_mrcc(i_state,index_connected(j)) * 0.5d0 + ! we compute the interaction of such determinant with all the non_ref dets + call get_excitation_degree_vector(psi_non_ref,key_test,degree_vector,N_int,N_det_non_ref,idx_vector) + do k = 1, idx_vector(0) + call i_H_j_phase_out(key_test,psi_non_ref(1,1,idx_vector(k)),N_int,hij,phase,exc,degree) + delta_ij_(i,idx_vector(k),i_state) += hij * dij + enddo + enddo + if(dabs(psi_ref_coef(i,i_state)).le.5.d-5)cycle +! delta_ij_(i,l,i_state) = delta_ij_(i,l,i_state) * 0.5d0 + delta_ii_(i,i_state) -= delta_ij_(i,l,i_state) * psi_non_ref_coef(l,i_state) / psi_ref_coef(i,i_state) + enddo + enddo + + deallocate(excitation_operators) + deallocate(amplitudes_phase_less) + deallocate(key_test) + deallocate(idx_vector) + deallocate(degree_vector) + +end + + + +subroutine apply_excitation_operator(key_in,excitation_operator,i_ok) + use bitmasks + implicit none + integer(bit_kind), intent(inout) :: key_in + integer, intent (out) :: i_ok + integer*2 :: excitation_operator(5) + integer :: i_particle,i_hole,ispin + ! Do excitation + if(excitation_operator(5)==1)then ! mono alpha + i_hole = excitation_operator(1) + i_particle = excitation_operator(2) + ispin = 1 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + else if (excitation_operator(5)==-1)then ! mono beta + i_hole = excitation_operator(3) + i_particle = excitation_operator(4) + ispin = 2 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + else if (excitation_operator(5) == -2 )then ! double beta + i_hole = excitation_operator(1) + i_particle = excitation_operator(2) + ispin = 2 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + if(i_ok.ne.1)return + i_hole = excitation_operator(3) + i_particle = excitation_operator(4) + ispin = 2 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + + else if (excitation_operator(5) == 2 )then ! double alpha + i_hole = excitation_operator(1) + i_particle = excitation_operator(2) + ispin = 1 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + if(i_ok.ne.1)return + i_hole = excitation_operator(3) + i_particle = excitation_operator(4) + ispin = 1 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + + else if (excitation_operator(5) == 0 )then ! double alpha/alpha + i_hole = excitation_operator(1) + i_particle = excitation_operator(2) + ispin = 1 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + if(i_ok.ne.1)return + i_hole = excitation_operator(3) + i_particle = excitation_operator(4) + ispin = 2 + call do_mono_excitation(key_in,i_hole,i_particle,ispin,i_ok) + endif +end diff --git a/plugins/MRCC_Utils_new/mrcc_general.irp.f b/plugins/MRCC_Utils_new/mrcc_general.irp.f new file mode 100644 index 00000000..245fcb05 --- /dev/null +++ b/plugins/MRCC_Utils_new/mrcc_general.irp.f @@ -0,0 +1,67 @@ +subroutine run_mrcc + implicit none + call set_generators_bitmasks_as_holes_and_particles + call mrcc_iterations +end + +subroutine mrcc_iterations + implicit none + + integer :: i,j + + double precision :: E_new, E_old, delta_e + integer :: iteration + E_new = 0.d0 + delta_E = 1.d0 + iteration = 0 + do while (delta_E > 1.d-8) + iteration += 1 + print *, '===========================' + print *, 'MRCC Iteration', iteration + print *, '===========================' + print *, '' + E_old = sum(ci_energy_dressed) + call write_double(6,ci_energy_dressed(1),"MRCC energy") + call diagonalize_ci_dressed + E_new = sum(ci_energy_dressed) + delta_E = dabs(E_new - E_old) +! stop + if (iteration > 200) then + exit + endif + enddo + call write_double(6,ci_energy_dressed(1),"Final MRCC energy") + call ezfio_set_mrcc_cassd_energy(ci_energy_dressed(1)) + call save_wavefunction + +end + +subroutine set_generators_bitmasks_as_holes_and_particles + implicit none + integer :: i,k + do k = 1, N_generators_bitmask + do i = 1, N_int + ! Pure single part + generators_bitmask(i,1,1,k) = holes_operators(i,1) ! holes for pure single exc alpha + generators_bitmask(i,1,2,k) = particles_operators(i,1) ! particles for pure single exc alpha + generators_bitmask(i,2,1,k) = holes_operators(i,2) ! holes for pure single exc beta + generators_bitmask(i,2,2,k) = particles_operators(i,2) ! particles for pure single exc beta + + ! Double excitation + generators_bitmask(i,1,3,k) = holes_operators(i,1) ! holes for first single exc alpha + generators_bitmask(i,1,4,k) = particles_operators(i,1) ! particles for first single exc alpha + generators_bitmask(i,2,3,k) = holes_operators(i,2) ! holes for first single exc beta + generators_bitmask(i,2,4,k) = particles_operators(i,2) ! particles for first single exc beta + + generators_bitmask(i,1,5,k) = holes_operators(i,1) ! holes for second single exc alpha + generators_bitmask(i,1,6,k) = particles_operators(i,1) ! particles for second single exc alpha + generators_bitmask(i,2,5,k) = holes_operators(i,2) ! holes for second single exc beta + generators_bitmask(i,2,6,k) = particles_operators(i,2) ! particles for second single exc beta + + enddo + enddo + touch generators_bitmask + + + +end diff --git a/plugins/MRCC_Utils_new/mrcc_utils.irp.f b/plugins/MRCC_Utils_new/mrcc_utils.irp.f new file mode 100644 index 00000000..d97696e5 --- /dev/null +++ b/plugins/MRCC_Utils_new/mrcc_utils.irp.f @@ -0,0 +1,179 @@ + BEGIN_PROVIDER [ double precision, lambda_mrcc, (N_states,psi_det_size) ] +&BEGIN_PROVIDER [ double precision, lambda_pert, (N_states,psi_det_size) ] + implicit none + BEGIN_DOC + ! cm/ or perturbative 1/Delta_E(m) + END_DOC + integer :: i,k + double precision :: ihpsi(N_states), hii + integer :: i_ok + i_ok = 0 + + do i=1,N_det_non_ref + call i_h_psi(psi_non_ref(1,1,i), psi_ref, psi_ref_coef, N_int, N_det_ref,& + size(psi_ref_coef,1), n_states, ihpsi) + call i_h_j(psi_non_ref(1,1,i),psi_non_ref(1,1,i),N_int,hii) + do k=1,N_states + lambda_pert(k,i) = 1.d0 / (psi_ref_energy_diagonalized(k)-hii) + if (dabs(ihpsi(k)).le.1.d-3) then + i_ok +=1 + lambda_mrcc(k,i) = lambda_pert(k,i) + else + lambda_mrcc(k,i) = psi_non_ref_coef(i,k)/ihpsi(k) + endif + enddo + enddo + print*,'N_det_non_ref = ',N_det_non_ref + print*,'Number of Perturbatively treated determinants = ',i_ok + print*,'psi_coef_ref_ratio = ',psi_ref_coef(2,1)/psi_ref_coef(1,1) + +END_PROVIDER + + + + +!BEGIN_PROVIDER [ double precision, delta_ij_non_ref, (N_det_non_ref, N_det_non_ref,N_states) ] +!implicit none +!BEGIN_DOC +!! Dressing matrix in SD basis +!END_DOC +!delta_ij_non_ref = 0.d0 +!call H_apply_mrcc_simple(delta_ij_non_ref,N_det_non_ref) +!END_PROVIDER + + BEGIN_PROVIDER [ double precision, delta_ij, (N_det_ref,N_det_non_ref,N_states) ] +&BEGIN_PROVIDER [ double precision, delta_ii, (N_det_ref,N_states) ] + implicit none + BEGIN_DOC + ! Dressing matrix in N_det basis + END_DOC + integer :: i,j,m + delta_ij = 0.d0 + delta_ii = 0.d0 + call mrcc_dress(N_det_ref,N_det_non_ref,N_states,delta_ij,delta_ii) + write(33,*)delta_ij + write(34,*)delta_ii +END_PROVIDER + +BEGIN_PROVIDER [ double precision, h_matrix_dressed, (N_det,N_det,N_states) ] + implicit none + BEGIN_DOC + ! Dressed H with Delta_ij + END_DOC + integer :: i, j,istate,ii,jj + do istate = 1,N_states + do j=1,N_det + do i=1,N_det + h_matrix_dressed(i,j,istate) = h_matrix_all_dets(i,j) + enddo + enddo + do ii = 1, N_det_ref + i =idx_ref(ii) + h_matrix_dressed(i,i,istate) += delta_ii(ii,istate) + do jj = 1, N_det_non_ref + j =idx_non_ref(jj) + h_matrix_dressed(i,j,istate) += delta_ij(ii,jj,istate) + h_matrix_dressed(j,i,istate) += delta_ij(ii,jj,istate) + enddo + enddo + enddo +END_PROVIDER + + + BEGIN_PROVIDER [ double precision, CI_electronic_energy_dressed, (N_states_diag) ] +&BEGIN_PROVIDER [ double precision, CI_eigenvectors_dressed, (N_det,N_states_diag) ] +&BEGIN_PROVIDER [ double precision, CI_eigenvectors_s2_dressed, (N_states_diag) ] + implicit none + BEGIN_DOC + ! Eigenvectors/values of the CI matrix + END_DOC + integer :: i,j + + do j=1,N_states_diag + do i=1,N_det + CI_eigenvectors_dressed(i,j) = psi_coef(i,j) + enddo + enddo + + if (diag_algorithm == "Davidson") then + + integer :: istate + istate = 1 + call davidson_diag_mrcc(psi_det,CI_eigenvectors_dressed,CI_electronic_energy_dressed,& + size(CI_eigenvectors_dressed,1),N_det,N_states_diag,N_int,output_determinants,istate) + + else if (diag_algorithm == "Lapack") then + + double precision, allocatable :: eigenvectors(:,:), eigenvalues(:) + allocate (eigenvectors(size(H_matrix_dressed,1),N_det)) + allocate (eigenvalues(N_det)) + call lapack_diag(eigenvalues,eigenvectors, & + H_matrix_dressed,size(H_matrix_dressed,1),N_det) + CI_electronic_energy_dressed(:) = 0.d0 + do i=1,N_det + CI_eigenvectors_dressed(i,1) = eigenvectors(i,1) + enddo + integer :: i_state + double precision :: s2 + i_state = 0 + if (s2_eig) then + do j=1,N_det + call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2) + if(dabs(s2-expected_s2).le.0.3d0)then + i_state += 1 + do i=1,N_det + CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j) + enddo + CI_electronic_energy_dressed(i_state) = eigenvalues(j) + CI_eigenvectors_s2_dressed(i_state) = s2 + endif + if (i_state.ge.N_states_diag) then + exit + endif + enddo + else + do j=1,N_states_diag + call get_s2_u0(psi_det,eigenvectors(1,j),N_det,N_det,s2) + i_state += 1 + do i=1,N_det + CI_eigenvectors_dressed(i,i_state) = eigenvectors(i,j) + enddo + CI_electronic_energy_dressed(i_state) = eigenvalues(j) + CI_eigenvectors_s2_dressed(i_state) = s2 + enddo + endif + deallocate(eigenvectors,eigenvalues) + endif + +END_PROVIDER + +BEGIN_PROVIDER [ double precision, CI_energy_dressed, (N_states_diag) ] + implicit none + BEGIN_DOC + ! N_states lowest eigenvalues of the dressed CI matrix + END_DOC + + integer :: j + character*(8) :: st + call write_time(output_determinants) + do j=1,N_states_diag + CI_energy_dressed(j) = CI_electronic_energy_dressed(j) + nuclear_repulsion + enddo + +END_PROVIDER + +subroutine diagonalize_CI_dressed + implicit none + BEGIN_DOC +! Replace the coefficients of the CI states by the coefficients of the +! eigenstates of the CI matrix + END_DOC + integer :: i,j + do j=1,N_states_diag + do i=1,N_det + psi_coef(i,j) = CI_eigenvectors_dressed(i,j) + enddo + enddo + SOFT_TOUCH psi_coef + +end diff --git a/plugins/MRCC_Utils_new/tree_dependency.png b/plugins/MRCC_Utils_new/tree_dependency.png new file mode 100644 index 0000000000000000000000000000000000000000..500e5d43cef50c14d1fbe3da85a9b19213ad6866 GIT binary patch literal 108444 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

EoJ%5P_(&5vQM4 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 z zlae~Q+hi)myUq*=7=L&9#fulA4@()Ej=r#kx8Zx`1=n7$x7&OP?8d(TAPT6*SDjWQ z%t~p<4z!xJ`^o@Hrb2{CBOSVi%JTBDRxY}Vc#aqv8DUlUokR^Nr;gYH2OT~=qhG5} zULOTtusuCFsP^e6wxRC^`8p&LKp4G}Tra3W^Ali1&@UTvJ|<((A5GuB{ULqfSyfy6 zop2x~<-$4%tChw#EwglfW5*|fZnniZwcbvE-`d#uVk{ zt#x(P8aAwriM~{b7yZ=Ve5uG_t&zAn#%*3gdXMS@rI8U6gQEu~9mPIv|Q4*gq4&QAf0ke+ZmSgSoEsw>X<{EC*a^A2~XobjXAFK z$eTBAM0hooIUQ>S!9JGE5%Z$^q+^YvQbL2nV|SwG23oJ1;}t3m+;brXAYP(_thIu(P$e?91hm0H z6R_!p?9qyXEc|#CB^nj#g`sLb&QPS6k0|u8*u1$0+Ad?Jw6?B}lykU>%KN&y|6*es zamFvTj7=JwV@ykg#U*?Wh@CPNnjngu6YZ}%L%N|aPU1uCBBA|R5sJRTv6dSHB^Vzc z&sPqv0CrXgKz6vIf`Jy`WS1m~Mgvq7zS?wgfs>0K{1#y1DoO3;-{4MZB^bq>h>V2$ z`j5hD<|B2}mkeq`#b*X_fw#^84Qg&diQy~-!DzVFNvd{qJgO4rYse=U= zxJkrfD6OXd?D68Kco^LB!v0gtlW1+m1D@Aj!~Q3o~^qCMHJMJY0AG zL6dVnh0bv3YrPP@(Dx2?Qs}-3$pQ3zeO&9q|3mt7PZASDQ%Yg_r%=Ix?>Cqe@q!D6 z|K_3o80ShwAYB7S)Gb&}$Q2}CmzB#l!K;cnw9L{(Ua@(z&X^EI-}l>$o$sDoxro9Q zq%Z)Nh)^56OIpMU6&DvH!M^-CezpO3D(Ab=P$gs=^W{z*iXs1*-HKSKoZI-;!PCH+ zCjHw9=2ZPZUtP=vF)8q|n2Hiio>IN*UgW8uP;2Y^IX!(Q3q7VpVjlC}(TG1KRl;Qb e|NHYySI=k1l