LMDZ
getparam.F90
Go to the documentation of this file.
1 !
2 ! $Id: getparam.F90 2094 2014-07-16 16:55:47Z lguez $
3 !
4 MODULE getparam
5 #ifdef CPP_IOIPSL
6  USE ioipsl
7 #else
8 ! if not using IOIPSL, we still need to use (a local version of) getin
10 #endif
11 
12  INTERFACE getpar
13  MODULE PROCEDURE getparamr,getparami,getparaml
14  END INTERFACE
16 
17  INTEGER, PARAMETER :: out_eff=99
18 
19 CONTAINS
20  SUBROUTINE ini_getparam(fichier)
21  !
22  IMPLICIT NONE
23  !
24  CHARACTER*(*) :: fichier
25  open(out_eff,file=fichier,status='unknown',form='formatted')
26  END SUBROUTINE ini_getparam
27 
28  SUBROUTINE fin_getparam
29  !
30  IMPLICIT NONE
31  !
32  close(out_eff)
33 
34  END SUBROUTINE fin_getparam
35 
36  SUBROUTINE getparamr(TARGET,def_val,ret_val,comment)
37  !
38  IMPLICIT NONE
39  !
40  ! Get a real scalar. We first check if we find it
41  ! in the database and if not we get it from the run.def
42  !
43  ! getinr1d and getinr2d are written on the same pattern
44  !
45  CHARACTER*(*) :: TARGET
46  REAL :: def_val
47  REAL :: ret_val
48  CHARACTER*(*) :: comment
49 
50  ret_val=def_val
51  call getin(TARGET,ret_val)
52 
53  write(out_eff,*) '######################################'
54  write(out_eff,*) '#### ',comment,' #####'
55  write(out_eff,*) TARGET,'=',ret_val
56 
57  END SUBROUTINE getparamr
58 
59  SUBROUTINE getparami(TARGET,def_val,ret_val,comment)
60  !
61  IMPLICIT NONE
62  !
63  ! Get a real scalar. We first check if we find it
64  ! in the database and if not we get it from the run.def
65  !
66  ! getinr1d and getinr2d are written on the same pattern
67  !
68  CHARACTER*(*) :: TARGET
69  INTEGER :: def_val
70  INTEGER :: ret_val
71  CHARACTER*(*) :: comment
72 
73  ret_val=def_val
74  call getin(TARGET,ret_val)
75 
76  write(out_eff,*) '######################################'
77  write(out_eff,*) '#### ',comment,' #####'
78  write(out_eff,*) comment
79  write(out_eff,*) TARGET,'=',ret_val
80 
81  END SUBROUTINE getparami
82 
83  SUBROUTINE getparaml(TARGET,def_val,ret_val,comment)
84  !
85  IMPLICIT NONE
86  !
87  ! Get a real scalar. We first check if we find it
88  ! in the database and if not we get it from the run.def
89  !
90  ! getinr1d and getinr2d are written on the same pattern
91  !
92  CHARACTER*(*) :: TARGET
93  LOGICAL :: def_val
94  LOGICAL :: ret_val
95  CHARACTER*(*) :: comment
96 
97  ret_val=def_val
98  call getin(TARGET,ret_val)
99 
100  write(out_eff,*) '######################################'
101  write(out_eff,*) '#### ',comment,' #####'
102  write(out_eff,*) TARGET,'=',ret_val
103 
104  END SUBROUTINE getparaml
105 
106 
107 END MODULE getparam
subroutine fin_getparam
Definition: getparam.F90:29
subroutine ini_getparam(fichier)
Definition: getparam.F90:21
subroutine, private getparaml(TARGET, def_val, ret_val, comment)
Definition: getparam.F90:84
subroutine, private getparamr(TARGET, def_val, ret_val, comment)
Definition: getparam.F90:37
integer, parameter out_eff
Definition: getparam.F90:17
subroutine, private getparami(TARGET, def_val, ret_val, comment)
Definition: getparam.F90:60