mirror of
https://github.com/LCPQ/quantum_package
synced 2025-01-03 18:16:12 +01:00
Added JM-MRPT2 program
This commit is contained in:
parent
ed18b3a103
commit
b82bbdab73
31
plugins/Full_CI/jmmrpt2.irp.f
Normal file
31
plugins/Full_CI/jmmrpt2.irp.f
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
program pouet
|
||||||
|
implicit none
|
||||||
|
integer :: i,k
|
||||||
|
|
||||||
|
|
||||||
|
double precision, allocatable :: pt2(:), norm_pert(:), H_pert_diag(:)
|
||||||
|
integer :: N_st, degree
|
||||||
|
N_st = N_states
|
||||||
|
allocate (pt2(N_st), norm_pert(N_st),H_pert_diag(N_st))
|
||||||
|
character*(64) :: perturbation
|
||||||
|
double precision :: i_H_psi_array(N_states),diag_H_mat_elem,h,i_O1_psi_array(N_states)
|
||||||
|
double precision :: E_CI_before(N_states)
|
||||||
|
integer :: n_det_before
|
||||||
|
threshold_generators = threshold_generators_pt2
|
||||||
|
threshold_selectors = threshold_selectors_pt2
|
||||||
|
SOFT_TOUCH threshold_generators threshold_selectors
|
||||||
|
call diagonalize_CI
|
||||||
|
call H_apply_FCI_PT2_new(pt2, norm_pert, H_pert_diag, N_st)
|
||||||
|
|
||||||
|
print *, 'Final step'
|
||||||
|
print *, 'N_det = ', N_det
|
||||||
|
print *, 'N_states = ', N_states
|
||||||
|
print *, 'PT2 = ', pt2
|
||||||
|
print *, 'E = ', CI_energy(1:N_states)
|
||||||
|
print *, 'E+PT2 = ', CI_energy(1:N_states)+pt2(1:N_states)
|
||||||
|
print *, '-----'
|
||||||
|
call ezfio_set_full_ci_energy_pt2(CI_energy(1)+pt2(1))
|
||||||
|
call save_wavefunction
|
||||||
|
deallocate(pt2,norm_pert)
|
||||||
|
end
|
||||||
|
|
Loading…
Reference in New Issue
Block a user