mirror of
https://github.com/LCPQ/quantum_package
synced 2024-06-26 07:02:14 +02:00
commit
4a552cc8fe
|
@ -112,7 +112,7 @@ double precision function get_phase_bi(phasemask, s1, s2, h1, p1, h2, p2)
|
||||||
|
|
||||||
if(s1 == s2 .and. max(h1, p1) > min(h2, p2)) np = np + 1_1
|
if(s1 == s2 .and. max(h1, p1) > min(h2, p2)) np = np + 1_1
|
||||||
get_phase_bi = res(iand(np,1_1))
|
get_phase_bi = res(iand(np,1_1))
|
||||||
end subroutine
|
end function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -112,7 +112,7 @@ double precision function get_phase_bi(phasemask, s1, s2, h1, p1, h2, p2)
|
||||||
|
|
||||||
if(s1 == s2 .and. max(h1, p1) > min(h2, p2)) np = np + 1_1
|
if(s1 == s2 .and. max(h1, p1) > min(h2, p2)) np = np + 1_1
|
||||||
get_phase_bi = res(iand(np,1_1))
|
get_phase_bi = res(iand(np,1_1))
|
||||||
end subroutine
|
end function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -89,7 +89,8 @@ END_PROVIDER
|
||||||
double precision :: phase
|
double precision :: phase
|
||||||
logical :: ok
|
logical :: ok
|
||||||
integer, external :: searchDet
|
integer, external :: searchDet
|
||||||
|
|
||||||
|
PROVIDE psi_non_ref_sorted_idx psi_ref_coef
|
||||||
|
|
||||||
!$OMP PARALLEL default(none) shared(psi_non_ref, hh_exists, pp_exists, N_int,&
|
!$OMP PARALLEL default(none) shared(psi_non_ref, hh_exists, pp_exists, N_int,&
|
||||||
!$OMP active_excitation_to_determinants_val, active_excitation_to_determinants_idx)&
|
!$OMP active_excitation_to_determinants_val, active_excitation_to_determinants_idx)&
|
||||||
|
@ -126,6 +127,7 @@ END_PROVIDER
|
||||||
wk += 1
|
wk += 1
|
||||||
do s=1,N_states
|
do s=1,N_states
|
||||||
active_excitation_to_determinants_val(s,wk, ppp) = psi_ref_coef(lref(i), s)
|
active_excitation_to_determinants_val(s,wk, ppp) = psi_ref_coef(lref(i), s)
|
||||||
|
|
||||||
enddo
|
enddo
|
||||||
active_excitation_to_determinants_idx(wk, ppp) = i
|
active_excitation_to_determinants_idx(wk, ppp) = i
|
||||||
else if(lref(i) < 0) then
|
else if(lref(i) < 0) then
|
||||||
|
@ -158,7 +160,7 @@ END_PROVIDER
|
||||||
double precision, allocatable :: t(:), A_val_mwen(:,:), As2_val_mwen(:,:)
|
double precision, allocatable :: t(:), A_val_mwen(:,:), As2_val_mwen(:,:)
|
||||||
integer, allocatable :: A_ind_mwen(:)
|
integer, allocatable :: A_ind_mwen(:)
|
||||||
double precision :: sij
|
double precision :: sij
|
||||||
PROVIDE psi_non_ref
|
PROVIDE psi_non_ref active_excitation_to_determinants_val
|
||||||
|
|
||||||
mrcc_AtA_ind(:) = 0
|
mrcc_AtA_ind(:) = 0
|
||||||
mrcc_AtA_val(:,:) = 0.d0
|
mrcc_AtA_val(:,:) = 0.d0
|
||||||
|
@ -166,7 +168,6 @@ END_PROVIDER
|
||||||
mrcc_N_col(:) = 0
|
mrcc_N_col(:) = 0
|
||||||
AtA_size = 0
|
AtA_size = 0
|
||||||
|
|
||||||
|
|
||||||
!$OMP PARALLEL default(none) shared(k, active_excitation_to_determinants_idx,&
|
!$OMP PARALLEL default(none) shared(k, active_excitation_to_determinants_idx,&
|
||||||
!$OMP active_excitation_to_determinants_val, hh_nex) &
|
!$OMP active_excitation_to_determinants_val, hh_nex) &
|
||||||
!$OMP private(at_row, a_col, t, i, r1, r2, wk, A_ind_mwen, A_val_mwen,&
|
!$OMP private(at_row, a_col, t, i, r1, r2, wk, A_ind_mwen, A_val_mwen,&
|
||||||
|
|
|
@ -691,7 +691,7 @@ subroutine getHP(a,h,p,Nint)
|
||||||
end do lh
|
end do lh
|
||||||
h = deg
|
h = deg
|
||||||
!isInCassd = .true.
|
!isInCassd = .true.
|
||||||
end function
|
end subroutine
|
||||||
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [ double precision, delta_mrcepa0_ij, (N_det_ref,N_det_non_ref,N_states) ]
|
BEGIN_PROVIDER [ double precision, delta_mrcepa0_ij, (N_det_ref,N_det_non_ref,N_states) ]
|
||||||
|
@ -716,6 +716,9 @@ end function
|
||||||
integer :: II, blok
|
integer :: II, blok
|
||||||
integer*8, save :: notf = 0
|
integer*8, save :: notf = 0
|
||||||
|
|
||||||
|
|
||||||
|
PROVIDE psi_ref_coef psi_non_ref_coef
|
||||||
|
|
||||||
call wall_time(wall)
|
call wall_time(wall)
|
||||||
allocate(idx_sorted_bit(N_det), sortRef(N_int,2,N_det_ref))
|
allocate(idx_sorted_bit(N_det), sortRef(N_int,2,N_det_ref))
|
||||||
|
|
||||||
|
@ -839,8 +842,7 @@ END_PROVIDER
|
||||||
delta_sub_ij(:,:,:) = 0d0
|
delta_sub_ij(:,:,:) = 0d0
|
||||||
delta_sub_ii(:,:) = 0d0
|
delta_sub_ii(:,:) = 0d0
|
||||||
|
|
||||||
provide mo_bielec_integrals_in_map
|
provide mo_bielec_integrals_in_map N_det_non_ref psi_ref_coef psi_non_ref_coef
|
||||||
|
|
||||||
|
|
||||||
!$OMP PARALLEL DO default(none) schedule(dynamic,10) shared(delta_sub_ij, delta_sub_ii) &
|
!$OMP PARALLEL DO default(none) schedule(dynamic,10) shared(delta_sub_ij, delta_sub_ii) &
|
||||||
!$OMP private(i, J, k, degree, degree2, l, deg, ni) &
|
!$OMP private(i, J, k, degree, degree2, l, deg, ni) &
|
||||||
|
|
|
@ -476,7 +476,7 @@ def ninja_irpf90_make_build(path_module, l_needed_molule, d_irp):
|
||||||
# ~#~#~#~#~#~ #
|
# ~#~#~#~#~#~ #
|
||||||
|
|
||||||
l_creation = [join(path_module.abs, i)
|
l_creation = [join(path_module.abs, i)
|
||||||
for i in ["irpf90.make", "irpf90_entities", "tags",
|
for i in ["irpf90_entities", "tags",
|
||||||
"IRPF90_temp/build.ninja"]]
|
"IRPF90_temp/build.ninja"]]
|
||||||
str_creation = " ".join(l_creation)
|
str_creation = " ".join(l_creation)
|
||||||
|
|
||||||
|
|
|
@ -156,7 +156,7 @@ BEGIN_TEMPLATE
|
||||||
iorder(i) = i0
|
iorder(i) = i0
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
end subroutine heap_$Xsort$big
|
end subroutine heap_$Xsort_big
|
||||||
|
|
||||||
subroutine $Xsort(x,iorder,isize)
|
subroutine $Xsort(x,iorder,isize)
|
||||||
implicit none
|
implicit none
|
||||||
|
@ -248,7 +248,7 @@ BEGIN_TEMPLATE
|
||||||
iorder(j+1_8) = i0
|
iorder(j+1_8) = i0
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
end subroutine insertion_$Xsort
|
end subroutine insertion_$Xsort_big
|
||||||
|
|
||||||
subroutine $Xset_order_big(x,iorder,isize)
|
subroutine $Xset_order_big(x,iorder,isize)
|
||||||
implicit none
|
implicit none
|
||||||
|
|
Loading…
Reference in New Issue
Block a user