mirror of
https://github.com/LCPQ/quantum_package
synced 2024-12-22 20:35:19 +01:00
merged
This commit is contained in:
commit
3c9c51ad12
@ -1 +1 @@
|
|||||||
Perturbation Selectors_full Generators_full Davidson MRPT_Utils
|
Perturbation Selectors_full Generators_full Davidson
|
||||||
|
@ -911,7 +911,7 @@ double precision function get_dij_index(II, i, s, Nint)
|
|||||||
get_dij_index = get_dij_index
|
get_dij_index = get_dij_index
|
||||||
else if(lambda_type == 3) then
|
else if(lambda_type == 3) then
|
||||||
call i_h_j(psi_ref(1,1,II), psi_non_ref(1,1,i), Nint, HIi)
|
call i_h_j(psi_ref(1,1,II), psi_non_ref(1,1,i), Nint, HIi)
|
||||||
call get_delta_e_dyall_fast(psi_ref(1,1,II),psi_non_ref(1,1,i),delta_e_final)
|
call get_delta_e_dyall(psi_ref(1,1,II),psi_non_ref(1,1,i),delta_e_final)
|
||||||
get_dij_index = HIi * rho_mrpt(i, s) / delta_e_final(s)
|
get_dij_index = HIi * rho_mrpt(i, s) / delta_e_final(s)
|
||||||
end if
|
end if
|
||||||
end function
|
end function
|
||||||
|
@ -29,7 +29,7 @@ subroutine routine_3
|
|||||||
enddo
|
enddo
|
||||||
enddo
|
enddo
|
||||||
if(save_heff_eigenvectors)then
|
if(save_heff_eigenvectors)then
|
||||||
call save_wavefunction_general(N_det_ref,N_states_diag,psi_ref,N_det_ref,CI_dressed_pt2_new_eigenvectors)
|
call save_wavefunction_general(N_det_ref,N_states,psi_ref,N_det_ref,CI_dressed_pt2_new_eigenvectors)
|
||||||
endif
|
endif
|
||||||
if(N_states.gt.1)then
|
if(N_states.gt.1)then
|
||||||
print*, 'Energy differences : E(i) - E(0)'
|
print*, 'Energy differences : E(i) - E(0)'
|
||||||
|
@ -7,7 +7,7 @@ default: True
|
|||||||
|
|
||||||
[save_heff_eigenvectors]
|
[save_heff_eigenvectors]
|
||||||
type: logical
|
type: logical
|
||||||
doc: If true, save the eigenvectors of the dressed matrix
|
doc: If true, save the eigenvectors of the dressed matrix at the end of the MRPT calculation
|
||||||
interface: ezfio,provider,ocaml
|
interface: ezfio,provider,ocaml
|
||||||
default: False
|
default: False
|
||||||
|
|
||||||
|
@ -1,42 +0,0 @@
|
|||||||
! DO NOT MODIFY BY HAND
|
|
||||||
! Created by $QP_ROOT/scripts/ezfio_interface/ei_handler.py
|
|
||||||
! from file /home/giner/qp_fork/quantum_package/src/MRPT_Utils/EZFIO.cfg
|
|
||||||
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [ logical, do_third_order_1h1p ]
|
|
||||||
implicit none
|
|
||||||
BEGIN_DOC
|
|
||||||
! If true, compute the third order contribution for the 1h1p
|
|
||||||
END_DOC
|
|
||||||
|
|
||||||
logical :: has
|
|
||||||
PROVIDE ezfio_filename
|
|
||||||
|
|
||||||
call ezfio_has_mrpt_utils_do_third_order_1h1p(has)
|
|
||||||
if (has) then
|
|
||||||
call ezfio_get_mrpt_utils_do_third_order_1h1p(do_third_order_1h1p)
|
|
||||||
else
|
|
||||||
print *, 'mrpt_utils/do_third_order_1h1p not found in EZFIO file'
|
|
||||||
stop 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
END_PROVIDER
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [ logical, save_heff_eigenvectors ]
|
|
||||||
implicit none
|
|
||||||
BEGIN_DOC
|
|
||||||
! If true, save the eigenvectors of the dressed matrix
|
|
||||||
END_DOC
|
|
||||||
|
|
||||||
logical :: has
|
|
||||||
PROVIDE ezfio_filename
|
|
||||||
|
|
||||||
call ezfio_has_mrpt_utils_save_heff_eigenvectors(has)
|
|
||||||
if (has) then
|
|
||||||
call ezfio_get_mrpt_utils_save_heff_eigenvectors(save_heff_eigenvectors)
|
|
||||||
else
|
|
||||||
print *, 'mrpt_utils/save_heff_eigenvectors not found in EZFIO file'
|
|
||||||
stop 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
END_PROVIDER
|
|
@ -152,7 +152,7 @@ subroutine give_particles_in_virt_space(det_1,n_particles_spin,n_particles,parti
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
subroutine get_delta_e_dyall(det_1,det_2,coef_array,hij,delta_e_final)
|
subroutine get_delta_e_dyall(det_1,det_2,delta_e_final)
|
||||||
BEGIN_DOC
|
BEGIN_DOC
|
||||||
! routine that returns the delta_e with the Moller Plesset and Dyall operators
|
! routine that returns the delta_e with the Moller Plesset and Dyall operators
|
||||||
!
|
!
|
||||||
@ -170,7 +170,6 @@ subroutine get_delta_e_dyall(det_1,det_2,coef_array,hij,delta_e_final)
|
|||||||
use bitmasks
|
use bitmasks
|
||||||
double precision, intent(out) :: delta_e_final(N_states)
|
double precision, intent(out) :: delta_e_final(N_states)
|
||||||
integer(bit_kind), intent(in) :: det_1(N_int,2),det_2(N_int,2)
|
integer(bit_kind), intent(in) :: det_1(N_int,2),det_2(N_int,2)
|
||||||
double precision, intent(in) :: coef_array(N_states),hij
|
|
||||||
integer :: i,j,k,l
|
integer :: i,j,k,l
|
||||||
integer :: i_state
|
integer :: i_state
|
||||||
|
|
||||||
@ -433,3 +432,4 @@ subroutine get_delta_e_dyall(det_1,det_2,coef_array,hij,delta_e_final)
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user