10
0
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-12-22 12:23:43 +01:00

minor modifs for complicated cases in tc_scf

This commit is contained in:
eginer 2022-11-21 15:33:02 +01:00
parent fb87d3f012
commit 6ea05c8adc
2 changed files with 10 additions and 8 deletions

View File

@ -314,7 +314,7 @@ subroutine non_hrmt_bieig(n, A, leigvec, reigvec, n_real_eigv, eigval)
! write(*, '(1000(F16.10,X))') VL(:,i)
!enddo
thr_diag = 1d-07
thr_diag = 1d-06
thr_norm = 1d+10
call check_EIGVEC(n, n, A, WR, VL, VR, thr_diag, thr_norm, .false.)
@ -335,19 +335,21 @@ subroutine non_hrmt_bieig(n, A, leigvec, reigvec, n_real_eigv, eigval)
else
print*, 'Found an imaginary component to eigenvalue on i = ', i
print*, 'Re(i) + Im(i)', WR(i), WI(i)
stop
endif
enddo
if(n_good.ne.n)then
print*,'there are some imaginary eigenvalues '
thr_diag = 1d-03
n_good = n
endif
allocate(list_good(n_good), iorder(n_good))
n_good = 0
do i = 1, n
if( dabs(WI(i)).lt.thr ) then
n_good += 1
list_good(n_good) = i
eigval(n_good) = WR(i)
endif
n_good += 1
list_good(n_good) = i
eigval(n_good) = WR(i)
enddo
deallocate( WR, WI )

View File

@ -92,7 +92,7 @@ default: 1.e-10
type: Strictly_positive_int
doc: Maximum number of SCF iterations
interface: ezfio,provider,ocaml
default: 500
default: 100
[selection_tc]
type: integer