9
1
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-07-25 03:47:24 +02:00

print angles for tc-scf

This commit is contained in:
AbdAmmar 2023-12-28 17:11:22 +01:00
parent e3beae681b
commit bc1957c45a
3 changed files with 24 additions and 13 deletions

View File

@ -106,11 +106,11 @@ BEGIN_PROVIDER [double precision, int2_grad1_u12_ao, (ao_num, ao_num, n_points_f
elseif(j1b_type .ge. 100) then elseif(j1b_type .ge. 100) then
! PROVIDE int2_grad1_u12_ao_num PROVIDE int2_grad1_u12_ao_num
! int2_grad1_u12_ao = int2_grad1_u12_ao_num int2_grad1_u12_ao = int2_grad1_u12_ao_num
PROVIDE int2_grad1_u12_ao_num_1shot !PROVIDE int2_grad1_u12_ao_num_1shot
int2_grad1_u12_ao = int2_grad1_u12_ao_num_1shot !int2_grad1_u12_ao = int2_grad1_u12_ao_num_1shot
else else
@ -225,11 +225,11 @@ BEGIN_PROVIDER [double precision, int2_grad1_u12_square_ao, (ao_num, ao_num, n_p
elseif(j1b_type .ge. 100) then elseif(j1b_type .ge. 100) then
! PROVIDE int2_grad1_u12_square_ao_num PROVIDE int2_grad1_u12_square_ao_num
! int2_grad1_u12_square_ao = int2_grad1_u12_square_ao_num int2_grad1_u12_square_ao = int2_grad1_u12_square_ao_num
PROVIDE int2_grad1_u12_square_ao_num_1shot !PROVIDE int2_grad1_u12_square_ao_num_1shot
int2_grad1_u12_square_ao = int2_grad1_u12_square_ao_num_1shot !int2_grad1_u12_square_ao = int2_grad1_u12_square_ao_num_1shot
else else

View File

@ -306,11 +306,11 @@ subroutine non_hrmt_bieig(n, A, thr_d, thr_nd, leigvec, reigvec, n_real_eigv, ei
print *, ' ' !print *, ' '
print *, ' eigenvalues' !print *, ' eigenvalues'
i = 1 i = 1
do while(i .le. n) do while(i .le. n)
write(*, '(I3,X,1000(F16.10,X))')i, WR(i), WI(i) !write(*, '(I3,X,1000(F16.10,X))')i, WR(i), WI(i)
if(.false.)then if(.false.)then
if(WI(i).ne.0.d0)then if(WI(i).ne.0.d0)then
print*,'*****************' print*,'*****************'
@ -401,7 +401,7 @@ subroutine non_hrmt_bieig(n, A, thr_d, thr_nd, leigvec, reigvec, n_real_eigv, ei
!thr = 100d0 !thr = 100d0
thr = Im_thresh_tcscf thr = Im_thresh_tcscf
do i = 1, n do i = 1, n
print*, 'Re(i) + Im(i)', WR(i), WI(i) !print*, 'Re(i) + Im(i)', WR(i), WI(i)
if(dabs(WI(i)) .lt. thr) then if(dabs(WI(i)) .lt. thr) then
n_good += 1 n_good += 1
else else

View File

@ -7,6 +7,8 @@ program tc_scf
END_DOC END_DOC
implicit none implicit none
integer :: i
logical :: good_angles
write(json_unit,json_array_open_fmt) 'tc-scf' write(json_unit,json_array_open_fmt) 'tc-scf'
@ -69,7 +71,16 @@ program tc_scf
stop stop
endif endif
call minimize_tc_orb_angles() PROVIDE Fock_matrix_tc_diag_mo_tot
print*, ' Eigenvalues:'
do i = 1, mo_num
print*, i, Fock_matrix_tc_diag_mo_tot(i)
enddo
! TODO
! rotate angles in separate code only if necessary
!call minimize_tc_orb_angles()
call print_energy_and_mos(good_angles)
endif endif