1 | include(dom.inc)
2 |
3 | SUBROUTINE pmm_readinput(end_prog)
4 |
5 | ! ================================================================!
6 | ! !
7 | ! read_data.F : Reads and stores data from input.dat file. !
8 | ! !
9 | ! out : Global I/O options for PRISSMA. !
10 | ! !
11 | ! author : J. AMAYA (september 2007) !
12 | ! !
13 | ! ================================================================!
14 |
15 | USE mod_inout
16 | #ifdef USEPALM
17 | USE palm_user_param
18 | #endif
19 |
20 | IMPLICIT NONE
21 |
22 | include 'dom_constants.h'
23 |
24 | ! IN
25 | DOM_INT :: end_prog, ios
26 | DOM_STR80 :: choicefile
27 |
28 | #ifdef USEPALM
29 | DOM_STR80 :: wkin, wkout, wkspec
30 | #endif
31 |
32 | ! --------------------!
33 | ! Read input.dat file !
34 | ! --------------------!
35 |
36 | #ifdef USEPALM
37 | choicefile = trim(rundomdir)//'/prissma.choices'
38 | #else
39 | choicefile = 'prissma.choices'
40 | #endif
41 | OPEN(UNIT=1,FILE=choicefile, STATUS='old',IOSTAT=ios)
42 |
43 | #ifdef USEPALM
44 | READ(1,*) wkin
45 | path = trim(rundomdir)//'/'//wkin
46 | READ(1,*) wkspec
47 | pathspec = trim(rundomdir)//'/'//wkspec
48 | READ(1,*) wkout
49 | outpath = trim(rundomdir)//'/'//wkout
50 | #else
51 | READ(1,*) path
52 | READ(1,*) pathspec
53 | READ(1,*) outpath
54 | #endif
55 | READ(1,*) spascheme
56 | READ(1,*) nb_base
57 | READ(1,*) mediumtype
58 | READ(1,*) Nq_kabs
59 | READ(1,*) critconv
60 | READ(1,*) homosyst
61 | READ(1,*) i_dom_inter
62 | READ(1,*) i_dom_npart
63 | READ(1,*) i_dom_nthread
64 |
65 | CLOSE(1)
66 |
67 | ! -----------------------------------------!
68 | ! CHOIX DU SCHEMA DE DERIVATION SPATIALE !
69 | ! -----------------------------------------!
70 |
71 | IF (spascheme==DMFS) THEN
72 | alpha=0.5
73 | I_SCHEME=1
74 | ELSE IF (spascheme==SMFS) THEN
75 | alpha=1.0
76 | I_SCHEME=1
77 | ELSE IF (spascheme==EXPON) THEN
78 | alpha=0.0
79 | I_SCHEME=2
80 | ELSE IF (spascheme=='DERI') THEN
81 | I_SCHEME=-1
82 | ELSE
83 | end_prog=1
84 | ENDIF
85 |
86 | IF ((mediumtype.eq.'FSCK').or.(mediumtype.eq.'TFSCK')) THEN
87 | OPEN(UNIT=1,FILE=choicefile,STATUS='old',IOSTAT=ios)
88 | READ(1,*)
89 | READ(1,*)
90 | READ(1,*)
91 | READ(1,*)
92 | READ(1,*)
93 | READ(1,*,IOSTAT=ios) mediumtype, i_refstate, s_Tp
94 | CLOSE(1)
95 |
96 | IF(ios.ne.0) THEN
97 | i_refstate = 1
98 | s_Tp = 0
99 | ENDIF
100 | ENDIF
101 |
102 | END SUBROUTINE pmm_readinput
pmm_readinput.F could be called by: