mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-08-24 21:21:47 +02:00
Added MP2 program
This commit is contained in:
parent
43b83ee8e9
commit
4fe07d97b0
15
src/mp2/H_apply.irp.f
Normal file
15
src/mp2/H_apply.irp.f
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
use bitmasks
|
||||||
|
BEGIN_SHELL [ /usr/bin/env python3 ]
|
||||||
|
from generate_h_apply import *
|
||||||
|
from perturbation import perturbations
|
||||||
|
|
||||||
|
s = H_apply("mp2")
|
||||||
|
s.set_perturbation("Moller_plesset")
|
||||||
|
#s.set_perturbation("epstein_nesbet")
|
||||||
|
print(s)
|
||||||
|
|
||||||
|
s = H_apply("mp2_selection")
|
||||||
|
s.set_selection_pt2("Moller_Plesset")
|
||||||
|
print(s)
|
||||||
|
END_SHELL
|
||||||
|
|
6
src/mp2/NEED
Normal file
6
src/mp2/NEED
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
generators_full
|
||||||
|
selectors_full
|
||||||
|
determinants
|
||||||
|
davidson
|
||||||
|
davidson_undressed
|
||||||
|
perturbation
|
4
src/mp2/README.rst
Normal file
4
src/mp2/README.rst
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
===
|
||||||
|
mp2
|
||||||
|
===
|
||||||
|
|
21
src/mp2/mp2.irp.f
Normal file
21
src/mp2/mp2.irp.f
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
program mp2
|
||||||
|
call run
|
||||||
|
end
|
||||||
|
|
||||||
|
subroutine run
|
||||||
|
implicit none
|
||||||
|
double precision, allocatable :: pt2(:), norm_pert(:)
|
||||||
|
double precision :: H_pert_diag, E_old
|
||||||
|
integer :: N_st, iter
|
||||||
|
PROVIDE Fock_matrix_diag_mo H_apply_buffer_allocated
|
||||||
|
N_st = N_states
|
||||||
|
allocate (pt2(N_st), norm_pert(N_st))
|
||||||
|
E_old = HF_energy
|
||||||
|
call H_apply_mp2(pt2, norm_pert, H_pert_diag, N_st)
|
||||||
|
print *, 'N_det = ', N_det
|
||||||
|
print *, 'N_states = ', N_states
|
||||||
|
print *, 'MP2 = ', pt2
|
||||||
|
print *, 'E = ', E_old
|
||||||
|
print *, 'E+MP2 = ', E_old+pt2
|
||||||
|
deallocate(pt2,norm_pert)
|
||||||
|
end
|
Loading…
Reference in New Issue
Block a user