SURFEX v8.1
General documentation of Surfex
lfioeg.F90
Go to the documentation of this file.
1 ! Oct-2012 P. Marguinaud 64b LFI
2 ! Jan-2011 P. Marguinaud Thread-safe LFI
3 
4 SUBROUTINE lfioeg_fort &
5 & (lfi, knivau )
6 USE lfimod, ONLY : lficom
7 USE parkind1, ONLY : jprb
8 USE yomhook , ONLY : lhook, dr_hook
10 IMPLICIT NONE
11 !****
12 ! Ce sous-programme permet d'obtenir la valeur courante du NIVEAU
13 ! GLOBAL de traitement des ERREURS detectees par le logiciel LFI.
14 !**
15 ! ARGUMENT : KNIVAU (Sortie) ==> Niveau global de traitement des
16 ! erreurs detectees.
17 !
18 ! Valeurs possibles (par defaut, 1):
19 !
20 ! 0 : Dans ce cas, toute erreur detectee sera fatale, meme si
21 ! l'erreur joue sur un fichier dont l'option individuelle de
22 ! traitement des erreurs est a .FALSE. .
23 !
24 ! 1 : Seules les erreurs "globales" (c'est-a-dire non reliables a un
25 ! fichier deja ouvert) et les erreurs reliees a un fichier dont
26 ! l'option individuelle de traitement est .TRUE. seront fatales.
27 !
28 ! 2 : Passer outre toute erreur detectee, meme si elle correspond
29 ! a un fichier dont l'option individuelle de traitement est
30 ! .TRUE. ; noter que dans ce dernier cas le code-reponse ne
31 ! sera pas nul. Par ailleurs, le code-reponse (-16) echappe a
32 ! ce mode de controle et est toujours fatal.
33 !
34 !
35 TYPE(lficom) :: LFI
36 INTEGER (KIND=JPLIKB) KNIVAU, INIMES, IREP, INUMER
37 CHARACTER(LEN=LFI%JPLSPX) CLNSPR
38 CHARACTER(LEN=LFI%JPLMES) CLMESS
39 CHARACTER(LEN=LFI%JPLFTX) CLACTI
40 
41 !
42 REAL(KIND=JPRB) :: ZHOOK_HANDLE
43 IF (lhook) CALL dr_hook('LFIOEG_FORT',0,zhook_handle)
44 clacti=''
45 IF (lfi%LFIOEG_LLPREA) THEN
46  CALL lfiini_fort &
47 & (lfi, 2_jplikb )
48  lfi%LFIOEG_LLPREA=.false.
49 ENDIF
50 !
51 knivau=lfi%NERFAG
52 inimes=lfi%NIMESG
53 !
54 IF (inimes.EQ.2) THEN
55  irep=0
56  inumer=lfi%JPNIL
57  clnspr='LFIOEG'
58  WRITE (unit=clmess,fmt='(''KNIVAU='',I2)') knivau
59  CALL lfiems_fort &
60 & (lfi, inumer,inimes,irep,.false., &
61 & clmess,clnspr,clacti)
62 ENDIF
63 !
64 IF (lhook) CALL dr_hook('LFIOEG_FORT',1,zhook_handle)
65 END SUBROUTINE lfioeg_fort
66 
67 
68 
69 ! Oct-2012 P. Marguinaud 64b LFI
70 SUBROUTINE lfioeg64 &
71 & (knivau)
72 USE lfimod, ONLY : lfi => lficom_default, &
75 USE lfi_precision
76 IMPLICIT NONE
77 ! Arguments
78 INTEGER (KIND=JPLIKB) KNIVAU ! OUT
79 
80 IF (.NOT. lficom_default_init) CALL new_lfi_default ()
81 
82 CALL lfioeg_fort &
83 & (lfi, knivau)
84 
85 END SUBROUTINE lfioeg64
86 
87 SUBROUTINE lfioeg &
88 & (knivau)
89 USE lfimod, ONLY : lfi => lficom_default, &
92 USE lfi_precision
93 IMPLICIT NONE
94 ! Arguments
95 INTEGER (KIND=JPLIKM) KNIVAU ! OUT
96 
97 IF (.NOT. lficom_default_init) CALL new_lfi_default ()
98 
99 CALL lfioeg_mt &
100 & (lfi, knivau)
101 
102 END SUBROUTINE lfioeg
103 
104 SUBROUTINE lfioeg_mt &
105 & (lfi, knivau)
106 USE lfimod, ONLY : lficom
107 USE lfi_precision
108 IMPLICIT NONE
109 ! Arguments
110 type(lficom) lfi ! INOUT
111 INTEGER (KIND=JPLIKM) KNIVAU ! OUT
112 ! Local integers
113 INTEGER (KIND=JPLIKB) INIVAU ! OUT
114 ! Convert arguments
115 
116 
117 CALL lfioeg_fort &
118 & (lfi, inivau)
119 
120 knivau = int( inivau, jplikm)
121 
122 END SUBROUTINE lfioeg_mt
123 
124 !INTF KNIVAU OUT
subroutine lfioeg_fort(LFI, KNIVAU)
Definition: lfioeg.F90:6
subroutine new_lfi_default()
Definition: lfimod.F90:376
subroutine lfioeg_mt(LFI, KNIVAU)
Definition: lfioeg.F90:106
subroutine lfioeg(KNIVAU)
Definition: lfioeg.F90:89
logical, save lficom_default_init
Definition: lfimod.F90:371
integer, parameter jprb
Definition: parkind1.F90:32
subroutine lfiini_fort(LFI, KOPTIO)
Definition: lfiini.F90:6
type(lficom), target, save lficom_default
Definition: lfimod.F90:370
logical lhook
Definition: yomhook.F90:15
subroutine lfioeg64(KNIVAU)
Definition: lfioeg.F90:72
integer, parameter jplikm
subroutine lfiems_fort(LFI, KNUMER, KNIMES, KCODE, LDFATA, CDMESS, CDNSPR, CDACTI)
Definition: lfiems.F90:7
Definition: lfimod.F90:1