source: LMDZ6/branches/LMDZ-INCA-Dyn/libf/phylmd/cospv2/lmdz_cosp_read_outputkeys.F90 @ 5428

Last change on this file since 5428 was 3491, checked in by idelkadi, 6 years ago

Integration of version 2 of the COSP simulator in LMDZ
This line, and those below, will be ignored--

M makegcm
M makelmdz
M makelmdz_fcm
M libf/phylmd/physiq_mod.F90
A libf/phylmd/cospv2
A libf/phylmd/cospv2/mo_rng.F90
A libf/phylmd/cospv2/quickbeam_optics.F90
A libf/phylmd/cospv2/cosp_cloudsat_interface.F90
A libf/phylmd/cospv2/cosp_config.F90
A libf/phylmd/cospv2/lidar_simulator.F90
A libf/phylmd/cospv2/prec_scops.F90
A libf/phylmd/cospv2/mrgrnk.F90
A libf/phylmd/cospv2/lmdz_cosp_read_outputkeys.F90
A libf/phylmd/cospv2/cosp_atlid_interface.F90
A libf/phylmd/cospv2/lmdz_cosp_subsample_and_optics_mod.F90
A libf/phylmd/cospv2/cosp_math_constants.F90
A libf/phylmd/cospv2/MISR_simulator.F90
A libf/phylmd/cospv2/modis_simulator.F90
A libf/phylmd/cospv2/math_lib.F90
A libf/phylmd/cospv2/cosp_grLidar532_interface.F90
A libf/phylmd/cospv2/cosp_errorHandling.F90
A libf/phylmd/cospv2/cosp_stats.F90
A libf/phylmd/cospv2/lmdz_cosp_output_write_mod.F90
A libf/phylmd/cospv2/cosp_utils.F90
A libf/phylmd/cospv2/cosp_optics.F90
A libf/phylmd/cospv2/icarus.F90
A libf/phylmd/cospv2/scops.F90
A libf/phylmd/cospv2/optics_lib.F90
A libf/phylmd/cospv2/cosp_kinds.F90
A libf/phylmd/cospv2/cosp_calipso_interface.F90
A libf/phylmd/cospv2/quickbeam.F90
A libf/phylmd/cospv2/parasol.F90
A libf/phylmd/cospv2/cosp_phys_constants.F90
A libf/phylmd/cospv2/cosp.F90
A libf/phylmd/cospv2/array_lib.F90
A libf/phylmd/cospv2/cosp_isccp_interface.F90
A libf/phylmd/cospv2/cosp_parasol_interface.F90
A libf/phylmd/cospv2/lmdz_cosp_construct_destroy_mod.F90
A libf/phylmd/cospv2/lmdz_cosp_output_mod.F90
A libf/phylmd/cospv2/lmdz_cosp_interface.F90
A libf/phylmd/cospv2/cosp_misr_interface.F90
A libf/phylmd/cospv2/cosp_modis_interface.F90

File size: 64.2 KB
Line 
1!!!=============================================================================
2!!! AI mars 2018
3!!  Module permettant de controler les cles de sorties cosp
4!!  pour LMDZ
5!! 1. on initialise les cles au 1er passage a cosp itap de la physique = 1
6!! 2. on garde la routine de lecture du fichier namelist cosp_out...txt pour le
7!!    cas non XIOS (ioipsl)
8!! 3. on rajoutte une subroutine qui interoge XIOS si les champs sont demandes
9!!    dans les xml alors on les active et on active les simulateurs
10!!    correspondant
11!!
12!!! RG janvier 2019
13!!  Mise a jour pour avoir toutes les sorties de COSPv2
14!!  Changement de nom a "lmdz_cosp_read_outputkeys"
15!!!=============================================================================
16
17module lmdz_cosp_read_outputkeys
18
19  USE mod_phys_lmdz_para
20
21  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
22  ! TYPE COSP_CONFIG
23  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
24  TYPE COSP_CONFIG
25     logical :: &
26         Lwrite_output,    & ! Control for output file
27         Lfracout,         & ! Control SCOPS cloud fraction out ?
28! simulators
29         Lcloudsat,        & ! CLOUDSAT simulator on/off switch
30         Lcalipso,         & ! CALIPSO simulator on/off switch
31         LgrLidar532,      & ! GROUND LIDAR simulator on/off switch
32         Latlid,           & ! ATLID simulator on/off switch
33         Lisccp,           & ! ISCCP simulator on/off switch
34         Lmodis,           & ! MODIS simulatoe on/off switch
35         Lmisr,            & ! MISR simulator on/off switch
36         Lrttov,           & ! RTTOV simulator on/off switch
37         Lparasol,         & ! PARASOL simulator on/off switch
38
39! diagnostics
40         Lpctisccp,        & ! ISCCP mean cloud top pressure
41         Lclisccp,         & ! ISCCP cloud area fraction
42         Lboxptopisccp,    & ! ISCCP CTP in each column
43         Lboxtauisccp,     & ! ISCCP optical epth in each column
44         Ltauisccp,        & ! ISCCP mean optical depth
45         Lcltisccp,        & ! ISCCP total cloud fraction
46         Lmeantbisccp,     & ! ISCCP mean all-sky 10.5micron brightness temperature
47         Lmeantbclrisccp,  & ! ISCCP mean clear-sky 10.5micron brightness temperature
48         Lalbisccp,        & ! ISCCP mean cloud albedo         
49         LclMISR,          & ! MISR cloud fraction
50         Lcltmodis,        & ! MODIS total cloud fraction
51         Lclwmodis,        & ! MODIS liquid cloud fraction
52         Lclimodis,        & ! MODIS ice cloud fraction
53         Lclhmodis,        & ! MODIS high-level cloud fraction
54         Lclmmodis,        & ! MODIS mid-level cloud fraction
55         Lcllmodis,        & ! MODIS low-level cloud fraction
56         Ltautmodis,       & ! MODIS total cloud optical thicknes
57         Ltauwmodis,       & ! MODIS liquid optical thickness
58         Ltauimodis,       & ! MODIS ice optical thickness
59         Ltautlogmodis,    & ! MODIS total cloud optical thickness (log10 mean)
60         Ltauwlogmodis,    & ! MODIS liquid optical thickness (log10 mean)
61         Ltauilogmodis,    & ! MODIS ice optical thickness (log10 mean)
62         Lreffclwmodis,    & ! MODIS liquid cloud particle size
63         Lreffclimodis,    & ! MODIS ice particle size
64         Lpctmodis,        & ! MODIS cloud top pressure
65         Llwpmodis,        & ! MODIS cloud liquid water path
66         Liwpmodis,        & ! MODIS cloud ice water path
67         Lclmodis,         & ! MODIS cloud area fraction
68         Latb532,          & ! CALIPSO attenuated total backscatter (532nm)
69         Latb532gr,        & ! GROUND LIDAR @ 532NM attenuated total backscatter (532nm)
70         Latb355,          & ! ATLID attenuated total backscatter (355nm)
71         LlidarBetaMol532, & ! CALIPSO molecular backscatter (532nm)         
72         LlidarBetaMol532gr,&! GROUND LIDAR @ 532NM molecular backscatter (532nm)
73         LlidarBetaMol355, & ! ATLID molecular backscatter (355nm)
74         LcfadLidarsr532,  & ! CALIPSO scattering ratio CFAD
75         LcfadLidarsr532gr,& ! GROUND LIDAR @ 532NM scattering ratio CFAD 
76         LcfadLidarsr355,  & ! ATLID scattering ratio CFAD
77         Lclcalipso2,      & ! CALIPSO cloud fraction undetected by cloudsat
78         Lclcalipso,       & ! CALIPSO cloud area fraction
79         LclgrLidar532,   & ! GROUND LIDAR @ 532NM cloud area fraction
80         Lclatlid,         & ! ATLID cloud area fraction
81         Lclhcalipso,      & ! CALIPSO high-level cloud fraction
82         Lcllcalipso,      & ! CALIPSO low-level cloud fraction
83         Lclmcalipso,      & ! CALIPSO mid-level cloud fraction
84         Lcltcalipso,      & ! CALIPSO total cloud fraction
85         LclhgrLidar532,  & ! GROUND LIDAR @ 532NM high-level cloud fraction
86         LcllgrLidar532,  & ! GROUND LIDAR @ 532NM low-level cloud fraction
87         LclmgrLidar532,  & ! GROUND LIDAR @ 532NM mid-level cloud fraction
88         LcltgrLidar532,  & ! GROUND LIDAR @ 532NM total cloud fraction
89         Lclhatlid,        & ! ATLID high-level cloud fraction
90         Lcllatlid,        & ! ATLID low-level cloud fraction 
91         Lclmatlid,        & ! ATLID mid-level cloud fraction
92         Lcltatlid,        & ! ATLID total cloud fraction
93         Lcltlidarradar,   & ! CALIPSO-CLOUDSAT total cloud fraction
94         Lcloudsat_tcc,    & !
95         Lcloudsat_tcc2,   & !
96         Lclcalipsoliq,    & ! CALIPSO liquid cloud area fraction
97         Lclcalipsoice,    & ! CALIPSO ice cloud area fraction
98         Lclcalipsoun,     & ! CALIPSO undetected cloud area fraction
99         Lclcalipsotmp,    & ! CALIPSO undetected cloud area fraction
100         Lclcalipsotmpliq, & ! CALIPSO liquid cloud area fraction
101         Lclcalipsotmpice, & ! CALIPSO ice cloud area fraction
102         Lclcalipsotmpun,  & ! CALIPSO undetected cloud area fraction
103         Lcltcalipsoliq,   & ! CALIPSO liquid total cloud fraction
104         Lcltcalipsoice,   & ! CALIPSO ice total cloud fraction
105         Lcltcalipsoun,    & ! CALIPSO undetected total cloud fraction
106         Lclhcalipsoliq,   & ! CALIPSO high-level liquid cloud fraction
107         Lclhcalipsoice,   & ! CALIPSO high-level ice cloud fraction
108         Lclhcalipsoun,    & ! CALIPSO high-level undetected cloud fraction
109         Lclmcalipsoliq,   & ! CALIPSO mid-level liquid cloud fraction
110         Lclmcalipsoice,   & ! CALIPSO mid-level ice cloud fraction
111         Lclmcalipsoun,    & ! CALIPSO mid-level undetected cloud fraction
112         Lcllcalipsoliq,   & ! CALIPSO low-level liquid cloud fraction
113         Lcllcalipsoice,   & ! CALIPSO low-level ice cloud fraction
114         Lcllcalipsoun,    & ! CALIPSO low-level undetected cloud fraction
115         Lclopaquecalipso, & ! CALIPSO opaque cloud cover (2D Map)
116         Lclthincalipso,   & ! CALIPSO thin cloud cover (2D Map)
117         Lclzopaquecalipso,& ! CALIPSO z_opaque altitude (opaque clouds only, 2D Map)
118         Lclcalipsoopaque, & ! CALIPSO opaque cloud profiles 3D fraction
119         Lclcalipsothin,   & ! CALIPSO thin cloud profiles 3D fraction
120         Lclcalipsozopaque,& ! CALIPSO z_opaque 3D fraction
121         Lclcalipsoopacity,& ! CALIPSO opacity 3D fraction
122         Lclopaquetemp,    & ! CALIPSO opaque cloud temperature
123         Lclthintemp,      & ! CALIPSO thin cloud temperature
124         Lclzopaquetemp,   & ! CALIPSO z_opaque temperature 
125         Lclopaquemeanz,   & ! CALIPSO opaque cloud altitude 
126         Lclthinmeanz,     & ! CALIPSO thin cloud altitude
127         Lclthinemis,      & ! CALIPSO thin cloud emissivity
128         Lclopaquemeanzse,   & ! CALIPSO opaque cloud altitude with respect to SE
129         Lclthinmeanzse,     & ! CALIPSO thin cloud altitude with respect to SE
130         Lclzopaquecalipsose,& ! CALIPSO z_opaque altitude with respect to SE
131         LcfadDbze94,      & ! CLOUDSAT radar reflectivity CFAD
132         Ldbze94,          & ! CLOUDSAT radar reflectivity
133         LparasolRefl,     & ! PARASOL reflectance
134         Ltbrttov,         & ! RTTOV mean clear-sky brightness temperature
135         Lptradarflag0,    & ! CLOUDSAT no precipitation flag
136         Lptradarflag1,    & ! CLOUDSAT rain possible flag
137         Lptradarflag2,    & ! CLOUDSAT rain probable flag
138         Lptradarflag3,    & ! CLOUDSAT rain certain flag
139         Lptradarflag4,    & ! CLOUDSAT snow possible flag
140         Lptradarflag5,    & ! CLOUDSAT snow certain flag
141         Lptradarflag6,    & ! CLOUDSAT mixed-precipitation possible flag
142         Lptradarflag7,    & ! CLOUDSAT mixed-precipitation certain flag
143         Lptradarflag8,    & ! CLOUDSAT heavy rain flag
144         Lptradarflag9,    & ! CLOUDSAT default flag
145         Lradarpia           ! CLOUDSAT PIA
146
147
148!     character(len=32),dimension(:),allocatable :: out_list
149      character(len=32) :: out_list(107)
150  END TYPE COSP_CONFIG       
151
152
153CONTAINS
154!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
155!--------------- SUBROUTINE READ_COSP_OUTPUT_NL -------------------------
156!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
157 SUBROUTINE cosp_outputkeys_init(cfg)
158  implicit none
159  type(cosp_config),intent(inout) :: cfg
160  character(len=32) :: out_list(107)
161  integer :: i
162               
163   do i=1,107
164      cfg%out_list(i)=''
165   enddo
166
167
168   cfg%Lcloudsat=.false.
169   cfg%Lcalipso=.false.
170   cfg%LgrLidar532=.false.
171   cfg%Latlid=.false.
172   cfg%Lisccp=.false.
173   cfg%Lmodis=.false.
174   cfg%Lmisr=.false.
175   cfg%Lrttov=.false.
176   cfg%Lparasol=.false.
177   cfg%Lwrite_output=.false.
178   cfg%Lfracout=.false.
179
180
181   cfg%Lpctisccp=.false.
182   cfg%Lclisccp=.false.
183   cfg%Lboxptopisccp=.false.
184   cfg%Lboxtauisccp=.false.
185   cfg%Ltauisccp=.false.
186   cfg%Lcltisccp=.false.
187   cfg%Lmeantbisccp=.false.
188   cfg%Lmeantbclrisccp=.false.
189   cfg%Lalbisccp=.false.
190   cfg%LclMISR=.false.
191   cfg%Lcltmodis=.false.
192   cfg%Lclwmodis=.false.
193   cfg%Lclimodis=.false.
194   cfg%Lclhmodis=.false.
195   cfg%Lclmmodis=.false.
196   cfg%Lcllmodis=.false.
197   cfg%Ltautmodis=.false.
198   cfg%Ltauwmodis=.false.
199   cfg%Ltauimodis=.false.
200   cfg%Ltautlogmodis=.false.
201   cfg%Ltauwlogmodis=.false.
202   cfg%Ltauilogmodis=.false.
203   cfg%Lreffclwmodis=.false.
204   cfg%Lreffclimodis=.false.
205   cfg%Lpctmodis=.false.
206   cfg%Llwpmodis=.false.
207   cfg%Liwpmodis=.false.
208   cfg%Lclmodis=.false.
209   cfg%Latb532=.false.
210   cfg%Latb532gr=.false.
211   cfg%Latb355=.false.
212   cfg%LlidarBetaMol532=.false.
213   cfg%LlidarBetaMol532gr=.false.
214   cfg%LlidarBetaMol355=.false.
215   cfg%LcfadLidarsr532=.false.
216   cfg%LcfadLidarsr532gr=.false.
217   cfg%LcfadLidarsr355 =.false.
218   cfg%Lclcalipso2=.false.
219   cfg%Lclcalipso=.false.
220   cfg%LclgrLidar532=.false.
221   cfg%Lclatlid=.false.
222   cfg%Lclhcalipso=.false.
223   cfg%Lcllcalipso=.false.
224   cfg%Lclmcalipso=.false.
225   cfg%Lcltcalipso=.false.
226   cfg%LclhgrLidar532=.false.
227   cfg%LcllgrLidar532=.false.
228   cfg%LclmgrLidar532 =.false.
229   cfg%LcltgrLidar532=.false.
230   cfg%Lclhatlid=.false.
231   cfg%Lcllatlid=.false.
232   cfg%Lclmatlid=.false.
233   cfg%Lcltatlid=.false.
234   cfg%Lcltlidarradar=.false.
235   cfg%Lcloudsat_tcc=.false.
236   cfg%Lcloudsat_tcc2=.false.
237   cfg%Lclcalipsoliq=.false.
238   cfg%Lclcalipsoice=.false.
239   cfg%Lclcalipsoun=.false.
240   cfg%Lclcalipsotmp=.false.
241   cfg%Lclcalipsotmpliq=.false.
242   cfg%Lclcalipsotmpice=.false.
243   cfg%Lclcalipsotmpun=.false.
244   cfg%Lcltcalipsoliq=.false.
245   cfg%Lcltcalipsoice=.false.
246   cfg%Lcltcalipsoun=.false.
247   cfg%Lclhcalipsoliq=.false.
248   cfg%Lclhcalipsoice=.false.
249   cfg%Lclhcalipsoun=.false.
250   cfg%Lclmcalipsoliq=.false.
251   cfg%Lclmcalipsoice=.false.
252   cfg%Lclmcalipsoun=.false.
253   cfg%Lcllcalipsoliq=.false.
254   cfg%Lcllcalipsoice=.false.
255   cfg%Lcllcalipsoun =.false.
256   cfg%Lclopaquecalipso=.false.
257   cfg%Lclthincalipso=.false.
258   cfg%Lclzopaquecalipso=.false.
259   cfg%Lclcalipsoopaque=.false.
260   cfg%Lclcalipsothin=.false.
261   cfg%Lclcalipsozopaque=.false.
262   cfg%Lclcalipsoopacity=.false.
263   cfg%Lclopaquetemp=.false.
264   cfg%Lclthintemp=.false.
265   cfg%Lclzopaquetemp=.false.
266   cfg%Lclopaquemeanz=.false.
267   cfg%Lclthinmeanz=.false.
268   cfg%Lclthinemis=.false.
269   cfg%Lclopaquemeanzse=.false.
270   cfg%Lclthinmeanzse=.false.
271   cfg%Lclzopaquecalipsose=.false.
272   cfg%LcfadDbze94=.false.
273   cfg%Ldbze94=.false.
274   cfg%Lparasolrefl=.false.
275   cfg%Ltbrttov=.false.
276   cfg%Lptradarflag0=.false.
277   cfg%Lptradarflag1=.false.
278   cfg%Lptradarflag2=.false.
279   cfg%Lptradarflag3=.false.
280   cfg%Lptradarflag4=.false.
281   cfg%Lptradarflag5=.false.
282   cfg%Lptradarflag6=.false.
283   cfg%Lptradarflag7=.false.
284   cfg%Lptradarflag8=.false.
285   cfg%Lptradarflag9=.false.
286   cfg%Lradarpia=.false.
287
288 end subroutine cosp_outputkeys_init
289
290
291 SUBROUTINE cosp_outputkeys_test(cfg)
292  implicit none
293  type(cosp_config),intent(out) :: cfg
294  character(len=32) :: out_list(107)
295  integer :: i
296
297   do i=1,107
298      cfg%out_list(i)=''
299   enddo
300
301   cfg%Lcloudsat=.false.
302   cfg%Lcalipso=.true.
303   cfg%LgrLidar532=.false.
304   cfg%Latlid=.false.
305   cfg%Lisccp=.false.
306   cfg%Lmodis=.false.
307   cfg%Lmisr=.false.
308   cfg%Lrttov=.false.
309   cfg%Lparasol=.false.
310   cfg%Lwrite_output=.false.
311!   cfg%Lfracout=.false.
312
313   cfg%Lpctisccp=.false.
314   cfg%Lclisccp=.false.
315   cfg%Lboxptopisccp=.false.
316   cfg%Lboxtauisccp=.false.
317   cfg%Ltauisccp=.false.
318   cfg%Lcltisccp=.false.
319   cfg%Lmeantbisccp=.false.
320   cfg%Lmeantbclrisccp=.false.
321   cfg%Lalbisccp=.false.
322   cfg%LclMISR=.false.
323   cfg%Lcltmodis=.false.
324   cfg%Lclwmodis=.false.
325   cfg%Lclimodis=.false.
326   cfg%Lclhmodis=.false.
327   cfg%Lclmmodis=.false.
328   cfg%Lcllmodis=.false.
329   cfg%Ltautmodis=.false.
330   cfg%Ltauwmodis=.false.
331   cfg%Ltauimodis=.false.
332   cfg%Ltautlogmodis=.false.
333   cfg%Ltauwlogmodis=.false.
334   cfg%Ltauilogmodis=.false.
335   cfg%Lreffclwmodis=.false.
336   cfg%Lreffclimodis=.false.
337   cfg%Lpctmodis=.false.
338   cfg%Llwpmodis=.false.
339   cfg%Liwpmodis=.false.
340   cfg%Lclmodis=.false.
341   cfg%Latb532=.false.
342   cfg%Latb532gr=.false.
343   cfg%Latb355=.false.
344   cfg%LlidarBetaMol532=.false.
345   cfg%LlidarBetaMol532gr=.false.
346   cfg%LlidarBetaMol355=.false.
347   cfg%LcfadLidarsr532=.false.
348   cfg%LcfadLidarsr532gr=.false.
349   cfg%LcfadLidarsr355 =.false.
350   cfg%Lclcalipso2=.false.
351   cfg%Lclcalipso=.false.
352   cfg%LclgrLidar532=.false.
353   cfg%Lclatlid=.false.
354   cfg%Lclhcalipso=.true.
355   cfg%Lcllcalipso=.true.
356   cfg%Lclmcalipso=.true.
357   cfg%Lcltcalipso=.true.
358   cfg%LclhgrLidar532=.false.
359   cfg%LcllgrLidar532=.false.
360   cfg%LclmgrLidar532 =.false.
361   cfg%LcltgrLidar532=.false.
362   cfg%Lclhatlid=.false.
363   cfg%Lcllatlid=.false.
364   cfg%Lclmatlid=.false.
365   cfg%Lcltatlid=.false.
366   cfg%Lcltlidarradar=.false.
367   cfg%Lcloudsat_tcc=.false.
368   cfg%Lcloudsat_tcc2=.false.
369   cfg%Lclcalipsoliq=.false.
370   cfg%Lclcalipsoice=.false.
371   cfg%Lclcalipsoun=.false.
372   cfg%Lclcalipsotmp=.false.
373   cfg%Lclcalipsotmpliq=.false.
374   cfg%Lclcalipsotmpice=.false.
375   cfg%Lclcalipsotmpun=.false.
376   cfg%Lcltcalipsoliq=.false.
377   cfg%Lcltcalipsoice=.false.
378   cfg%Lcltcalipsoun=.false.
379   cfg%Lclhcalipsoliq=.false.
380   cfg%Lclhcalipsoice=.false.
381   cfg%Lclhcalipsoun=.false.
382   cfg%Lclmcalipsoliq=.false.
383   cfg%Lclmcalipsoice=.false.
384   cfg%Lclmcalipsoun=.false.
385   cfg%Lcllcalipsoliq=.false.
386   cfg%Lcllcalipsoice=.false.
387   cfg%Lcllcalipsoun =.false.
388   cfg%Lclopaquecalipso=.false.
389   cfg%Lclthincalipso=.false.
390   cfg%Lclzopaquecalipso=.false.
391   cfg%Lclcalipsoopaque=.false.
392   cfg%Lclcalipsothin=.false.
393   cfg%Lclcalipsozopaque=.false.
394   cfg%Lclcalipsoopacity=.false.
395   cfg%Lclopaquetemp=.false.
396   cfg%Lclthintemp=.false.
397   cfg%Lclzopaquetemp=.false.
398   cfg%Lclopaquemeanz=.false.
399   cfg%Lclthinmeanz=.false.
400   cfg%Lclthinemis=.false.
401   cfg%Lclopaquemeanzse=.false.
402   cfg%Lclthinmeanzse=.false.
403   cfg%Lclzopaquecalipsose=.false.
404   cfg%LcfadDbze94=.false.
405   cfg%Ldbze94=.false.
406   cfg%Lparasolrefl=.false.
407   cfg%Ltbrttov=.false.
408   cfg%Lptradarflag0=.false.
409   cfg%Lptradarflag1=.false.
410   cfg%Lptradarflag2=.false.
411   cfg%Lptradarflag3=.false.
412   cfg%Lptradarflag4=.false.
413   cfg%Lptradarflag5=.false.
414   cfg%Lptradarflag6=.false.
415   cfg%Lptradarflag7=.false.
416   cfg%Lptradarflag8=.false.
417   cfg%Lptradarflag9=.false.
418   cfg%Lradarpia=.false.
419
420 end subroutine cosp_outputkeys_test
421
422
423 SUBROUTINE READ_COSP_OUTPUT_NL(itap,cosp_nl,cfg)
424
425#ifdef CPP_XIOS
426    USE xios, ONLY: xios_field_is_active
427#endif
428  implicit none
429  character(len=*),intent(in) :: cosp_nl
430  type(cosp_config),intent(inout) :: cfg
431  ! Local variables
432  integer :: i, itap
433
434!COSPv2
435  logical, save :: &
436       Lisccp      = .false. ,& ! Local on/off switch for simulators
437       Lmodis      = .false., & !
438       Lmisr       = .false., & !
439       Lcalipso    = .false., & !
440       LgrLidar532 = .false., & !
441       Latlid      = .false., & !
442       Lcloudsat   = .false., & !
443       Lrttov      = .false., & !
444       Lparasol    = .false.    !
445
446
447 logical, save :: Lcfaddbze94,Ldbze94,Latb532,LcfadLidarsr532,Lclcalipso,Lclhcalipso,    &
448             Lcllcalipso,Lclmcalipso,Lcltcalipso,LparasolRefl,Lclcalipsoliq,             &
449             Lclcalipsoice,Lclcalipsoun,Lclcalipsotmp,Lclcalipsotmpliq,Lclcalipsotmpice, &
450             Lclcalipsotmpun,Lclhcalipsoliq,Lcllcalipsoliq,Lclmcalipsoliq,Lcltcalipsoliq,&
451             Lclhcalipsoice,Lcllcalipsoice,Lclmcalipsoice,Lcltcalipsoice,Lclhcalipsoun,  &
452             Lcllcalipsoun,Lclmcalipsoun,Lcltcalipsoun,Lclopaquecalipso,Lclthincalipso,  &
453             Lclzopaquecalipso,Lclcalipsoopaque,Lclcalipsothin,Lclcalipsozopaque,        &
454             Lclcalipsoopacity,Lclopaquetemp,Lclthintemp,Lclzopaquetemp,Lclopaquemeanz,  &
455             Lclthinmeanz,Lclthinemis,Lclopaquemeanzse,Lclthinmeanzse,Lclzopaquecalipsose,&
456             LlidarBetaMol532gr,LcfadLidarsr532gr,Latb532gr,LclgrLidar532,LclhgrLidar532,&
457             LcllgrLidar532,LclmgrLidar532,LcltgrLidar532,LlidarBetaMol355,              &
458             LcfadLidarsr355,Latb355,Lclatlid,Lclhatlid,Lcllatlid,Lclmatlid,Lcltatlid,   &
459             Lalbisccp,Lboxptopisccp,Lboxtauisccp,Lpctisccp,Lclisccp,Ltauisccp,Lcltisccp,&
460             Lmeantbisccp,Lmeantbclrisccp,LclMISR,Lclcalipso2,Lcltlidarradar,            &
461             Lcloudsat_tcc, Lcloudsat_tcc2,Lfracout,   &
462             LlidarBetaMol532,Lcltmodis,Lclwmodis,Lclimodis,Lclhmodis,Lclmmodis,         &
463             Lcllmodis,Ltautmodis,Ltauwmodis,Ltauimodis,Ltautlogmodis,Ltauwlogmodis,     &
464             Ltauilogmodis,Lreffclwmodis,Lreffclimodis,Lpctmodis,Llwpmodis,Liwpmodis,    &
465             Lclmodis,Ltbrttov,Lptradarflag0,Lptradarflag1,Lptradarflag2,Lptradarflag3,  &
466             Lptradarflag4,Lptradarflag5,Lptradarflag6,Lptradarflag7,Lptradarflag8,      &
467             Lptradarflag9,Lradarpia
468
469  namelist/COSP_OUTPUT/Lcfaddbze94,Ldbze94,Latb532,LcfadLidarsr532,Lclcalipso,           &
470                       Lclhcalipso,Lcllcalipso,Lclmcalipso,Lcltcalipso,LparasolRefl,     &
471                       Lclcalipsoliq,Lclcalipsoice,Lclcalipsoun,Lclcalipsotmp,           &
472                       Lclcalipsotmpliq,Lclcalipsotmpice,Lclcalipsotmpun,Lclhcalipsoliq, &
473                       Lcllcalipsoliq,Lclmcalipsoliq,Lcltcalipsoliq,Lclhcalipsoice,      &
474                       Lcllcalipsoice,Lclmcalipsoice,Lcltcalipsoice,Lclhcalipsoun,       &
475                       Lcllcalipsoun,Lclmcalipsoun,Lcltcalipsoun,Lclopaquecalipso,       &
476                       Lclthincalipso,Lclzopaquecalipso,Lclcalipsoopaque,Lclcalipsothin, &
477                       Lclcalipsozopaque,Lclcalipsoopacity,Lclopaquetemp,Lclthintemp,    &
478                       Lclzopaquetemp,Lclopaquemeanz,Lclthinmeanz,Lclthinemis,           &
479                       Lclopaquemeanzse,Lclthinmeanzse,Lclzopaquecalipsose,              &
480                       LlidarBetaMol532gr,LcfadLidarsr532gr,Latb532gr,LclgrLidar532,     &
481                       LclhgrLidar532,LcllgrLidar532,LclmgrLidar532,LcltgrLidar532,      &
482                       LlidarBetaMol355,LcfadLidarsr355,Latb355,Lclatlid,                &
483                       Lclhatlid,Lcllatlid,Lclmatlid,Lcltatlid,Lalbisccp,Lboxptopisccp,  &
484                       Lboxtauisccp,Lpctisccp,Lclisccp,Ltauisccp,Lcltisccp,Lmeantbisccp, &
485                       Lmeantbclrisccp,LclMISR,Lclcalipso2,Lcltlidarradar,               &
486                       Lcloudsat_tcc, Lcloudsat_tcc2, Lfracout,                          &
487                       LlidarBetaMol532,Lcltmodis,Lclwmodis,Lclimodis,Lclhmodis,         &
488                       Lclmmodis,Lcllmodis,Ltautmodis,Ltauwmodis,Ltauimodis,             &
489                       Ltautlogmodis,Ltauwlogmodis,Ltauilogmodis,Lreffclwmodis,          &
490                       Lreffclimodis,Lpctmodis,Llwpmodis,Liwpmodis,Lclmodis,Ltbrttov,    &
491                       Lptradarflag0,Lptradarflag1,Lptradarflag2,Lptradarflag3,          &
492                       Lptradarflag4,Lptradarflag5,Lptradarflag6,Lptradarflag7,          &
493                       Lptradarflag8,Lptradarflag9,Lradarpia
494
495  do i=1,107
496    cfg%out_list(i)=''
497  enddo
498 
499! Lecture du fichier namelist
500  IF (is_master) THEN
501    open(10,file=cosp_nl,status='old')
502    read(10,nml=cosp_output)
503    close(10)
504  ENDIF
505
506  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
507  ! Which simulators need to be run? Look at which outputs are requested.
508  !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
509  if (Lpctisccp .or. Lclisccp .or. Lboxptopisccp .or.  Lboxtauisccp .or. Ltauisccp .or. &
510       Lcltisccp .or. Lmeantbisccp .or. Lmeantbclrisccp .or. Lalbisccp) Lisccp = .true.
511  if (LclMISR) Lmisr = .true.
512  if (Lcltmodis .or. Lclwmodis .or. Lclimodis .or. Lclhmodis .or. Lclmmodis .or.         &
513       Lcllmodis .or. Ltautmodis .or. Ltauwmodis .or. Ltauimodis .or. Ltautlogmodis .or. &
514       Ltauwlogmodis .or. Ltauilogmodis .or. Lreffclwmodis .or. Lreffclimodis .or.       &
515       Lpctmodis .or. Llwpmodis .or. Liwpmodis .or. Lclmodis) Lmodis = .true.
516  if (Lclcalipso2 .or. Lclcalipso .or.  Lclhcalipso .or. Lcllcalipso .or. Lclmcalipso    &
517       .or. Lcltcalipso .or. Lcltlidarradar .or. Lclcalipsoliq .or. Lclcalipsoice .or.   &
518       Lclcalipsoun .or. Lclcalipsotmp .or. Lclcalipsotmpliq .or. Lclcalipsotmpice .or.  &
519       Lclcalipsotmpun .or. Lcltcalipsoliq .or. Lcltcalipsoice .or. Lcltcalipsoun .or.   &
520       Lclhcalipsoliq .or. Lclhcalipsoice .or. Lclhcalipsoun .or. Lclmcalipsoliq .or.    &
521       Lclmcalipsoice .or. Lclmcalipsoun .or. Lcllcalipsoliq .or. Lcllcalipsoice .or.    &
522       Lcllcalipsoun .or. LlidarBetaMol532 .or. LcfadLidarsr532 .or. Lcltlidarradar .or. &
523       Lcltlidarradar .or. Lclopaquecalipso .or. Lclthincalipso .or. Lclzopaquecalipso   &
524       .or. Lclcalipsoopaque .or. Lclcalipsothin .or. Lclcalipsozopaque .or.             &
525       Lclcalipsoopacity .or. Lclopaquetemp .or. Lclthintemp .or. Lclzopaquetemp .or.    &
526       Lclopaquemeanz .or. Lclthinmeanz .or. Lclthinemis .or. Lclopaquemeanzse .or.      &
527       Lclthinmeanzse .or. Lclzopaquecalipsose) Lcalipso = .true.
528
529  if (LlidarBetaMol532gr .or. LcfadLidarsr532gr .or. Latb532gr .or. LclgrLidar532 .or.  &
530       LclhgrLidar532 .or. LcllgrLidar532 .or. LclmgrLidar532 .or. LcltgrLidar532)   &
531       LgrLidar532 = .true.
532
533  if (LlidarBetaMol355 .or. LcfadLidarsr355 .or. Latb355 .or. Lclatlid .or.              &
534       Lclhatlid .or. Lcllatlid .or. Lclmatlid .or. Lcltatlid)                           &
535       Latlid = .true.
536
537  if (LcfadDbze94 .or. Ldbze94 .or. Lcltlidarradar .or. Lptradarflag0 .or. Lptradarflag1 &
538       .or. Lptradarflag2 .or. Lptradarflag3 .or. Lptradarflag4 .or. Lptradarflag5 .or.  &
539       Lptradarflag6 .or. Lptradarflag7 .or. Lptradarflag8 .or. Lptradarflag9 .or.       &
540       Lradarpia) Lcloudsat = .true.
541  if (Lparasolrefl) Lparasol = .true.
542  if (Ltbrttov) Lrttov = .true.
543
544  CALL bcast(Lcloudsat)
545  CALL bcast(Lcalipso)
546  CALL bcast(LgrLidar532)
547  CALL bcast(Latlid)
548  CALL bcast(Lparasol)
549  CALL bcast(Lisccp)
550  CALL bcast(Lmodis)
551  CALL bcast(Lmisr)
552  CALL bcast(Lrttov)
553
554  CALL bcast(Lcfaddbze94)
555  CALL bcast(Ldbze94)
556  CALL bcast(Latb532)
557  CALL bcast(LcfadLidarsr532)
558  CALL bcast(Lclcalipso)
559  CALL bcast(Lclhcalipso)
560  CALL bcast(Lcllcalipso)
561  CALL bcast(Lclmcalipso)
562  CALL bcast(Lcltcalipso)
563  CALL bcast(LparasolRefl)
564  CALL bcast(Lclcalipsoliq)
565  CALL bcast(Lclcalipsoice)
566  CALL bcast(Lclcalipsoun)
567  CALL bcast(Lclcalipsotmp)
568  CALL bcast(Lclcalipsotmpliq)
569  CALL bcast(Lclcalipsotmpice)
570  CALL bcast(Lclcalipsotmpun)
571  CALL bcast(Lclhcalipsoliq)
572  CALL bcast(Lcllcalipsoliq)
573  CALL bcast(Lclmcalipsoliq)
574  CALL bcast(Lcltcalipsoliq)
575  CALL bcast(Lclhcalipsoice)
576  CALL bcast(Lcllcalipsoice)
577  CALL bcast(Lclmcalipsoice)
578  CALL bcast(Lcltcalipsoice)
579  CALL bcast(Lclhcalipsoun)
580  CALL bcast(Lcllcalipsoun)
581  CALL bcast(Lclmcalipsoun)
582  CALL bcast(Lcltcalipsoun)
583  CALL bcast(Lclopaquecalipso)
584  CALL bcast(Lclthincalipso)
585  CALL bcast(Lclzopaquecalipso)
586  CALL bcast(Lclcalipsoopaque)
587  CALL bcast(Lclcalipsothin)
588  CALL bcast(Lclcalipsozopaque)
589  CALL bcast(Lclcalipsoopacity)
590  CALL bcast(Lclopaquetemp)
591  CALL bcast(Lclthintemp)
592  CALL bcast(Lclzopaquetemp)
593  CALL bcast(Lclopaquemeanz)
594  CALL bcast(Lclthinmeanz)
595  CALL bcast(Lclthinemis)
596  CALL bcast(Lclopaquemeanzse)
597  CALL bcast(Lclthinmeanzse)
598  CALL bcast(Lclzopaquecalipsose)
599  CALL bcast(LlidarBetaMol532gr)
600  CALL bcast(LcfadLidarsr532gr)
601  CALL bcast(Latb532gr)
602  CALL bcast(LclgrLidar532)
603  CALL bcast(LclhgrLidar532)
604  CALL bcast(LcllgrLidar532)
605  CALL bcast(LclmgrLidar532)
606  CALL bcast(LcltgrLidar532)
607  CALL bcast(LlidarBetaMol355)
608  CALL bcast(LcfadLidarsr355)
609  CALL bcast(Latb355)
610  CALL bcast(Lclatlid)
611  CALL bcast(Lclhatlid)
612  CALL bcast(Lcllatlid)
613  CALL bcast(Lclmatlid)
614  CALL bcast(Lcltatlid)
615  CALL bcast(Lalbisccp)
616  CALL bcast(Lboxptopisccp)
617  CALL bcast(Lboxtauisccp)
618  CALL bcast(Lpctisccp)
619  CALL bcast(Lclisccp)
620  CALL bcast(Ltauisccp)
621  CALL bcast(Lcltisccp)
622  CALL bcast(Lmeantbisccp)
623  CALL bcast(Lmeantbclrisccp)
624  CALL bcast(LclMISR)
625  CALL bcast(Lclcalipso2)
626  CALL bcast(Lcltlidarradar)
627  CALL bcast(Lcloudsat_tcc)
628  CALL bcast(Lcloudsat_tcc2)
629  CALL bcast(Lfracout)
630  CALL bcast(LlidarBetaMol532)
631  CALL bcast(Lcltmodis)
632  CALL bcast(Lclwmodis)
633  CALL bcast(Lclimodis)
634  CALL bcast(Lclhmodis)
635  CALL bcast(Lclmmodis)
636  CALL bcast(Lcllmodis)
637  CALL bcast(Ltautmodis)
638  CALL bcast(Ltauwmodis)
639  CALL bcast(Ltauimodis)
640  CALL bcast(Ltautlogmodis)
641  CALL bcast(Ltauwlogmodis)
642  CALL bcast(Ltauilogmodis)
643  CALL bcast(Lreffclwmodis)
644  CALL bcast(Lreffclimodis)
645  CALL bcast(Lpctmodis)
646  CALL bcast(Llwpmodis)
647  CALL bcast(Liwpmodis)
648  CALL bcast(Lclmodis)
649  CALL bcast(Ltbrttov)
650  CALL bcast(Lptradarflag0)
651  CALL bcast(Lptradarflag1)
652  CALL bcast(Lptradarflag2)
653  CALL bcast(Lptradarflag3)
654  CALL bcast(Lptradarflag4)
655  CALL bcast(Lptradarflag5)
656  CALL bcast(Lptradarflag6)
657  CALL bcast(Lptradarflag7)
658  CALL bcast(Lptradarflag8)
659  CALL bcast(Lptradarflag9)
660  CALL bcast(Lradarpia)
661
662!$OMP BARRIER
663
664  ! Copy instrument flags to cfg structure
665  cfg%Lcloudsat = Lcloudsat
666  cfg%Lcalipso = Lcalipso
667  cfg%LgrLidar532 = LgrLidar532
668  cfg%Latlid = Latlid
669  cfg%Lisccp = Lisccp
670  cfg%Lmodis = Lmodis
671  cfg%Lmisr = Lmisr
672  cfg%Lrttov = Lrttov
673  cfg%Lparasol = Lparasol
674
675    print*,' cfg%Lcloudsat = ',cfg%Lcloudsat
676
677  ! Flag to control output to file
678  cfg%Lwrite_output = .false.
679  if (cfg%Lcloudsat .or. cfg%Lcalipso .or. cfg%LgrLidar532 .or. cfg%Latlid .or. cfg%Lisccp .or. cfg%Lmodis .or. cfg%Lmisr .or. cfg%Lrttov .or. cfg%Lparasol .or. Lfracout) then
680    cfg%Lwrite_output = .true.
681  endif
682
683  ! Output diagnostics
684  i = 1
685
686  if (Lcfaddbze94)        cfg%out_list(i) = 'cfaddbze94'
687  i = i+1
688  if (Ldbze94)        cfg%out_list(i) = 'dbze94'
689  i = i+1
690  if (Latb532)        cfg%out_list(i) = 'atb532'
691  i = i+1
692  if (LcfadLidarsr532)        cfg%out_list(i) = 'cfadLidarsr532'
693  i = i+1
694  if (Lclcalipso)        cfg%out_list(i) = 'clcalipso'
695  i = i+1
696  if (Lclhcalipso)        cfg%out_list(i) = 'clhcalipso'
697  i = i+1
698  if (Lcllcalipso)        cfg%out_list(i) = 'cllcalipso'
699  i = i+1
700  if (Lclmcalipso)        cfg%out_list(i) = 'clmcalipso'
701  i = i+1
702  if (Lcltcalipso)        cfg%out_list(i) = 'cltcalipso'
703  i = i+1
704  if (LparasolRefl)        cfg%out_list(i) = 'parasolRefl'
705  i = i+1
706  if (Lclcalipsoliq)        cfg%out_list(i) = 'clcalipsoliq'
707  i = i+1
708  if (Lclcalipsoice)        cfg%out_list(i) = 'clcalipsoice'
709  i = i+1
710  if (Lclcalipsoun)        cfg%out_list(i) = 'clcalipsoun'
711  i = i+1
712  if (Lclcalipsotmp)        cfg%out_list(i) = 'clcalipsotmp'
713  i = i+1
714  if (Lclcalipsotmpliq)        cfg%out_list(i) = 'clcalipsotmpliq'
715  i = i+1
716  if (Lclcalipsotmpice)        cfg%out_list(i) = 'clcalipsotmpice'
717  i = i+1
718  if (Lclcalipsotmpun)        cfg%out_list(i) = 'clcalipsotmpun'
719  i = i+1
720  if (Lclhcalipsoliq)        cfg%out_list(i) = 'clhcalipsoliq'
721  i = i+1
722  if (Lcllcalipsoliq)        cfg%out_list(i) = 'cllcalipsoliq'
723  i = i+1
724  if (Lclmcalipsoliq)        cfg%out_list(i) = 'clmcalipsoliq'
725  i = i+1
726  if (Lcltcalipsoliq)        cfg%out_list(i) = 'cltcalipsoliq'
727  i = i+1
728  if (Lclhcalipsoice)        cfg%out_list(i) = 'clhcalipsoice'
729  i = i+1
730  if (Lcllcalipsoice)        cfg%out_list(i) = 'cllcalipsoice'
731  i = i+1
732  if (Lclmcalipsoice)        cfg%out_list(i) = 'clmcalipsoice'
733  i = i+1
734  if (Lcltcalipsoice)        cfg%out_list(i) = 'cltcalipsoice'
735  i = i+1
736  if (Lclhcalipsoun)        cfg%out_list(i) = 'clhcalipsoun'
737  i = i+1
738  if (Lcllcalipsoun)        cfg%out_list(i) = 'cllcalipsoun'
739  i = i+1
740  if (Lclmcalipsoun)        cfg%out_list(i) = 'clmcalipsoun'
741  i = i+1
742  if (Lcltcalipsoun)        cfg%out_list(i) = 'cltcalipsoun'
743  i = i+1
744  if (Lclopaquecalipso)        cfg%out_list(i) = 'clopaquecalipso'
745  i = i+1
746  if (Lclthincalipso)        cfg%out_list(i) = 'clthincalipso'
747  i = i+1
748  if (Lclzopaquecalipso)        cfg%out_list(i) = 'clzopaquecalipso'
749  i = i+1
750  if (Lclcalipsoopaque)        cfg%out_list(i) = 'clcalipsoopaque'
751  i = i+1
752  if (Lclcalipsothin)        cfg%out_list(i) = 'clcalipsothin'
753  i = i+1
754  if (Lclcalipsozopaque)        cfg%out_list(i) = 'clcalipsozopaque'
755  i = i+1
756  if (Lclcalipsoopacity)        cfg%out_list(i) = 'clcalipsoopacity'
757  i = i+1
758  if (Lclopaquetemp)        cfg%out_list(i) = 'clopaquetemp'
759  i = i+1
760  if (Lclthintemp)        cfg%out_list(i) = 'clthintemp'
761  i = i+1
762  if (Lclzopaquetemp)        cfg%out_list(i) = 'clzopaquetemp'
763  i = i+1
764  if (Lclopaquemeanz)        cfg%out_list(i) = 'clopaquemeanz'
765  i = i+1
766  if (Lclthinmeanz)        cfg%out_list(i) = 'clthinmeanz'
767  i = i+1
768  if (Lclthinemis)        cfg%out_list(i) = 'clthinemis'
769  i = i+1
770  if (Lclopaquemeanzse)        cfg%out_list(i) = 'clopaquemeanzse'
771  i = i+1
772  if (Lclthinmeanzse)        cfg%out_list(i) = 'clthinmeanzse'
773  i = i+1
774  if (Lclzopaquecalipsose)        cfg%out_list(i) = 'clzopaquecalipsose'
775  i = i+1
776  if (LlidarBetaMol532gr)        cfg%out_list(i) = 'lidarBetaMol532gr'
777  i = i+1
778  if (LcfadLidarsr532gr)        cfg%out_list(i) = 'cfadLidarsr532gr'
779  i = i+1
780  if (Latb532gr)        cfg%out_list(i) = 'atb532gr'
781  i = i+1
782  if (LclgrLidar532)        cfg%out_list(i) = 'clgrLidar532'
783  i = i+1
784  if (LclhgrLidar532)        cfg%out_list(i) = 'clhgrLidar532'
785  i = i+1
786  if (LcllgrLidar532)        cfg%out_list(i) = 'cllgrLidar532'
787  i = i+1
788  if (LclmgrLidar532)        cfg%out_list(i) = 'clmgrLidar532'
789  i = i+1
790  if (LcltgrLidar532)        cfg%out_list(i) = 'cltgrLidar532'
791  i = i+1
792  if (LlidarBetaMol355)        cfg%out_list(i) = 'lidarBetaMol355'
793  i = i+1
794  if (LcfadLidarsr355)        cfg%out_list(i) = 'cfadLidarsr355'
795  i = i+1
796  if (Latb355)        cfg%out_list(i) = 'atb355'
797  i = i+1
798  if (Lclatlid)        cfg%out_list(i) = 'clatlid'
799  i = i+1
800  if (Lclhatlid)        cfg%out_list(i) = 'clhatlid'
801  i = i+1
802  if (Lcllatlid)        cfg%out_list(i) = 'cllatlid'
803  i = i+1
804  if (Lclmatlid)        cfg%out_list(i) = 'clmatlid'
805  i = i+1
806  if (Lcltatlid)        cfg%out_list(i) = 'cltatlid'
807  i = i+1
808  if (Lalbisccp)        cfg%out_list(i) = 'albisccp'
809  i = i+1
810  if (Lboxptopisccp)        cfg%out_list(i) = 'boxptopisccp'
811  i = i+1
812  if (Lboxtauisccp)        cfg%out_list(i) = 'boxtauisccp'
813  i = i+1
814  if (Lpctisccp)        cfg%out_list(i) = 'pctisccp'
815  i = i+1
816  if (Lclisccp)        cfg%out_list(i) = 'clisccp'
817  i = i+1
818  if (Ltauisccp)        cfg%out_list(i) = 'tauisccp'
819  i = i+1
820  if (Lcltisccp)        cfg%out_list(i) = 'cltisccp'
821  i = i+1
822  if (Lmeantbisccp)        cfg%out_list(i) = 'meantbisccp'
823  i = i+1
824  if (Lmeantbclrisccp)        cfg%out_list(i) = 'meantbclrisccp'
825  i = i+1
826  if (LclMISR)        cfg%out_list(i) = 'clMISR'
827  i = i+1
828  if (Lclcalipso2)        cfg%out_list(i) = 'clcalipso2'
829  i = i+1
830  if (Lcltlidarradar)        cfg%out_list(i) = 'cltlidarradar'
831  i = i+1
832  if (Lcloudsat_tcc)        cfg%out_list(i) = 'cloudsat_tcc'
833  i = i+1
834  if (Lcloudsat_tcc2)        cfg%out_list(i) = 'cloudsat_tcc2'
835  i = i+1
836  if (Lfracout)        cfg%out_list(i) = 'fracout'
837  i = i+1
838  if (LlidarBetaMol532)        cfg%out_list(i) = 'lidarBetaMol532'
839  i = i+1
840  if (Lcltmodis)        cfg%out_list(i) = 'cltmodis'
841  i = i+1
842  if (Lclwmodis)        cfg%out_list(i) = 'clwmodis'
843  i = i+1
844  if (Lclimodis)        cfg%out_list(i) = 'climodis'
845  i = i+1
846  if (Lclhmodis)        cfg%out_list(i) = 'clhmodis'
847  i = i+1
848  if (Lclmmodis)        cfg%out_list(i) = 'clmmodis'
849  i = i+1
850  if (Lcllmodis)        cfg%out_list(i) = 'cllmodis'
851  i = i+1
852  if (Ltautmodis)        cfg%out_list(i) = 'tautmodis'
853  i = i+1
854  if (Ltauwmodis)        cfg%out_list(i) = 'tauwmodis'
855  i = i+1
856  if (Ltauimodis)        cfg%out_list(i) = 'tauimodis'
857  i = i+1
858  if (Ltautlogmodis)        cfg%out_list(i) = 'tautlogmodis'
859  i = i+1
860  if (Ltauwlogmodis)        cfg%out_list(i) = 'tauwlogmodis'
861  i = i+1
862  if (Ltauilogmodis)        cfg%out_list(i) = 'tauilogmodis'
863  i = i+1
864  if (Lreffclwmodis)        cfg%out_list(i) = 'reffclwmodis'
865  i = i+1
866  if (Lreffclimodis)        cfg%out_list(i) = 'reffclimodis'
867  i = i+1
868  if (Lpctmodis)        cfg%out_list(i) = 'pctmodis'
869  i = i+1
870  if (Llwpmodis)        cfg%out_list(i) = 'lwpmodis'
871  i = i+1
872  if (Liwpmodis)        cfg%out_list(i) = 'iwpmodis'
873  i = i+1
874  if (Lclmodis)        cfg%out_list(i) = 'clmodis'
875  i = i+1
876  if (Ltbrttov)        cfg%out_list(i) = 'tbrttov'
877  i = i+1
878  if (Lptradarflag0)        cfg%out_list(i) = 'ptradarflag0'
879  i = i+1
880  if (Lptradarflag1)        cfg%out_list(i) = 'ptradarflag1'
881  i = i+1
882  if (Lptradarflag2)        cfg%out_list(i) = 'ptradarflag2'
883  i = i+1
884  if (Lptradarflag3)        cfg%out_list(i) = 'ptradarflag3'
885  i = i+1
886  if (Lptradarflag4)        cfg%out_list(i) = 'ptradarflag4'
887  i = i+1
888  if (Lptradarflag5)        cfg%out_list(i) = 'ptradarflag5'
889  i = i+1
890  if (Lptradarflag6)        cfg%out_list(i) = 'ptradarflag6'
891  i = i+1
892  if (Lptradarflag7)        cfg%out_list(i) = 'ptradarflag7'
893  i = i+1
894  if (Lptradarflag8)        cfg%out_list(i) = 'ptradarflag8'
895  i = i+1
896  if (Lptradarflag9)        cfg%out_list(i) = 'ptradarflag9'
897  i = i+1
898  if (Lradarpia)        cfg%out_list(i) = 'radarpia'
899!  i = i+1 !si on laisse, 108 au lieu de 107
900
901  if (i.gt.107) then
902     print *, 'COSP_IO: wrong number of output diagnostics'
903     print *, i,107
904     stop
905  endif
906
907
908  ! Copy diagnostic flags to cfg structure
909
910   cfg%Lpctisccp = Lpctisccp
911   cfg%Lclisccp = Lclisccp
912   cfg%Lboxptopisccp = Lboxptopisccp
913   cfg%Lboxtauisccp = Lboxtauisccp
914   cfg%Ltauisccp = Ltauisccp
915   cfg%Lcltisccp = Lcltisccp
916   cfg%Lmeantbisccp = Lmeantbisccp
917   cfg%Lmeantbclrisccp = Lmeantbclrisccp
918   cfg%Lalbisccp = Lalbisccp
919   cfg%LclMISR = LclMISR
920   cfg%Lcltmodis = Lcltmodis
921   cfg%Lclwmodis = Lclwmodis
922   cfg%Lclimodis = Lclimodis
923   cfg%Lclhmodis = Lclhmodis
924   cfg%Lclmmodis = Lclmmodis
925   cfg%Lcllmodis = Lcllmodis
926   cfg%Ltautmodis = Ltautmodis
927   cfg%Ltauwmodis = Ltauwmodis
928   cfg%Ltauimodis = Ltauimodis
929   cfg%Ltautlogmodis = Ltautlogmodis
930   cfg%Ltauwlogmodis = Ltauwlogmodis
931   cfg%Ltauilogmodis = Ltauilogmodis
932   cfg%Lreffclwmodis = Lreffclwmodis
933   cfg%Lreffclimodis = Lreffclimodis
934   cfg%Lpctmodis = Lpctmodis
935   cfg%Llwpmodis = Llwpmodis
936   cfg%Liwpmodis = Liwpmodis
937   cfg%Lclmodis = Lclmodis
938   cfg%Latb532 = Latb532
939   cfg%Latb532gr = Latb532gr
940   cfg%Latb355 = Latb355
941   cfg%LlidarBetaMol532 = LlidarBetaMol532
942   cfg%LlidarBetaMol532gr = LlidarBetaMol532gr
943   cfg%LlidarBetaMol355 = LlidarBetaMol355
944   cfg%LcfadLidarsr532 = LcfadLidarsr532
945   cfg%LcfadLidarsr532gr = LcfadLidarsr532gr
946   cfg%LcfadLidarsr355 = LcfadLidarsr355
947   cfg%Lclcalipso2 = Lclcalipso2
948   cfg%Lclcalipso = Lclcalipso
949   cfg%LclgrLidar532 = LclgrLidar532
950   cfg%Lclatlid = Lclatlid
951   cfg%Lclhcalipso = Lclhcalipso
952   cfg%Lcllcalipso = Lcllcalipso
953   cfg%Lclmcalipso = Lclmcalipso
954   cfg%Lcltcalipso = Lcltcalipso
955   cfg%LclhgrLidar532 = LclhgrLidar532
956   cfg%LcllgrLidar532 = LcllgrLidar532
957   cfg%LclmgrLidar532 = LclmgrLidar532
958   cfg%LcltgrLidar532 = LcltgrLidar532
959   cfg%Lclhatlid = Lclhatlid
960   cfg%Lcllatlid = Lcllatlid
961   cfg%Lclmatlid = Lclmatlid
962   cfg%Lcltatlid = Lcltatlid
963   cfg%Lcltlidarradar = Lcltlidarradar
964   cfg%Lcloudsat_tcc = Lcloudsat_tcc
965   cfg%Lcloudsat_tcc2 = Lcloudsat_tcc2
966   cfg%Lclcalipsoliq = Lclcalipsoliq
967   cfg%Lclcalipsoice = Lclcalipsoice
968   cfg%Lclcalipsoun = Lclcalipsoun
969   cfg%Lclcalipsotmp = Lclcalipsotmp
970   cfg%Lclcalipsotmpliq = Lclcalipsotmpliq
971   cfg%Lclcalipsotmpice = Lclcalipsotmpice
972   cfg%Lclcalipsotmpun = Lclcalipsotmpun
973   cfg%Lcltcalipsoliq = Lcltcalipsoliq
974   cfg%Lcltcalipsoice = Lcltcalipsoice
975   cfg%Lcltcalipsoun = Lcltcalipsoun
976   cfg%Lclhcalipsoliq = Lclhcalipsoliq
977   cfg%Lclhcalipsoice = Lclhcalipsoice
978   cfg%Lclhcalipsoun = Lclhcalipsoun
979   cfg%Lclmcalipsoliq = Lclmcalipsoliq
980   cfg%Lclmcalipsoice = Lclmcalipsoice
981   cfg%Lclmcalipsoun = Lclmcalipsoun
982   cfg%Lcllcalipsoliq = Lcllcalipsoliq
983   cfg%Lcllcalipsoice = Lcllcalipsoice
984   cfg%Lcllcalipsoun = Lcllcalipsoun
985   cfg%Lclopaquecalipso = Lclopaquecalipso
986   cfg%Lclthincalipso = Lclthincalipso
987   cfg%Lclzopaquecalipso = Lclzopaquecalipso
988   cfg%Lclcalipsoopaque = Lclcalipsoopaque
989   cfg%Lclcalipsothin = Lclcalipsothin
990   cfg%Lclcalipsozopaque = Lclcalipsozopaque
991   cfg%Lclcalipsoopacity = Lclcalipsoopacity
992   cfg%Lclopaquetemp = Lclopaquetemp
993   cfg%Lclthintemp = Lclthintemp
994   cfg%Lclzopaquetemp = Lclzopaquetemp
995   cfg%Lclopaquemeanz = Lclopaquemeanz
996   cfg%Lclthinmeanz = Lclthinmeanz
997   cfg%Lclthinemis = Lclthinemis
998   cfg%Lclopaquemeanzse = Lclopaquemeanzse
999   cfg%Lclthinmeanzse = Lclthinmeanzse
1000   cfg%Lclzopaquecalipsose = Lclzopaquecalipsose
1001   cfg%LcfadDbze94 = LcfadDbze94
1002   cfg%Ldbze94 = Ldbze94
1003   cfg%Lparasolrefl = Lparasolrefl
1004   cfg%Ltbrttov = Ltbrttov
1005   cfg%Lptradarflag0 = Lptradarflag0
1006   cfg%Lptradarflag1 = Lptradarflag1
1007   cfg%Lptradarflag2 = Lptradarflag2
1008   cfg%Lptradarflag3 = Lptradarflag3
1009   cfg%Lptradarflag4 = Lptradarflag4
1010   cfg%Lptradarflag5 = Lptradarflag5
1011   cfg%Lptradarflag6 = Lptradarflag6
1012   cfg%Lptradarflag7 = Lptradarflag7
1013   cfg%Lptradarflag8 = Lptradarflag8
1014   cfg%Lptradarflag9 = Lptradarflag9
1015   cfg%Lradarpia = Lradarpia
1016   cfg%Lfracout = Lfracout
1017 
1018 END SUBROUTINE READ_COSP_OUTPUT_NL
1019
1020
1021 SUBROUTINE read_xiosfieldactive(cfg)
1022
1023#ifdef CPP_XIOS
1024    USE xios, ONLY: xios_field_is_active
1025#endif
1026  implicit none
1027  type(cosp_config),intent(inout) :: cfg
1028  integer :: i
1029
1030#ifdef CPP_XIOS
1031
1032!COSPv2 local variables
1033  logical :: &
1034       Lisccp      = .false., & ! Local on/off switch for simulators
1035       Lmodis      = .false., & !
1036       Lmisr       = .false., & !
1037       Lcalipso    = .false., & !
1038       LgrLidar532 = .false., & !
1039       Latlid      = .false., & !
1040       Lcloudsat   = .false., & !
1041       Lrttov      = .false., & !
1042       Lparasol    = .false., & !
1043       Lwrite_output=.false.    ! ecrire un fichier de sortie COSP ! RG voir si on garde
1044
1045  logical :: Lcfaddbze94,Ldbze94,Latb532,LcfadLidarsr532,Lclcalipso,Lclhcalipso,         &
1046             Lcllcalipso,Lclmcalipso,Lcltcalipso,LparasolRefl,Lclcalipsoliq,             &
1047             Lclcalipsoice,Lclcalipsoun,Lclcalipsotmp,Lclcalipsotmpliq,Lclcalipsotmpice, &
1048             Lclcalipsotmpun,Lclhcalipsoliq,Lcllcalipsoliq,Lclmcalipsoliq,Lcltcalipsoliq,&
1049             Lclhcalipsoice,Lcllcalipsoice,Lclmcalipsoice,Lcltcalipsoice,Lclhcalipsoun,  &
1050             Lcllcalipsoun,Lclmcalipsoun,Lcltcalipsoun,Lclopaquecalipso,Lclthincalipso,  &
1051             Lclzopaquecalipso,Lclcalipsoopaque,Lclcalipsothin,Lclcalipsozopaque,        &
1052             Lclcalipsoopacity,Lclopaquetemp,Lclthintemp,Lclzopaquetemp,Lclopaquemeanz,  &
1053             Lclthinmeanz,Lclthinemis,Lclopaquemeanzse,Lclthinmeanzse,Lclzopaquecalipsose,&
1054             LlidarBetaMol532gr,LcfadLidarsr532gr,Latb532gr,LclgrLidar532,LclhgrLidar532,&
1055             LcllgrLidar532,LclmgrLidar532,LcltgrLidar532,LlidarBetaMol355,              &
1056             LcfadLidarsr355,Latb355,Lclatlid,Lclhatlid,Lcllatlid,Lclmatlid,Lcltatlid,   &
1057             Lalbisccp,Lboxptopisccp,Lboxtauisccp,Lpctisccp,Lclisccp,Ltauisccp,Lcltisccp,&
1058             Lmeantbisccp,Lmeantbclrisccp,LclMISR,Lclcalipso2,Lcltlidarradar,            &
1059             Lcloudsat_tcc, Lcloudsat_tcc2,Lfracout,   &
1060             LlidarBetaMol532,Lcltmodis,Lclwmodis,Lclimodis,Lclhmodis,Lclmmodis,         &
1061             Lcllmodis,Ltautmodis,Ltauwmodis,Ltauimodis,Ltautlogmodis,Ltauwlogmodis,     &
1062             Ltauilogmodis,Lreffclwmodis,Lreffclimodis,Lpctmodis,Llwpmodis,Liwpmodis,    &
1063             Lclmodis,Ltbrttov,Lptradarflag0,Lptradarflag1,Lptradarflag2,Lptradarflag3,  &
1064             Lptradarflag4,Lptradarflag5,Lptradarflag6,Lptradarflag7,Lptradarflag8,      &
1065             Lptradarflag9,Lradarpia
1066
1067       
1068  character(len=32) :: out_list(107)
1069
1070  do i=1,107
1071    cfg%out_list(i)=''
1072  enddo
1073
1074! diagnostics
1075   Lpctisccp=.false.
1076   Lclisccp=.false.
1077   Lboxptopisccp=.false.
1078   Lboxtauisccp=.false.
1079   Ltauisccp=.false.
1080   Lcltisccp=.false.
1081   Lmeantbisccp=.false.
1082   Lmeantbclrisccp=.false.
1083   Lalbisccp=.false.
1084   LclMISR=.false.
1085   Lcltmodis=.false.
1086   Lclwmodis=.false.
1087   Lclimodis=.false.
1088   Lclhmodis=.false.
1089   Lclmmodis=.false.
1090   Lcllmodis=.false.
1091   Ltautmodis=.false.
1092   Ltauwmodis=.false.
1093   Ltauimodis=.false.
1094   Ltautlogmodis=.false.
1095   Ltauwlogmodis=.false.
1096   Ltauilogmodis=.false.
1097   Lreffclwmodis=.false.
1098   Lreffclimodis=.false.
1099   Lpctmodis=.false.
1100   Llwpmodis=.false.
1101   Liwpmodis=.false.
1102   Lclmodis=.false.
1103   Latb532=.false.
1104   Latb532gr=.false.
1105   Latb355=.false.
1106   LlidarBetaMol532=.false.
1107   LlidarBetaMol532gr=.false.
1108   LlidarBetaMol355=.false.
1109   LcfadLidarsr532=.false.
1110   LcfadLidarsr532gr=.false.
1111   LcfadLidarsr355 =.false.
1112   Lclcalipso2=.false.
1113   Lclcalipso=.false.
1114   LclgrLidar532=.false.
1115   Lclatlid=.false.
1116   Lclhcalipso=.false.
1117   Lcllcalipso=.false.
1118   Lclmcalipso=.false.
1119   Lcltcalipso=.false.
1120   LclhgrLidar532=.false.
1121   LcllgrLidar532=.false.
1122   LclmgrLidar532 =.false.
1123   LcltgrLidar532=.false.
1124   Lclhatlid=.false.
1125   Lcllatlid=.false.
1126   Lclmatlid=.false.
1127   Lcltatlid=.false.
1128   Lcltlidarradar=.false.
1129   Lcloudsat_tcc=.false.
1130   Lcloudsat_tcc2=.false.
1131   Lclcalipsoliq=.false.
1132   Lclcalipsoice=.false.
1133   Lclcalipsoun=.false.
1134   Lclcalipsotmp=.false.
1135   Lclcalipsotmpliq=.false.
1136   Lclcalipsotmpice=.false.
1137   Lclcalipsotmpun=.false.
1138   Lcltcalipsoliq=.false.
1139   Lcltcalipsoice=.false.
1140   Lcltcalipsoun=.false.
1141   Lclhcalipsoliq=.false.
1142   Lclhcalipsoice=.false.
1143   Lclhcalipsoun=.false.
1144   Lclmcalipsoliq=.false.
1145   Lclmcalipsoice=.false.
1146   Lclmcalipsoun=.false.
1147   Lcllcalipsoliq=.false.
1148   Lcllcalipsoice=.false.
1149   Lcllcalipsoun =.false.
1150   Lclopaquecalipso=.false.
1151   Lclthincalipso=.false.
1152   Lclzopaquecalipso=.false.
1153   Lclcalipsoopaque=.false.
1154   Lclcalipsothin=.false.
1155   Lclcalipsozopaque=.false.
1156   Lclcalipsoopacity=.false.
1157   Lclopaquetemp=.false.
1158   Lclthintemp=.false.
1159   Lclzopaquetemp=.false.
1160   Lclopaquemeanz=.false.
1161   Lclthinmeanz=.false.
1162   Lclthinemis=.false.
1163   Lclopaquemeanzse=.false.
1164   Lclthinmeanzse=.false.
1165   Lclzopaquecalipsose=.false.
1166   LcfadDbze94=.false.
1167   Ldbze94=.false.
1168   Lparasolrefl=.false.
1169   Ltbrttov=.false.
1170   Lptradarflag0=.false.
1171   Lptradarflag1=.false.
1172   Lptradarflag2=.false.
1173   Lptradarflag3=.false.
1174   Lptradarflag4=.false.
1175   Lptradarflag5=.false.
1176   Lptradarflag6=.false.
1177   Lptradarflag7=.false.
1178   Lptradarflag8=.false.
1179   Lptradarflag9=.false.
1180   Lradarpia=.false.
1181   Lfracout=.false.
1182
1183
1184  IF (is_master) THEN
1185! VEREFIER LES CHAMPS DEMANDES DANS .XML
1186! 2. Si champs active dans .xml alors mettre la cles de sortie en true
1187 IF (xios_field_is_active("cllcalipso")) Lcllcalipso=.TRUE.
1188 IF (xios_field_is_active("clmcalipso")) Lclmcalipso=.TRUE.
1189 IF (xios_field_is_active("clhcalipso")) Lclhcalipso=.TRUE.
1190 IF (xios_field_is_active("cltcalipso")) Lcltcalipso=.TRUE.
1191 IF (xios_field_is_active("cllcalipsoice")) Lcllcalipsoice=.TRUE.
1192 IF (xios_field_is_active("clmcalipsoice")) Lclmcalipsoice=.TRUE.
1193 IF (xios_field_is_active("clhcalipsoice")) Lclhcalipsoice=.TRUE.
1194 IF (xios_field_is_active("cltcalipsoice")) Lcltcalipsoice=.TRUE.
1195 IF (xios_field_is_active("cllcalipsoliq")) Lcllcalipsoliq=.TRUE.
1196 IF (xios_field_is_active("clmcalipsoliq")) Lclmcalipsoliq=.TRUE.
1197 IF (xios_field_is_active("clhcalipsoliq")) Lclhcalipsoliq=.TRUE.
1198 IF (xios_field_is_active("cltcalipsoliq")) Lcltcalipsoliq=.TRUE.
1199 IF (xios_field_is_active("cllcalipsoun")) Lcllcalipsoun=.TRUE.
1200 IF (xios_field_is_active("clmcalipsoun")) Lclmcalipsoun=.TRUE.
1201 IF (xios_field_is_active("clhcalipsoun")) Lclhcalipsoun=.TRUE.
1202 IF (xios_field_is_active("cltcalipsoun")) Lcltcalipsoun=.TRUE.
1203 IF (xios_field_is_active("clcalipso")) Lclcalipso=.TRUE.
1204 IF (xios_field_is_active("clcalipsoice")) Lclcalipsoice=.TRUE.
1205 IF (xios_field_is_active("clcalipsoliq")) Lclcalipsoliq=.TRUE.
1206 IF (xios_field_is_active("clcalipsoun")) Lclcalipsoun=.TRUE.
1207 IF (xios_field_is_active("clcalipsotmp")) Lclcalipsotmp=.TRUE.
1208 IF (xios_field_is_active("clcalipsotmpice")) Lclcalipsotmpice=.TRUE.
1209 IF (xios_field_is_active("clcalipsotmpliq")) Lclcalipsotmpliq=.TRUE.
1210 IF (xios_field_is_active("clcalipsotmpun")) Lclcalipsotmpun=.TRUE.
1211! IF (xios_field_is_active("parasol_crefl")) cfg%LparasolRefl=.TRUE.
1212! IF (xios_field_is_active("Ncrefl")) cfg%LparasolRefl=.TRUE.
1213 IF (xios_field_is_active("cfadLidarsr532")) LcfadLidarsr532=.TRUE.
1214 IF (xios_field_is_active("atb532")) Latb532=.TRUE.
1215 IF (xios_field_is_active("lidarBetaMol532")) LlidarBetaMol532=.TRUE.
1216 IF (xios_field_is_active("clopaquecalipso")) Lclopaquecalipso=.TRUE.
1217 IF (xios_field_is_active("clthincalipso")) Lclthincalipso=.TRUE.
1218 IF (xios_field_is_active("clzopaquecalipso")) Lclzopaquecalipso=.TRUE.
1219 IF (xios_field_is_active("clcalipsoopaque")) Lclcalipsoopaque=.TRUE.
1220 IF (xios_field_is_active("clcalipsothin")) Lclcalipsothin=.TRUE.
1221 IF (xios_field_is_active("clcalipsozopaque")) Lclcalipsozopaque=.TRUE.
1222 IF (xios_field_is_active("clcalipsoopacity")) Lclcalipsoopacity=.TRUE.
1223 IF (xios_field_is_active("clopaquetemp")) Lclopaquetemp=.TRUE.
1224 IF (xios_field_is_active("clthintemp")) Lclthintemp=.TRUE.
1225 IF (xios_field_is_active("clzopaquetemp")) Lclzopaquetemp=.TRUE.
1226 IF (xios_field_is_active("clopaquemeanz")) Lclopaquemeanz=.TRUE.
1227 IF (xios_field_is_active("clthinmeanz")) Lclthinmeanz=.TRUE.
1228 IF (xios_field_is_active("clthinemis")) Lclthinemis=.TRUE.
1229 IF (xios_field_is_active("clopaquemeanzse")) Lclopaquemeanzse=.TRUE.
1230 IF (xios_field_is_active("clthinmeanzse")) Lclthinmeanzse=.TRUE.
1231 IF (xios_field_is_active("clzopaquecalipsose")) Lclzopaquecalipsose=.TRUE.
1232!!!! 43 champs CALIPSO
1233
1234 IF (xios_field_is_active("parasolGrid_refl")) LparasolRefl=.TRUE.
1235 IF (xios_field_is_active("parasolPix_refl")) LparasolRefl=.TRUE.
1236!!!! 2 champs PARASOL controles par une seule clef logique
1237
1238 IF (xios_field_is_active("lidarBetaMol532gr")) LlidarBetaMol532gr=.TRUE.
1239 IF (xios_field_is_active("cfadLidarsr532gr")) LcfadLidarsr532gr=.TRUE.
1240 IF (xios_field_is_active("atb532gr")) Latb532gr=.TRUE.
1241 IF (xios_field_is_active("clgrLidar532")) LclgrLidar532=.TRUE.
1242 IF (xios_field_is_active("clhgrLidar532")) LclhgrLidar532=.TRUE.
1243 IF (xios_field_is_active("cllgrLidar532")) LcllgrLidar532=.TRUE.
1244 IF (xios_field_is_active("clmgrLidar532")) LclmgrLidar532=.TRUE.
1245 IF (xios_field_is_active("cltgrLidar532")) LcltgrLidar532=.TRUE.
1246!!!! 8 champs GROUND LIDAR 532 nm
1247
1248 IF (xios_field_is_active("lidarBetaMol355")) LlidarBetaMol355=.TRUE.
1249 IF (xios_field_is_active("cfadLidarsr355")) LcfadLidarsr355=.TRUE.
1250 IF (xios_field_is_active("atb355")) Latb355=.TRUE.
1251 IF (xios_field_is_active("clatlid")) Lclatlid=.TRUE.
1252 IF (xios_field_is_active("clhatlid")) Lclhatlid=.TRUE.
1253 IF (xios_field_is_active("cllatlid")) Lcllatlid=.TRUE.
1254 IF (xios_field_is_active("clmatlid")) Lclmatlid=.TRUE.
1255 IF (xios_field_is_active("cltatlid")) Lcltatlid=.TRUE.
1256!!!! 8 champs ATLID
1257
1258 IF (xios_field_is_active("cfadDbze94")) LcfadDbze94=.TRUE.
1259 IF (xios_field_is_active("dbze94")) Ldbze94=.TRUE.
1260 IF (xios_field_is_active("ptradarflag0")) Lptradarflag0=.TRUE.
1261 IF (xios_field_is_active("ptradarflag1")) Lptradarflag1=.TRUE.
1262 IF (xios_field_is_active("ptradarflag2")) Lptradarflag2=.TRUE.
1263 IF (xios_field_is_active("ptradarflag3")) Lptradarflag3=.TRUE.
1264 IF (xios_field_is_active("ptradarflag4")) Lptradarflag4=.TRUE.
1265 IF (xios_field_is_active("ptradarflag5")) Lptradarflag5=.TRUE.
1266 IF (xios_field_is_active("ptradarflag6")) Lptradarflag6=.TRUE.
1267 IF (xios_field_is_active("ptradarflag7")) Lptradarflag7=.TRUE.
1268 IF (xios_field_is_active("ptradarflag8")) Lptradarflag8=.TRUE.
1269 IF (xios_field_is_active("ptradarflag9")) Lptradarflag9=.TRUE.
1270 IF (xios_field_is_active("radarpia")) Lradarpia=.TRUE.
1271!!! 13 champs CLOUDSAT
1272
1273 IF (xios_field_is_active("cltlidarradar")) Lcltlidarradar=.TRUE.
1274 IF (xios_field_is_active("clcalipso2")) Lclcalipso2=.TRUE.
1275 IF (xios_field_is_active("cloudsat_tcc")) Lcloudsat_tcc=.TRUE. !COSPv2
1276 IF (xios_field_is_active("cloudsat_tcc2")) Lcloudsat_tcc2=.TRUE. !COSPv2
1277!!! 4 champs CLOUDSAT et CALIPSO
1278
1279 IF (xios_field_is_active("clisccp")) Lclisccp=.TRUE.
1280 IF (xios_field_is_active("boxtauisccp")) Lboxtauisccp=.TRUE.
1281 IF (xios_field_is_active("boxptopisccp")) Lboxptopisccp=.TRUE.
1282 IF (xios_field_is_active("cltisccp")) Lcltisccp=.TRUE.
1283 IF (xios_field_is_active("pctisccp")) Lpctisccp=.TRUE.
1284 IF (xios_field_is_active("tauisccp")) Ltauisccp=.TRUE.
1285 IF (xios_field_is_active("albisccp")) Lalbisccp=.TRUE.
1286 IF (xios_field_is_active("meantbisccp")) Lmeantbisccp=.TRUE.
1287 IF (xios_field_is_active("meantbclrisccp")) Lmeantbclrisccp=.TRUE.
1288!!! 9 champs ISCCP
1289
1290 IF (xios_field_is_active("misr_fq")) LclMISR=.TRUE.
1291 IF (xios_field_is_active("misr_meanztop")) LclMISR=.TRUE.
1292 IF (xios_field_is_active("misr_cldarea")) LclMISR=.TRUE.
1293!!! 3 champs MISR controles par une seule clef logique
1294
1295 IF (xios_field_is_active("cllmodis")) Lcllmodis=.TRUE.
1296 IF (xios_field_is_active("clmmodis")) Lclmmodis=.TRUE.
1297 IF (xios_field_is_active("clhmodis")) Lclhmodis=.TRUE.
1298 IF (xios_field_is_active("cltmodis")) Lcltmodis=.TRUE.
1299 IF (xios_field_is_active("clwmodis")) Lclwmodis=.TRUE.
1300 IF (xios_field_is_active("climodis")) Lclimodis=.TRUE.
1301 IF (xios_field_is_active("tautmodis")) Ltautmodis=.TRUE.
1302 IF (xios_field_is_active("tauwmodis")) Ltauwmodis=.TRUE.
1303 IF (xios_field_is_active("tauimodis")) Ltauimodis=.TRUE.
1304 IF (xios_field_is_active("tautlogmodis")) Ltautlogmodis=.TRUE.
1305 IF (xios_field_is_active("tauilogmodis")) Ltauilogmodis=.TRUE.
1306 IF (xios_field_is_active("tauwlogmodis")) Ltauwlogmodis=.TRUE.
1307 IF (xios_field_is_active("reffclwmodis")) Lreffclwmodis=.TRUE.
1308 IF (xios_field_is_active("reffclimodis")) Lreffclimodis=.TRUE.
1309 IF (xios_field_is_active("pctmodis")) Lpctmodis=.TRUE.
1310 IF (xios_field_is_active("lwpmodis")) Llwpmodis=.TRUE.
1311 IF (xios_field_is_active("iwpmodis")) Liwpmodis=.TRUE.
1312 IF (xios_field_is_active("modis_ot_vs_ctp")) Lclmodis=.TRUE.
1313 IF (xios_field_is_active("modis_ot_vs_reffice")) Lclmodis=.TRUE.
1314 IF (xios_field_is_active("modis_ot_vs_reffliq")) Lclmodis=.TRUE.
1315! IF (xios_field_is_active("crimodis")) Lcrimodis=.TRUE. !COSPv2
1316! IF (xios_field_is_active("crlmodis")) Lcrlmodis=.TRUE. !COSPv2
1317!!! 20 champs MODIS dont 3 champs controles par la clef logique "clmodis"
1318
1319! IF (xios_field_is_active("tbrttov")) cfg%Ltbrttov=.TRUE.
1320! IF (xios_field_is_active("fracout")) Lfracout=.TRUE.
1321
1322!!! 106 diagnostics en tout dans COSPv2 + fracout (107)
1323
1324
1325! 2.  si champs demande alors activer le simulateur correspondant
1326   IF (xios_field_is_active("cllcalipso").OR. &
1327       xios_field_is_active("clmcalipso").OR. &
1328       xios_field_is_active("clhcalipso").OR. &
1329       xios_field_is_active("cltcalipso").OR. &
1330       xios_field_is_active("cllcalipsoice").OR. &
1331       xios_field_is_active("clmcalipsoice").OR. &
1332       xios_field_is_active("clhcalipsoice").OR. &
1333       xios_field_is_active("cltcalipsoice").OR. &
1334       xios_field_is_active("cllcalipsoliq").OR. &
1335       xios_field_is_active("clmcalipsoliq").OR. &
1336       xios_field_is_active("clhcalipsoliq").OR. &
1337       xios_field_is_active("cltcalipsoliq").OR. &
1338       xios_field_is_active("cllcalipsoun").OR. &
1339       xios_field_is_active("clmcalipsoun").OR. &
1340       xios_field_is_active("clhcalipsoun").OR. &
1341       xios_field_is_active("cltcalipsoun").OR. &
1342       xios_field_is_active("clcalipso").OR. &
1343       xios_field_is_active("clcalipsoice").OR. &
1344       xios_field_is_active("clcalipsoliq").OR. &
1345       xios_field_is_active("clcalipsoun").OR. &
1346       xios_field_is_active("clcalipsotmp").OR. &
1347       xios_field_is_active("clcalipsotmpice").OR. &
1348       xios_field_is_active("clcalipsotmpliq").OR. &
1349       xios_field_is_active("clcalipsotmpun").OR. &
1350       xios_field_is_active("cfadLidarsr532").OR. &
1351       xios_field_is_active("atb532").OR. &
1352       xios_field_is_active("lidarBetaMol532").OR. &
1353       xios_field_is_active("clopaquecalipso").OR. &
1354       xios_field_is_active("clthincalipso").OR. &
1355       xios_field_is_active("clzopaquecalipso").OR. &
1356       xios_field_is_active("clcalipsoopaque").OR. &
1357       xios_field_is_active("clcalipsothin").OR. &
1358       xios_field_is_active("clcalipsozopaque").OR. &
1359       xios_field_is_active("clcalipsoopacity").OR. &
1360       xios_field_is_active("clopaquetemp").OR. &
1361       xios_field_is_active("clthintemp").OR. &
1362       xios_field_is_active("clzopaquetemp").OR. &
1363       xios_field_is_active("clopaquemeanz").OR. &
1364       xios_field_is_active("clthinmeanz").OR. &
1365       xios_field_is_active("clthinemis").OR. &
1366       xios_field_is_active("clopaquemeanzse").OR. &
1367       xios_field_is_active("clthinmeanzse").OR. &
1368       xios_field_is_active("clzopaquecalipsose"))  Lcalipso=.TRUE.
1369
1370    IF (xios_field_is_active("parasolGrid_refl").OR. &
1371       xios_field_is_active("parasolPix_refl")) Lparasol=.TRUE.
1372
1373   IF (xios_field_is_active("lidarBetaMol532gr").OR. &
1374       xios_field_is_active("cfadLidarsr532gr").OR. &
1375       xios_field_is_active("atb532gr").OR. &
1376       xios_field_is_active("clgrLidar532").OR. &
1377       xios_field_is_active("clhgrLidar532").OR. &
1378       xios_field_is_active("cllgrLidar532").OR. &
1379       xios_field_is_active("clmgrLidar532").OR. &
1380       xios_field_is_active("cltgrLidar532"))  LgrLidar532=.TRUE.
1381
1382   IF (xios_field_is_active("lidarBetaMol355").OR. &
1383       xios_field_is_active("cfadLidarsr355").OR. &
1384       xios_field_is_active("atb355").OR. &
1385       xios_field_is_active("clatlid").OR. &
1386       xios_field_is_active("clhatlid").OR. &
1387       xios_field_is_active("cllatlid").OR. &
1388       xios_field_is_active("clmatlid").OR. &
1389       xios_field_is_active("cltatlid"))  Latlid=.TRUE.
1390
1391    IF (xios_field_is_active("cfadDbze94").OR. &
1392      xios_field_is_active("dbze94").OR. &
1393      xios_field_is_active("ptradarflag0").OR. &
1394      xios_field_is_active("ptradarflag1").OR. &
1395      xios_field_is_active("ptradarflag2").OR. &
1396      xios_field_is_active("ptradarflag3").OR. &
1397      xios_field_is_active("ptradarflag4").OR. &
1398      xios_field_is_active("ptradarflag5").OR. &
1399      xios_field_is_active("ptradarflag6").OR. &
1400      xios_field_is_active("ptradarflag7").OR. &
1401      xios_field_is_active("ptradarflag8").OR. &
1402      xios_field_is_active("ptradarflag9").OR. &
1403      xios_field_is_active("radarpia")) Lcloudsat=.TRUE.
1404
1405    IF (xios_field_is_active("cltlidarradar").OR. &
1406      xios_field_is_active("clcalipso2").OR. &
1407      xios_field_is_active("cloudsat_tcc").OR. &
1408      xios_field_is_active("cloudsat_tcc2")) THEN
1409               Lcloudsat=.TRUE.
1410               Lcalipso=.TRUE.
1411    ENDIF
1412
1413    IF (xios_field_is_active("clisccp").OR. &     !COSPv2 nouveau nom
1414       xios_field_is_active("boxtauisccp").OR. &
1415       xios_field_is_active("boxptopisccp").OR. &
1416       xios_field_is_active("cltisccp").OR. &     !COSPv2 nouveau nom
1417       xios_field_is_active("pctisccp").OR. &     !COSPv2 nouveau nom
1418       xios_field_is_active("tauisccp").OR. &
1419       xios_field_is_active("albisccp").OR. &
1420       xios_field_is_active("meantbisccp").OR. &
1421       xios_field_is_active("meantbclrisccp")) Lisccp=.TRUE.
1422
1423    IF (xios_field_is_active("misr_fq").OR. &
1424       xios_field_is_active("misr_meanztop").OR. &
1425       xios_field_is_active("misr_cldarea")) Lmisr=.TRUE.
1426
1427    IF (xios_field_is_active("cllmodis").OR. &
1428       xios_field_is_active("clmmodis").OR. &
1429       xios_field_is_active("clhmodis").OR. &
1430       xios_field_is_active("cltmodis").OR. &
1431       xios_field_is_active("clwmodis").OR. &
1432       xios_field_is_active("climodis").OR. &
1433       xios_field_is_active("tautmodis").OR. &
1434       xios_field_is_active("tauwmodis").OR. &
1435       xios_field_is_active("tauimodis").OR. &
1436       xios_field_is_active("tautlogmodis").OR. &
1437       xios_field_is_active("tauilogmodis").OR. &
1438       xios_field_is_active("tauwlogmodis").OR. &
1439       xios_field_is_active("reffclwmodis").OR. &
1440       xios_field_is_active("reffclimodis").OR. &
1441       xios_field_is_active("pctmodis").OR. &
1442       xios_field_is_active("lwpmodis").OR. &
1443       xios_field_is_active("iwpmodis").OR. &
1444       xios_field_is_active("modis_ot_vs_ctp").OR. &
1445       xios_field_is_active("modis_ot_vs_reffice").OR. &
1446       xios_field_is_active("modis_ot_vs_reffliq")) Lmodis=.TRUE.
1447!       xios_field_is_active("crimodis").OR. &              !COSPv2 n'existe plus
1448!       xios_field_is_active("crlmodis")) Lmodis_sim=.TRUE. !COSPv2 n'existe plus
1449
1450  ENDIF !   (is_master)
1451
1452!$OMP BARRIER
1453
1454  CALL bcast(Lcloudsat)
1455  CALL bcast(Lcalipso)
1456  CALL bcast(LgrLidar532)
1457  CALL bcast(Latlid)
1458  CALL bcast(Lisccp)
1459  CALL bcast(Lmodis)
1460  CALL bcast(Lmisr)
1461  CALL bcast(Lparasol)
1462  CALL bcast(Lrttov)
1463
1464  CALL bcast(Lcfaddbze94)
1465  CALL bcast(Ldbze94)
1466  CALL bcast(Latb532)
1467  CALL bcast(LcfadLidarsr532)
1468  CALL bcast(Lclcalipso)
1469  CALL bcast(Lclhcalipso)
1470  CALL bcast(Lcllcalipso)
1471  CALL bcast(Lclmcalipso)
1472  CALL bcast(Lcltcalipso)
1473  CALL bcast(LparasolRefl)
1474  CALL bcast(Lclcalipsoliq)
1475  CALL bcast(Lclcalipsoice)
1476  CALL bcast(Lclcalipsoun)
1477  CALL bcast(Lclcalipsotmp)
1478  CALL bcast(Lclcalipsotmpliq)
1479  CALL bcast(Lclcalipsotmpice)
1480  CALL bcast(Lclcalipsotmpun)
1481  CALL bcast(Lclhcalipsoliq)
1482  CALL bcast(Lcllcalipsoliq)
1483  CALL bcast(Lclmcalipsoliq)
1484  CALL bcast(Lcltcalipsoliq)
1485  CALL bcast(Lclhcalipsoice)
1486  CALL bcast(Lcllcalipsoice)
1487  CALL bcast(Lclmcalipsoice)
1488  CALL bcast(Lcltcalipsoice)
1489  CALL bcast(Lclhcalipsoun)
1490  CALL bcast(Lcllcalipsoun)
1491  CALL bcast(Lclmcalipsoun)
1492  CALL bcast(Lcltcalipsoun)
1493  CALL bcast(Lclopaquecalipso)
1494  CALL bcast(Lclthincalipso)
1495  CALL bcast(Lclzopaquecalipso)
1496  CALL bcast(Lclcalipsoopaque)
1497  CALL bcast(Lclcalipsothin)
1498  CALL bcast(Lclcalipsozopaque)
1499  CALL bcast(Lclcalipsoopacity)
1500  CALL bcast(Lclopaquetemp)
1501  CALL bcast(Lclthintemp)
1502  CALL bcast(Lclzopaquetemp)
1503  CALL bcast(Lclopaquemeanz)
1504  CALL bcast(Lclthinmeanz)
1505  CALL bcast(Lclthinemis)
1506  CALL bcast(Lclopaquemeanzse)
1507  CALL bcast(Lclthinmeanzse)
1508  CALL bcast(Lclzopaquecalipsose)
1509  CALL bcast(LlidarBetaMol532gr)
1510  CALL bcast(LcfadLidarsr532gr)
1511  CALL bcast(Latb532gr)
1512  CALL bcast(LclgrLidar532)
1513  CALL bcast(LclhgrLidar532)
1514  CALL bcast(LcllgrLidar532)
1515  CALL bcast(LclmgrLidar532)
1516  CALL bcast(LcltgrLidar532)
1517  CALL bcast(LlidarBetaMol355)
1518  CALL bcast(LcfadLidarsr355)
1519  CALL bcast(Latb355)
1520  CALL bcast(Lclatlid)
1521  CALL bcast(Lclhatlid)
1522  CALL bcast(Lcllatlid)
1523  CALL bcast(Lclmatlid)
1524  CALL bcast(Lcltatlid)
1525  CALL bcast(Lalbisccp)
1526  CALL bcast(Lboxptopisccp)
1527  CALL bcast(Lboxtauisccp)
1528  CALL bcast(Lpctisccp)
1529  CALL bcast(Lclisccp)
1530  CALL bcast(Ltauisccp)
1531  CALL bcast(Lcltisccp)
1532  CALL bcast(Lmeantbisccp)
1533  CALL bcast(Lmeantbclrisccp)
1534  CALL bcast(LclMISR)
1535  CALL bcast(Lclcalipso2)
1536  CALL bcast(Lcltlidarradar)
1537  CALL bcast(Lcloudsat_tcc)
1538  CALL bcast(Lcloudsat_tcc2)
1539  CALL bcast(Lfracout)
1540  CALL bcast(LlidarBetaMol532)
1541  CALL bcast(Lcltmodis)
1542  CALL bcast(Lclwmodis)
1543  CALL bcast(Lclimodis)
1544  CALL bcast(Lclhmodis)
1545  CALL bcast(Lclmmodis)
1546  CALL bcast(Lcllmodis)
1547  CALL bcast(Ltautmodis)
1548  CALL bcast(Ltauwmodis)
1549  CALL bcast(Ltauimodis)
1550  CALL bcast(Ltautlogmodis)
1551  CALL bcast(Ltauwlogmodis)
1552  CALL bcast(Ltauilogmodis)
1553  CALL bcast(Lreffclwmodis)
1554  CALL bcast(Lreffclimodis)
1555  CALL bcast(Lpctmodis)
1556  CALL bcast(Llwpmodis)
1557  CALL bcast(Liwpmodis)
1558  CALL bcast(Lclmodis)
1559  CALL bcast(Ltbrttov)
1560  CALL bcast(Lptradarflag0)
1561  CALL bcast(Lptradarflag1)
1562  CALL bcast(Lptradarflag2)
1563  CALL bcast(Lptradarflag3)
1564  CALL bcast(Lptradarflag4)
1565  CALL bcast(Lptradarflag5)
1566  CALL bcast(Lptradarflag6)
1567  CALL bcast(Lptradarflag7)
1568  CALL bcast(Lptradarflag8)
1569  CALL bcast(Lptradarflag9)
1570  CALL bcast(Lradarpia)
1571
1572!    IF (xios_field_is_active("tbrttov")) cfg%Lrttov_sim=.TRUE.
1573
1574
1575  ! Copy diagnostic flags to cfg structure
1576! ISCCP simulator  (9 diagnostics)
1577   cfg%Lpctisccp = Lpctisccp
1578   cfg%Lclisccp = Lclisccp
1579   cfg%Lboxptopisccp = Lboxptopisccp
1580   cfg%Lboxtauisccp = Lboxtauisccp
1581   cfg%Ltauisccp = Ltauisccp
1582   cfg%Lcltisccp = Lcltisccp
1583   cfg%Lmeantbisccp = Lmeantbisccp
1584   cfg%Lmeantbclrisccp = Lmeantbclrisccp
1585   cfg%Lalbisccp = Lalbisccp
1586
1587! CloudSat simulator  (13 diagnostics)
1588   cfg%Ldbze94 = Ldbze94
1589   cfg%LcfadDbze94 = LcfadDbze94
1590   cfg%Lptradarflag0 = Lptradarflag0
1591   cfg%Lptradarflag1 = Lptradarflag1
1592   cfg%Lptradarflag2 = Lptradarflag2
1593   cfg%Lptradarflag3 = Lptradarflag3
1594   cfg%Lptradarflag4 = Lptradarflag4
1595   cfg%Lptradarflag5 = Lptradarflag5
1596   cfg%Lptradarflag6 = Lptradarflag6
1597   cfg%Lptradarflag7 = Lptradarflag7
1598   cfg%Lptradarflag8 = Lptradarflag8
1599   cfg%Lptradarflag9 = Lptradarflag9
1600   cfg%Lradarpia = Lradarpia
1601
1602! Cloudsat et Calipso  (4 diagnostics)
1603   cfg%Lclcalipso2 = Lclcalipso2
1604   cfg%Lcltlidarradar = Lcltlidarradar
1605   cfg%Lcloudsat_tcc = Lcloudsat_tcc
1606   cfg%Lcloudsat_tcc2 = Lcloudsat_tcc2
1607
1608! CALIPSO simulator  (43 diagnostics)
1609   cfg%Latb532 = Latb532
1610   cfg%LlidarBetaMol532 = LlidarBetaMol532
1611   cfg%LcfadLidarsr532 = LcfadLidarsr532
1612   cfg%Lclcalipso = Lclcalipso
1613   cfg%Lclhcalipso = Lclhcalipso
1614   cfg%Lcllcalipso = Lcllcalipso
1615   cfg%Lclmcalipso = Lclmcalipso
1616   cfg%Lcltcalipso = Lcltcalipso
1617   cfg%Lclcalipsoliq = Lclcalipsoliq
1618   cfg%Lclcalipsoice = Lclcalipsoice
1619   cfg%Lclcalipsoun = Lclcalipsoun
1620   cfg%Lclcalipsotmp = Lclcalipsotmp
1621   cfg%Lclcalipsotmpliq = Lclcalipsotmpliq
1622   cfg%Lclcalipsotmpice = Lclcalipsotmpice
1623   cfg%Lclcalipsotmpun = Lclcalipsotmpun
1624   cfg%Lcltcalipsoliq = Lcltcalipsoliq
1625   cfg%Lcltcalipsoice = Lcltcalipsoice
1626   cfg%Lcltcalipsoun = Lcltcalipsoun
1627   cfg%Lclhcalipsoliq = Lclhcalipsoliq
1628   cfg%Lclhcalipsoice = Lclhcalipsoice
1629   cfg%Lclhcalipsoun = Lclhcalipsoun
1630   cfg%Lclmcalipsoliq = Lclmcalipsoliq
1631   cfg%Lclmcalipsoice = Lclmcalipsoice
1632   cfg%Lclmcalipsoun = Lclmcalipsoun
1633   cfg%Lcllcalipsoliq = Lcllcalipsoliq
1634   cfg%Lcllcalipsoice = Lcllcalipsoice
1635   cfg%Lcllcalipsoun = Lcllcalipsoun
1636   cfg%Lclopaquecalipso = Lclopaquecalipso
1637   cfg%Lclthincalipso = Lclthincalipso
1638   cfg%Lclzopaquecalipso = Lclzopaquecalipso
1639   cfg%Lclcalipsoopaque = Lclcalipsoopaque
1640   cfg%Lclcalipsothin = Lclcalipsothin
1641   cfg%Lclcalipsozopaque = Lclcalipsozopaque
1642   cfg%Lclcalipsoopacity = Lclcalipsoopacity
1643   cfg%Lclopaquetemp = Lclopaquetemp
1644   cfg%Lclthintemp = Lclthintemp
1645   cfg%Lclzopaquetemp = Lclzopaquetemp
1646   cfg%Lclopaquemeanz = Lclopaquemeanz
1647   cfg%Lclthinmeanz = Lclthinmeanz
1648   cfg%Lclthinemis = Lclthinemis
1649   cfg%Lclopaquemeanzse = Lclopaquemeanzse
1650   cfg%Lclthinmeanzse = Lclthinmeanzse
1651   cfg%Lclzopaquecalipsose = Lclzopaquecalipsose
1652
1653! PARASOL simulator  (2 diagnostics, 1 clef)
1654   cfg%Lparasolrefl = Lparasolrefl
1655
1656! GROUND LIDAR 532 nm simulator  (8 diagnostics)
1657   cfg%Latb532gr = Latb532gr
1658   cfg%LlidarBetaMol532gr = LlidarBetaMol532gr
1659   cfg%LcfadLidarsr532gr = LcfadLidarsr532gr
1660   cfg%LclgrLidar532 = LclgrLidar532
1661   cfg%LclhgrLidar532 = LclhgrLidar532
1662   cfg%LcllgrLidar532 = LcllgrLidar532
1663   cfg%LclmgrLidar532 = LclmgrLidar532
1664   cfg%LcltgrLidar532 = LcltgrLidar532
1665
1666! ATLID simulator  (8 diagnostics)
1667   cfg%Latb355 = Latb355
1668   cfg%LlidarBetaMol355 = LlidarBetaMol355
1669   cfg%LcfadLidarsr355 = LcfadLidarsr355
1670   cfg%Lclatlid = Lclatlid
1671   cfg%Lclhatlid = Lclhatlid
1672   cfg%Lcllatlid = Lcllatlid
1673   cfg%Lclmatlid = Lclmatlid
1674   cfg%Lcltatlid = Lcltatlid
1675
1676! MISR simulator   (3 diagnostics, 1 clef)
1677  cfg%LclMISR = LclMISR
1678
1679! RTTOV  (1 diagnostic)
1680  cfg%Ltbrttov = Ltbrttov
1681
1682! MODIS simulator   (20 diagnostics, 18 clefs)
1683  cfg%Lcltmodis=Lcltmodis
1684  cfg%Lclwmodis=Lclwmodis
1685  cfg%Lclimodis=Lclimodis
1686  cfg%Lclhmodis=Lclhmodis
1687  cfg%Lclmmodis=Lclmmodis
1688  cfg%Lcllmodis=Lcllmodis
1689  cfg%Ltautmodis=Ltautmodis
1690  cfg%Ltauwmodis=Ltauwmodis
1691  cfg%Ltauimodis=Ltauimodis
1692  cfg%Ltautlogmodis=Ltautlogmodis
1693  cfg%Ltauwlogmodis=Ltauwlogmodis
1694  cfg%Ltauilogmodis=Ltauilogmodis
1695  cfg%Lreffclwmodis=Lreffclwmodis
1696  cfg%Lreffclimodis=Lreffclimodis
1697  cfg%Lpctmodis=Lpctmodis
1698  cfg%Llwpmodis=Llwpmodis
1699  cfg%Liwpmodis=Liwpmodis
1700  cfg%Lclmodis=Lclmodis
1701
1702! Others
1703  cfg%Lfracout=Lfracout
1704
1705! Copy instrument flags to cfg structure
1706  cfg%Lcloudsat = Lcloudsat
1707  cfg%Lcalipso = Lcalipso
1708  cfg%LgrLidar532 = LgrLidar532
1709  cfg%Latlid = Latlid
1710  cfg%Lparasol = Lparasol
1711  cfg%Lisccp = Lisccp
1712  cfg%Lmodis = Lmodis
1713  cfg%Lmisr = Lmisr
1714  cfg%Lrttov = Lrttov
1715  if (cfg%Lcloudsat .or. cfg%Lcalipso .or. cfg%LgrLidar532 .or. cfg%Latlid .or. cfg%Lisccp .or. cfg%Lmodis .or. cfg%Lmisr .or. cfg%Lrttov .or. cfg%Lparasol .or. cfg%Lfracout) then
1716   cfg%Lwrite_output=.TRUE.
1717 endif
1718
1719#endif
1720
1721  END SUBROUTINE read_xiosfieldactive
1722
1723END MODULE lmdz_cosp_read_outputkeys
Note: See TracBrowser for help on using the repository browser.