-
Notifications
You must be signed in to change notification settings - Fork 12
/
code.f90
65 lines (57 loc) · 1.75 KB
/
code.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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
module code
!........................................................................
!........... Common statements ..........................................
!........................................................................
implicit none
! seed - job name (e.g. SIESTA)
! seedfdf - name of SIESTA fdf file (e.g. INPUT_FILE.fdf)
! nameout - name of the DFT output file
! nameg - name of the DFT geometry file
! rho_form = .true. if siesta RHO file is formatted; otherwise = .false.
character :: seed*100,seedfdf*100,Which_Code*6
character :: nameout*100,nameg*100
logical rho_form
CONTAINS
subroutine which_PW_code()
!
!................ ask about the code
!
implicit none
character item*10
10 write(*,*)'..................................................'
write(*,*)'Choose the input format:'
write(*,*)
write(*,*)'=========== ALL features ========================='
write(*,*)
write(*,*)' V. VASP'
write(*,*)' S. SIESTA'
write(*,*)
write(*,*)'====== ONLY density MANIPULATION ================='
write(*,*)
write(*,*)' VD. VASP'
write(*,*)' SD. SIESTA'
write(*,*)
write(*,*)' Q. Quit'
write(*,*)
write(*,*)'------------>'
read(*,*) item
if(trim(item)=='V') then
Which_Code=' VASP'
return
else if(trim(item)=='S') then
Which_Code='SIESTA'
return
else if(trim(item)=='SD') then
Which_Code='SIESTA'
call manipulate()
else if(trim(item)=='VD') then
Which_Code=' VASP'
call manipulate()
else if(trim(item)=='Q') then
stop
else
write(*,*) "Incorrect! Please, try again!"
end if
go to 10
end subroutine which_PW_code
end module code