From f735a6f7c4d1fcb26ee61f306c83bf94d354dd6c Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 19 Jan 2015 10:41:58 +0100 Subject: [PATCH] Added interface for NECI --- src/FCIdump/ASSUMPTIONS.rst | 0 src/FCIdump/Makefile | 8 ++++++ src/FCIdump/NEEDED_MODULES | 1 + src/FCIdump/README.rst | 6 +++++ src/FCIdump/fcidump.irp.f | 50 +++++++++++++++++++++++++++++++++++++ src/NEEDED_MODULES | 2 +- 6 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 src/FCIdump/ASSUMPTIONS.rst create mode 100644 src/FCIdump/Makefile create mode 100644 src/FCIdump/NEEDED_MODULES create mode 100644 src/FCIdump/README.rst create mode 100644 src/FCIdump/fcidump.irp.f diff --git a/src/FCIdump/ASSUMPTIONS.rst b/src/FCIdump/ASSUMPTIONS.rst new file mode 100644 index 00000000..e69de29b diff --git a/src/FCIdump/Makefile b/src/FCIdump/Makefile new file mode 100644 index 00000000..b2ea1de1 --- /dev/null +++ b/src/FCIdump/Makefile @@ -0,0 +1,8 @@ +default: all + +# Define here all new external source files and objects.Don't forget to prefix the +# object files with IRPF90_temp/ +SRC= +OBJ= + +include $(QPACKAGE_ROOT)/src/Makefile.common diff --git a/src/FCIdump/NEEDED_MODULES b/src/FCIdump/NEEDED_MODULES new file mode 100644 index 00000000..26097b8b --- /dev/null +++ b/src/FCIdump/NEEDED_MODULES @@ -0,0 +1 @@ +AOs BiInts Bitmask Dets Electrons Ezfio_files MonoInts MOs Nuclei Output Utils diff --git a/src/FCIdump/README.rst b/src/FCIdump/README.rst new file mode 100644 index 00000000..170e623f --- /dev/null +++ b/src/FCIdump/README.rst @@ -0,0 +1,6 @@ +============== +FCIdump Module +============== + +Interface for the [NECI](https://github.com/ghb24/NECI_STABLE) Full-CI QMC program. + diff --git a/src/FCIdump/fcidump.irp.f b/src/FCIdump/fcidump.irp.f new file mode 100644 index 00000000..f93c1128 --- /dev/null +++ b/src/FCIdump/fcidump.irp.f @@ -0,0 +1,50 @@ +program fcidump + implicit none + + integer :: i,j,k,l + integer :: ii(8), jj(8), kk(8),ll(8) + integer*8 :: m + character*(2), allocatable :: A(:) + + print *, '&FCI NORB=', mo_tot_num, ', NELEC=', elec_num, & + ', MS2=', (elec_alpha_num-elec_beta_num), ',' + allocate (A(mo_tot_num)) + A = '1,' + print *, 'ORBSYM=', (A(i), i=1,mo_tot_num) + print *,'ISYM=0,' + print *,'/' + deallocate(A) + + integer*8 :: i8, k1 + integer(key_kind), allocatable :: keys(:) + double precision, allocatable :: values(:) + integer(cache_map_size_kind) :: n_elements, n_elements_max + PROVIDE mo_bielec_integrals_in_map + + double precision :: get_mo_bielec_integral, integral + + do l=1,mo_tot_num + do k=1,mo_tot_num + do j=l,mo_tot_num + do i=k,mo_tot_num + if (i>=j) then + integral = get_mo_bielec_integral(i,j,k,l,mo_integrals_map) + if (dabs(integral) > mo_integrals_threshold) then + print *, integral, i,k,j,l + endif + end if + enddo + enddo + enddo + enddo + + do j=1,mo_tot_num + do i=j,mo_tot_num + integral = mo_mono_elec_integral(i,j) + if (dabs(integral) > mo_integrals_threshold) then + print *, integral, i,j,0,0 + endif + enddo + enddo + print *, 0.d0, 0, 0, 0, 0 +end diff --git a/src/NEEDED_MODULES b/src/NEEDED_MODULES index 36f2dc69..2eb60f03 100644 --- a/src/NEEDED_MODULES +++ b/src/NEEDED_MODULES @@ -1 +1 @@ -AOs BiInts Bitmask Dets Electrons Ezfio_files Full_CI Generators_full Hartree_Fock MOGuess MonoInts MOs Nuclei Output Selectors_full Utils Molden +AOs BiInts Bitmask Dets Electrons Ezfio_files Full_CI Generators_full Hartree_Fock MOGuess MonoInts MOs Nuclei Output Selectors_full Utils Molden FCIdump