From 0821e76995de7764e076c0013976d9b7023e010b Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Mon, 11 Apr 2016 10:39:27 +0200 Subject: [PATCH] Extract CAS --- plugins/FOBOCI/H_apply_dressed_autonom.irp.f | 8 +++++--- plugins/Psiref_CAS/psi_ref.irp.f | 14 -------------- plugins/Psiref_Utils/NEEDED_CHILDREN_MODULES | 1 + plugins/Psiref_Utils/psi_ref_utils.irp.f | 16 ++++++++++++++++ 4 files changed, 22 insertions(+), 17 deletions(-) diff --git a/plugins/FOBOCI/H_apply_dressed_autonom.irp.f b/plugins/FOBOCI/H_apply_dressed_autonom.irp.f index 657ea22e..69929afd 100644 --- a/plugins/FOBOCI/H_apply_dressed_autonom.irp.f +++ b/plugins/FOBOCI/H_apply_dressed_autonom.irp.f @@ -273,7 +273,8 @@ subroutine H_apply_dressed_pert_monoexc(key_in, hole_1,particl_1,i_generator,ipr integer,parameter :: size_max = 3072 integer, intent(in) :: Ndet_generators - double precision, intent(in) :: delta_ij_generators_(Ndet_generators,Ndet_generators),E_ref + double precision, intent(in) :: E_ref + double precision, intent(inout) :: delta_ij_generators_(Ndet_generators,Ndet_generators) integer(bit_kind), intent(in) :: psi_det_generators_input(N_int,2,Ndet_generators) integer ,intent(in) :: i_generator @@ -437,8 +438,9 @@ subroutine H_apply_dressed_pert(delta_ij_generators_, Ndet_generators,psi_det_g integer, intent(in) :: Ndet_generators - integer(bit_kind), intent(in) :: psi_det_generators_input(N_int,2,Ndet_generators),E_ref - double precision, intent(in) :: delta_ij_generators_(Ndet_generators,Ndet_generators) + double precision, intent(in) :: E_ref + double precision, intent(inout) :: delta_ij_generators_(Ndet_generators,Ndet_generators) + integer(bit_kind), intent(in) :: psi_det_generators_input(N_int,2,Ndet_generators) integer :: i_generator, nmax diff --git a/plugins/Psiref_CAS/psi_ref.irp.f b/plugins/Psiref_CAS/psi_ref.irp.f index c7b9867f..6beca8f2 100644 --- a/plugins/Psiref_CAS/psi_ref.irp.f +++ b/plugins/Psiref_CAS/psi_ref.irp.f @@ -26,20 +26,6 @@ use bitmasks END_PROVIDER -BEGIN_PROVIDER [ double precision, psi_ref_coef_normalized, (psi_det_size,n_states) ] - implicit none - BEGIN_DOC -! Normalized coefficients of the reference - END_DOC - integer :: i,j,k - do k=1,N_states - do j=1,N_det_ref - psi_ref_coef_normalized(j,k) = psi_ref_coef(j,k) - enddo - call normalize(psi_ref_coef_normalized(1,k), N_det_ref) - enddo - -END_PROVIDER BEGIN_PROVIDER [ integer(bit_kind), psi_ref_restart, (N_int,2,psi_det_size) ] &BEGIN_PROVIDER [ double precision, psi_ref_coef_restart, (psi_det_size,n_states) ] diff --git a/plugins/Psiref_Utils/NEEDED_CHILDREN_MODULES b/plugins/Psiref_Utils/NEEDED_CHILDREN_MODULES index e69de29b..065099eb 100644 --- a/plugins/Psiref_Utils/NEEDED_CHILDREN_MODULES +++ b/plugins/Psiref_Utils/NEEDED_CHILDREN_MODULES @@ -0,0 +1 @@ +Bitmask Determinants diff --git a/plugins/Psiref_Utils/psi_ref_utils.irp.f b/plugins/Psiref_Utils/psi_ref_utils.irp.f index 5115ba23..41db2f10 100644 --- a/plugins/Psiref_Utils/psi_ref_utils.irp.f +++ b/plugins/Psiref_Utils/psi_ref_utils.irp.f @@ -27,6 +27,22 @@ BEGIN_PROVIDER [ double precision, psi_ref_coef_transp, (n_states,psi_det_size) enddo END_PROVIDER +BEGIN_PROVIDER [ double precision, psi_ref_coef_normalized, (psi_det_size,n_states) ] + implicit none + BEGIN_DOC +! Normalized coefficients of the reference + END_DOC + integer :: i,j,k + do k=1,N_states + do j=1,N_det_ref + psi_ref_coef_normalized(j,k) = psi_ref_coef(j,k) + enddo + call normalize(psi_ref_coef_normalized(1,k), N_det_ref) + enddo + +END_PROVIDER + + BEGIN_PROVIDER [ double precision, psi_non_ref_coef_transp, (n_states,psi_det_size) ] implicit none BEGIN_DOC