-
Notifications
You must be signed in to change notification settings - Fork 0
/
sd_v2.f90
37 lines (37 loc) · 992 Bytes
/
sd_v2.f90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
!
! This is a more modern version of the input for superdyson/tr_1rdm
! In addition to the namelist-based, extensible input, it also
! offers support for greater choice of operators in the matrix
! elements.
!
! The input is still handled in sd_core.f90; depending on the
! input data, we'll chose either superdyson or tr_1rdm branch.
!
program sd_v2
use sd_core
use superdyson
use tr_1rdm
!
external versions
!
write (out,"('Version: ',a/)") __BUILD_ID__
call versions
!
call TimerStart('start')
call read_input_new
call initialize_core_data
!
select case (task)
case default
write (out,"(' Task ',a,' is not recognized')") trim(task)
stop 'sd_v2 - bad task'
case ('braket','BRAKET')
call call_superdyson
case ('1-rdm','1-RDM')
call call_tr_1rdm(spin_resolved=.false.)
case ('1-srdm','1-SRDM')
call call_tr_1rdm(spin_resolved=.true.)
end select
call TimerStop('start')
call TimerReport
end program sd_v2