8   character(len=*),
intent(in) :: cosp_nl
 
   13   logical, 
save ::   Lradar_sim,Llidar_sim,Lisccp_sim,Lmisr_sim,Lrttov_sim, &
 
   14              Lalbisccp,Latb532,Lboxptopisccp,Lboxtauisccp,Lcfad_dbze94, &
 
   15              Lcfad_lidarsr532,Lclcalipso2,Lclcalipso,Lclhcalipso,Lclisccp2,Lcllcalipso, &
 
   16              Lclmcalipso,Lcltcalipso,Lcltlidarradar,Lctpisccp,Ldbze94,Ltauisccp,Ltclisccp, &
 
   17              Llongitude,Llatitude,Lparasol_refl,LclMISR,Lmeantbisccp,Lmeantbclrisccp, &
 
   18              Lfrac_out,Lbeta_mol532,Ltbrttov
 
   20   namelist/cosp_output/lradar_sim,llidar_sim,lisccp_sim,lmisr_sim,lrttov_sim, &
 
   21              lalbisccp,latb532,lboxptopisccp,lboxtauisccp,lcfad_dbze94, &
 
   22              lcfad_lidarsr532,lclcalipso2,lclcalipso,lclhcalipso,lclisccp2, &
 
   23              lcllcalipso,lclmcalipso,lcltcalipso,lcltlidarradar,lctpisccp,ldbze94,ltauisccp, &
 
   24              ltclisccp,llongitude,llatitude,lparasol_refl,lclmisr,lmeantbisccp,lmeantbclrisccp, &
 
   25              lfrac_out,lbeta_mol532,ltbrttov
 
   32     open(10,file=cosp_nl,status=
'old')
 
   33     read(10,nml=cosp_output)
 
   37   CALL bcast(lradar_sim)
 
   38   CALL bcast(llidar_sim)
 
   39   CALL bcast(lisccp_sim)
 
   41   CALL bcast(lrttov_sim)
 
   44   CALL bcast(lboxptopisccp)
 
   45   CALL bcast(lboxtauisccp)
 
   46   CALL bcast(lcfad_dbze94)
 
   47   CALL bcast(lcfad_lidarsr532)
 
   48   CALL bcast(lclcalipso2)
 
   49   CALL bcast(lclcalipso)
 
   50   CALL bcast(lclhcalipso)
 
   52   CALL bcast(lcllcalipso)
 
   53   CALL bcast(lclmcalipso)
 
   54   CALL bcast(lcltcalipso)
 
   55   CALL bcast(lcltlidarradar)
 
   60   CALL bcast(llongitude)
 
   62   CALL bcast(lparasol_refl)
 
   64   CALL bcast(lmeantbisccp)
 
   65   CALL bcast(lmeantbclrisccp)
 
   67   CALL bcast(lbeta_mol532)
 
   76   if (.not.lradar_sim) 
then 
   77     lcfad_dbze94   = .
false.
 
   79     lcltlidarradar = .
false.
 
   82   if (.not.llidar_sim) 
then 
   84     lcfad_lidarsr532 = .
false.
 
   91     lcltlidarradar   = .
false.
 
   92     lparasol_refl    = .
false.
 
   93     lbeta_mol532     = .
false.
 
   95   if (.not.lisccp_sim) 
then 
   97     lboxptopisccp   = .
false.
 
   98     lboxtauisccp    = .
false.
 
  103     lmeantbisccp    = .
false.
 
  104     lmeantbclrisccp = .
false.
 
  106   if (.not.lmisr_sim) 
then 
  109   if (.not.lrttov_sim) 
then 
  112   if ((.not.lradar_sim).and.(.not.llidar_sim).and. &
 
  113       (.not.lisccp_sim).and.(.not.lmisr_sim)) 
then 
  118   if (((lclcalipso2).or.(lcltlidarradar)).and.((lradar_sim).or.(llidar_sim))) 
then 
  120     lcltlidarradar = .
true.
 
  126   if ((lradar_sim).or.(llidar_sim).or.(lisccp_sim)) cfg%Lstats = .
true.
 
  129   cfg%Lradar_sim = lradar_sim
 
  130   cfg%Llidar_sim = llidar_sim
 
  131   cfg%Lisccp_sim = lisccp_sim
 
  132   cfg%Lmisr_sim  = lmisr_sim
 
  133   cfg%Lrttov_sim = lrttov_sim
 
  136   cfg%Lwrite_output = .
false.
 
  137   if (cfg%Lstats.or.cfg%Lmisr_sim.or.cfg%Lrttov_sim) 
then 
  138     cfg%Lwrite_output = .
true.
 
  143   if (lalbisccp)        cfg%out_list(i) = 
'albisccp' 
  145   if (latb532)          cfg%out_list(i) = 
'atb532' 
  147   if (lboxptopisccp)    cfg%out_list(i) = 
'boxptopisccp' 
  149   if (lboxtauisccp)     cfg%out_list(i) = 
'boxtauisccp' 
  151   if (lcfad_dbze94)     cfg%out_list(i) = 
'cfad_dbze94' 
  153   if (lcfad_lidarsr532) cfg%out_list(i) = 
'cfad_lidarsr532' 
  155   if (lclcalipso2)      cfg%out_list(i) = 
'clcalipso2' 
  157   if (lclcalipso)       cfg%out_list(i) = 
'clcalipso' 
  159   if (lclhcalipso)      cfg%out_list(i) = 
'clhcalipso' 
  161   if (lclisccp2)        cfg%out_list(i) = 
'clisccp2' 
  163   if (lcllcalipso)      cfg%out_list(i) = 
'cllcalipso' 
  165   if (lclmcalipso)      cfg%out_list(i) = 
'clmcalipso' 
  167   if (lcltcalipso)      cfg%out_list(i) = 
'cltcalipso' 
  169   if (lcltlidarradar)   cfg%out_list(i) = 
'cltlidarradar' 
  171   if (lctpisccp)        cfg%out_list(i) = 
'ctpisccp' 
  173   if (ldbze94)          cfg%out_list(i) = 
'dbze94' 
  175   if (ltauisccp)        cfg%out_list(i) = 
'tauisccp' 
  177   if (ltclisccp)        cfg%out_list(i) = 
'tclisccp' 
  179   if (llongitude)       cfg%out_list(i) = 
'lon' 
  181   if (llatitude)        cfg%out_list(i) = 
'lat' 
  183   if (lparasol_refl)    cfg%out_list(i) = 
'parasol_refl' 
  185   if (lclmisr)          cfg%out_list(i) = 
'clMISR' 
  187   if (lmeantbisccp)     cfg%out_list(i) = 
'meantbisccp' 
  189   if (lmeantbclrisccp)  cfg%out_list(i) = 
'meantbclrisccp' 
  191   if (lfrac_out)        cfg%out_list(i) = 
'frac_out' 
  193   if (lbeta_mol532)     cfg%out_list(i) = 
'beta_mol532' 
  195   if (ltbrttov)         cfg%out_list(i) = 
'tbrttov' 
  198      print *, 
'COSP_IO: wrong number of output diagnostics' 
  203   cfg%Lalbisccp = lalbisccp
 
  204   cfg%Latb532 = latb532
 
  205   cfg%Lboxptopisccp = lboxptopisccp
 
  206   cfg%Lboxtauisccp = lboxtauisccp
 
  207   cfg%Lcfad_dbze94 = lcfad_dbze94
 
  208   cfg%Lcfad_lidarsr532 = lcfad_lidarsr532
 
  209   cfg%Lclcalipso2 = lclcalipso2
 
  210   cfg%Lclcalipso = lclcalipso
 
  211   cfg%Lclhcalipso = lclhcalipso
 
  212   cfg%Lclisccp2 = lclisccp2
 
  213   cfg%Lcllcalipso = lcllcalipso
 
  214   cfg%Lclmcalipso = lclmcalipso
 
  215   cfg%Lcltcalipso = lcltcalipso
 
  216   cfg%Lcltlidarradar = lcltlidarradar
 
  217   cfg%Lctpisccp = lctpisccp
 
  218   cfg%Ldbze94 = ldbze94
 
  219   cfg%Ltauisccp = ltauisccp
 
  220   cfg%Ltclisccp = ltclisccp
 
  221   cfg%Llongitude = llongitude
 
  222   cfg%Llatitude = llatitude
 
  223   cfg%Lparasol_refl = lparasol_refl
 
  224   cfg%LclMISR = lclmisr
 
  225   cfg%Lmeantbisccp = lmeantbisccp
 
  226   cfg%Lmeantbclrisccp = lmeantbclrisccp
 
  227   cfg%Lfrac_out = lfrac_out
 
  228   cfg%Lbeta_mol532 = lbeta_mol532
 
  229   cfg%Ltbrttov = ltbrttov
 
!IM Implemente en modes sequentiel et parallele CALL rlon_glo CALL bcast(rlon_glo)!$OMP MASTER if(is_mpi_root) then!zstophy
 
integer, parameter n_out_list
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true
 
subroutine read_cosp_output_nl(cosp_nl, cfg)