9
1
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-11-09 06:53:38 +01:00
qp2/plugins/local/tc_progs/tc_bi_ortho_prop.irp.f

53 lines
941 B
Fortran
Raw Normal View History

2023-07-02 21:49:25 +02:00
! ---
2023-02-07 17:07:49 +01:00
program tc_bi_ortho_prop
2023-07-02 21:49:25 +02:00
2023-02-07 17:07:49 +01:00
BEGIN_DOC
2023-07-02 21:49:25 +02:00
! TODO : Put the documentation of the program here
2023-02-07 17:07:49 +01:00
END_DOC
2023-07-02 21:49:25 +02:00
implicit none
2023-02-07 17:07:49 +01:00
print *, 'Hello world'
2023-07-02 21:49:25 +02:00
2023-02-07 17:07:49 +01:00
my_grid_becke = .True.
2023-07-02 21:49:25 +02:00
PROVIDE tc_grid1_a tc_grid1_r
my_n_pt_r_grid = tc_grid1_r
my_n_pt_a_grid = tc_grid1_a
touch my_grid_becke my_n_pt_r_grid my_n_pt_a_grid
2023-02-07 17:07:49 +01:00
read_wf = .True.
touch read_wf
2023-07-02 21:49:25 +02:00
!call routine_diag
call test
2023-02-07 17:07:49 +01:00
end
2023-07-02 21:49:25 +02:00
! ---
2023-02-07 17:07:49 +01:00
subroutine test
implicit none
integer :: i
print*,'TC Dipole components'
do i= 1, 3
print*,tc_bi_ortho_dipole(i,1)
enddo
2023-10-03 20:04:34 +02:00
integer, allocatable :: occ(:,:)
integer :: n_occ_ab(2)
allocate(occ(N_int*bit_kind_size,2))
call bitstring_to_list_ab(ref_bitmask, occ, n_occ_ab, N_int)
integer :: ispin,j,jorb
double precision :: accu
accu = 0.d0
do ispin=1, 2
do i = 1, n_occ_ab(ispin)
jorb = occ(i,ispin)
accu += mo_bi_orth_bipole_z(jorb,jorb)
enddo
enddo
print*,'accu = ',accu
2023-02-07 17:07:49 +01:00
end