10
0
mirror of https://github.com/LCPQ/quantum_package synced 2024-07-22 18:57:31 +02:00

corrected mrcc for lage systems

This commit is contained in:
Yann GARNIRON 2016-05-27 14:48:27 +02:00
parent 39618c4300
commit 42dc213725
3 changed files with 7 additions and 4 deletions

View File

@ -31,7 +31,7 @@ OPENMP : 1 ; Append OpenMP flags
# -ftz : Flushes denormal results to zero
#
[OPT]
FCFLAGS : -C -xAVX -O2 -ip -ftz -g -traceback
FCFLAGS : -xAVX -O2 -ip -ftz -g
# Profiling flags
#################

View File

@ -843,7 +843,7 @@ subroutine filter_tq(i_generator,n_selected,det_buffer,Nint,tq,N_tq,miniList,N_m
integer(bit_kind), intent(in) :: det_buffer(Nint,2,n_selected)
integer :: i,j,k,m
logical :: is_in_wavefunction
integer :: degree(psi_det_size)
integer,allocatable :: degree(:)
integer,allocatable :: idx(:)
logical :: good
@ -856,6 +856,7 @@ subroutine filter_tq(i_generator,n_selected,det_buffer,Nint,tq,N_tq,miniList,N_m
integer(bit_kind),intent(in) :: miniList(Nint,2,N_det_generators)
integer,intent(in) :: N_miniList
allocate(degree(psi_det_size))
allocate(idx(0:psi_det_size))
N_tq = 0
@ -898,7 +899,7 @@ subroutine filter_tq_micro(i_generator,n_selected,det_buffer,Nint,tq,N_tq,microl
integer(bit_kind), intent(in) :: det_buffer(Nint,2,n_selected)
integer :: i,j,k,m
logical :: is_in_wavefunction
integer :: degree(psi_det_size)
integer,allocatable :: degree(:)
integer,allocatable :: idx(:)
logical :: good
@ -916,6 +917,7 @@ subroutine filter_tq_micro(i_generator,n_selected,det_buffer,Nint,tq,N_tq,microl
integer :: mobiles(2), smallerlist
allocate(degree(psi_det_size))
allocate(idx(0:psi_det_size))
N_tq = 0

View File

@ -144,13 +144,14 @@ subroutine ortho_lowdin(overlap,LDA,N,C,LDC,m)
integer, intent(in) :: LDA, ldc, n, m
double precision, intent(in) :: overlap(lda,n)
double precision, intent(inout) :: C(ldc,n)
double precision :: U(ldc,n)
double precision,allocatable :: U(:,:)
double precision :: Vt(lda,n)
double precision :: D(n)
double precision :: S_half(lda,n)
!DEC$ ATTRIBUTES ALIGN : 64 :: U, Vt, D
integer :: info, i, j, k
allocate(U(ldc,n))
call svd(overlap,lda,U,ldc,D,Vt,lda,m,n)
!$OMP PARALLEL DEFAULT(NONE) &