mirror of
https://github.com/QuantumPackage/qp2.git
synced 2025-04-25 17:54:44 +02:00
Optim in 2RDM
This commit is contained in:
parent
2655f99622
commit
1d5f2f3735
@ -632,11 +632,11 @@ subroutine update_keys_values_n_states_local(keys,values,nkeys,dim1,n_st,big_arr
|
||||
integer :: i,h1,h2,p1,p2
|
||||
|
||||
do i = 1, nkeys
|
||||
do istate = 1, N_st
|
||||
h1 = keys(1,i)
|
||||
h2 = keys(2,i)
|
||||
p1 = keys(3,i)
|
||||
p2 = keys(4,i)
|
||||
do istate = 1, N_st
|
||||
big_array_local(istate,h1,h2,p1,p2) = big_array_local(istate,h1,h2,p1,p2) + values(istate,i)
|
||||
enddo
|
||||
enddo
|
||||
|
@ -592,6 +592,15 @@ subroutine orb_range_off_diag_single_to_all_states_aa_dm_buffer(det_1,det_2,c_1,
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = h2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = h2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
@ -609,15 +618,6 @@ subroutine orb_range_off_diag_single_to_all_states_aa_dm_buffer(det_1,det_2,c_1,
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = h2
|
||||
keys(4,nkeys) = p1
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = h2
|
||||
enddo
|
||||
else
|
||||
return
|
||||
@ -706,6 +706,15 @@ subroutine orb_range_off_diag_single_to_all_states_bb_dm_buffer(det_1,det_2,c_1,
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = h2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = h2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
@ -723,15 +732,6 @@ subroutine orb_range_off_diag_single_to_all_states_bb_dm_buffer(det_1,det_2,c_1,
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = h2
|
||||
keys(4,nkeys) = p1
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = h2
|
||||
enddo
|
||||
endif
|
||||
! endif
|
||||
@ -814,6 +814,15 @@ subroutine orb_range_off_diag_double_to_all_states_aa_dm_buffer(det_1,det_2,c_1,
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = p2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = p2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
@ -831,15 +840,6 @@ subroutine orb_range_off_diag_double_to_all_states_aa_dm_buffer(det_1,det_2,c_1,
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p2
|
||||
keys(4,nkeys) = p1
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = p2
|
||||
! endif
|
||||
end
|
||||
|
||||
@ -917,6 +917,15 @@ subroutine orb_range_off_diag_double_to_all_states_bb_dm_buffer(det_1,det_2,c_1,
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = p2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = p2
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
@ -934,15 +943,6 @@ subroutine orb_range_off_diag_double_to_all_states_bb_dm_buffer(det_1,det_2,c_1,
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p2
|
||||
keys(4,nkeys) = p1
|
||||
|
||||
nkeys += 1
|
||||
do istate = 1, N_st
|
||||
values(istate,nkeys) = - c_1(istate) * phase
|
||||
enddo
|
||||
keys(1,nkeys) = h2
|
||||
keys(2,nkeys) = h1
|
||||
keys(3,nkeys) = p1
|
||||
keys(4,nkeys) = p2
|
||||
! endif
|
||||
end
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user