SURFEX v8.1
General documentation of Surfex
lfiomg.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 lfiomg_fort &
5 & (lfi, knivau, kulout)
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 d'IMPRESSION des MESSAGES emis par le logiciel LFI.
14 !**
15 ! ARGUMENT : KNIVAU (Sortie) ==> Niveau global de messagerie.
16 !
17 ! Valeurs possibles (par defaut, 1):
18 !
19 ! 0 : N'emettre que les messages d'erreurs reellement importants,
20 ! en pratique ceux relies a une erreur fatale. Le niveau indivi-
21 ! duel de messagerie des fichiers est alors inoperant.
22 !
23 ! 1 : Seuls quelques messages "globaux" (c'est-a-dire non reliables
24 ! a un fichier deja ouvert) et les messages lies a un fichier
25 ! ouvert, messages dont le niveau est au plus egal au niveau de
26 ! messagerie individuelle du fichier.
27 !
28 ! 2 : Emettre tous les messages possibles (donc jusqu'au niveau 2,
29 ! mais pas ceux lies au mode "mise au point"), meme si
30 ! ces messages concernent un fichier dont le niveau individuel
31 ! de messagerie est inferieur a 2.
32 !
33 !
34 TYPE(lficom) :: LFI
35 INTEGER (KIND=JPLIKB) KNIVAU, KULOUT, INIMES, IREP, INUMER
36 CHARACTER(LEN=LFI%JPLSPX) CLNSPR
37 CHARACTER(LEN=LFI%JPLMES) CLMESS
38 CHARACTER(LEN=LFI%JPLFTX) CLACTI
39 
40 !
41 REAL(KIND=JPRB) :: ZHOOK_HANDLE
42 IF (lhook) CALL dr_hook('LFIOMG_FORT',0,zhook_handle)
43 clacti=''
44 IF (lfi%LFIOMG_LLPREA) THEN
45  CALL lfiini_fort &
46 & (lfi, 2_jplikb )
47  lfi%LFIOMG_LLPREA=.false.
48 ENDIF
49 !
50 knivau=lfi%NIMESG
51 inimes=lfi%NIMESG
52 kulout=lfi%NULOUT
53 !
54 IF (inimes.EQ.2) THEN
55  irep=0
56  inumer=lfi%JPNIL
57  clnspr='LFIOMG'
58  WRITE (unit=clmess,fmt='(''KNIVAU='',I2)') knivau
59  CALL lfiems_fort &
60 & (lfi, inumer,inimes,irep,.false.,clmess, &
61 & clnspr,clacti)
62 ENDIF
63 !
64 IF (lhook) CALL dr_hook('LFIOMG_FORT',1,zhook_handle)
65 END SUBROUTINE lfiomg_fort
66 
67 
68 
69 ! Oct-2012 P. Marguinaud 64b LFI
70 SUBROUTINE lfiomg64 &
71 & (knivau, kulout)
72 USE lfimod, ONLY : lfi => lficom_default, &
75 USE lfi_precision
76 IMPLICIT NONE
77 ! Arguments
78 INTEGER (KIND=JPLIKB) KNIVAU ! OUT
79 INTEGER (KIND=JPLIKB) KULOUT ! OUT
80 
81 IF (.NOT. lficom_default_init) CALL new_lfi_default ()
82 
83 CALL lfiomg_fort &
84 & (lfi, knivau, kulout)
85 
86 END SUBROUTINE lfiomg64
87 
88 SUBROUTINE lfiomg &
89 & (knivau, kulout)
90 USE lfimod, ONLY : lfi => lficom_default, &
93 USE lfi_precision
94 IMPLICIT NONE
95 ! Arguments
96 INTEGER (KIND=JPLIKM) KNIVAU ! OUT
97 INTEGER (KIND=JPLIKM) KULOUT ! OUT
98 
99 IF (.NOT. lficom_default_init) CALL new_lfi_default ()
100 
101 CALL lfiomg_mt &
102 & (lfi, knivau, kulout)
103 
104 END SUBROUTINE lfiomg
105 
106 SUBROUTINE lfiomg_mt &
107 & (lfi, knivau, kulout)
108 USE lfimod, ONLY : lficom
109 USE lfi_precision
110 IMPLICIT NONE
111 ! Arguments
112 type(lficom) lfi ! INOUT
113 INTEGER (KIND=JPLIKM) KNIVAU ! OUT
114 INTEGER (KIND=JPLIKM) KULOUT ! OUT
115 ! Local integers
116 INTEGER (KIND=JPLIKB) INIVAU ! OUT
117 INTEGER (KIND=JPLIKB) IULOUT ! OUT
118 ! Convert arguments
119 
120 
121 CALL lfiomg_fort &
122 & (lfi, inivau, iulout)
123 
124 knivau = int( inivau, jplikm)
125 kulout = int( iulout, jplikm)
126 
127 END SUBROUTINE lfiomg_mt
128 
129 !INTF KNIVAU OUT
130 !INTF KULOUT OUT
subroutine new_lfi_default()
Definition: lfimod.F90:376
subroutine lfiomg(KNIVAU, KULOUT)
Definition: lfiomg.F90:90
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
subroutine lfiomg64(KNIVAU, KULOUT)
Definition: lfiomg.F90:72
subroutine lfiomg_mt(LFI, KNIVAU, KULOUT)
Definition: lfiomg.F90:108
type(lficom), target, save lficom_default
Definition: lfimod.F90:370
logical lhook
Definition: yomhook.F90:15
integer, parameter jplikm
subroutine lfiems_fort(LFI, KNUMER, KNIMES, KCODE, LDFATA, CDMESS, CDNSPR, CDACTI)
Definition: lfiems.F90:7
Definition: lfimod.F90:1
subroutine lfiomg_fort(LFI, KNIVAU, KULOUT)
Definition: lfiomg.F90:6