29      LOGICAL,
DIMENSION(3)                 :: cles             
 
   30      CHARACTER(len=20)                    :: name       
 
   31      CHARACTER(len=150)                   :: description      
 
   33      CHARACTER(len=20),
DIMENSION(3)  :: cosp_typeecrit        
 
   37          "cllcalipso", 
"Lidar Low-level Cloud Fraction", 
"1", (/ (
'', 
i=1, 3) /))                                   
 
   39          "clmcalipso", 
"Lidar Mid-level Cloud Fraction", 
"1", (/ (
'', 
i=1, 3) /))
 
   41          "clhcalipso", 
"Lidar Hight-level Cloud Fraction", 
"1", (/ (
'', 
i=1, 3) /))
 
   43          "cltcalipso", 
"Lidar Total Cloud Fraction", 
"1", (/ (
'', 
i=1, 3) /)) 
 
   45          "clcalipso", 
"Lidar Cloud Fraction (532 nm)", 
"1", (/ (
'', 
i=1, 3) /))
 
   47          "cfad_lidarsr532", 
"Lidar Scattering Ratio CFAD (532 nm)", 
"1", (/ (
'', 
i=1, 3) /))   
 
   49          "parasol_refl", 
"PARASOL-like mono-directional reflectance",
"1", (/ (
'', 
i=1, 3) /))
 
   51          "parasol_crefl", 
"PARASOL-like mono-directional reflectance (integral)",
"1", (/ (
'', 
i=1, 3) /))                  
 
   53          "Ncrefl", 
"Nb PARASOL-like mono-directional reflectance (integral)",
"1", (/ (
'', 
i=1, 3) /))
 
   55          "atb532", 
"Lidar Attenuated Total Backscatter (532 nm)",
"1", (/ (
'', 
i=1, 3) /))
 
   57          "beta_mol532", 
"Lidar Molecular Backscatter (532 nm)",
"m-1 sr-1", (/ (
'', 
i=1, 3) /))
 
   60          "sunlit", 
"1 for day points, 0 for nightime",
"1",(/ (
'', 
i=1, 3) /))                   
 
   62          "clisccp2", 
"Cloud Fraction as Calculated by the ISCCP Simulator",
"1", (/ (
'', 
i=1, 3) /))
 
   64          "boxtauisccp", 
"Optical Depth in Each Column as Calculated by the ISCCP Simulator",
"1", (/ (
'', 
i=1, 3) /))
 
   66          "boxptopisccp", 
"Cloud Top Pressure in Each Column as Calculated by the ISCCP Simulator",
"Pa", (/ (
'', 
i=1, 3) /))
 
   68           "tclisccp", 
"Total Cloud Fraction as Calculated by the ISCCP Simulator", 
"1", (/ (
'', 
i=1, 3) /)) 
 
   70           "ctpisccp", 
"Mean Cloud Top Pressure as Calculated by the ISCCP Simulator", 
"Pa", (/ (
'', 
i=1, 3) /))
 
   72           "tauisccp", 
"Optical Depth as Calculated by the ISCCP Simulator", 
"1", (/ (
'', 
i=1, 3) /))
 
   74           "albisccp", 
"Mean Cloud Albedo as Calculated by the ISCCP Simulator", 
"1", (/ (
'', 
i=1, 3) /))
 
   76           "meantbisccp", 
" Mean all-sky 10.5 micron brightness temperature as calculated & 
   77            by the ISCCP Simulator",
"K", (/ (
'', 
i=1, 3) /))
 
   79           "meantbclrisccp", 
"Mean clear-sky 10.5 micron brightness temperature as calculated & 
   80            by the ISCCP Simulator",
"K", (/ (
'', 
i=1, 3) /))
 
   94   SUBROUTINE cosp_output_open(Nlevlmdz, Ncolumns, presnivs, dtime, freq_cosp, &
 
   95                               ok_mensuelcosp, ok_journecosp, ok_hfcosp, ok_all_xml,  &
 
   96                               ecrit_mth, ecrit_day, ecrit_hf, use_vgrid, vgrid)
 
  113   integer                  :: Nlevlmdz, Ncolumns      
 
  114   real,
dimension(Nlevlmdz) :: presnivs
 
  115   real                     :: dtime, freq_cosp, ecrit_day, ecrit_hf, ecrit_mth 
 
  116   logical                  :: ok_mensuelCOSP, ok_journeCOSP, ok_hfCOSP, use_vgrid, ok_all_xml                    
 
  120   integer                  :: idayref, iff, ii
 
  121   real                     :: zjulian,zjulian_start
 
  122   real,
dimension(Ncolumns) :: column_ax
 
  123   CHARACTER(LEN=20), 
DIMENSION(3)  :: chfreq = (/ 
'1day', 
'1d', 
'3h' /)            
 
  129     INTEGER :: x_an, x_mois, x_jour
 
  131     INTEGER :: ini_an, ini_mois, ini_jour
 
  135     WRITE(
lunout,*) 
'Debut cosp_output_mod.F90' 
  140       column_ax(ii) = 
real(ii)
 
  191         CALL wxios_add_vaxis(
"height", vgrid%Nlvgrid, vgrid%z)
 
  196     WRITE(
lunout,*) 
'wxios_add_vaxis height_mlev, Nlevlmdz ',nlevlmdz
 
  197     CALL wxios_add_vaxis(
"height_mlev", nlevlmdz, vgrid%mz)
 
  200     WRITE(
lunout,*) 
'wxios_add_vaxis pressure2 ',7
 
  201     CALL wxios_add_vaxis(
"pressure2", 7, 
isccp_pc)
 
  202     WRITE(
lunout,*) 
'wxios_add_vaxis column ',ncolumns
 
  203     CALL wxios_add_vaxis(
"column", ncolumns, column_ax)
 
  214            print*,
'histbeg_phy nhoricosp(iff),cosp_nidfiles(iff)', &
 
  218         IF (.not. ok_all_xml) 
then 
  224 #ifndef CPP_IOIPSL_NO_OUTPUT  
type(ctrl_outcosp), save o_parasol_crefl
 
type(ctrl_outcosp), save o_clcalipso
 
type(ctrl_outcosp), save o_cltcalipso
 
real, save cosp_fill_value
 
integer, dimension(3), save nvertmcosp
 
!$Id zjulian!correction pour l heure initiale!jyg!jyg CALL ymds2ju(annee_ref, 1, day_ref, hour, zjulian)!jyg CALL histbeg_phy("histrac"
 
integer, parameter parasol_nrefl
 
type(ctrl_outcosp), save o_ctpisccp
 
integer, dimension(3), save nvert
 
logical, save cosp_varsdefined
 
integer, dimension(3), save nvertcol
 
type(ctrl_outcosp), save o_cllcalipso
 
integer, dimension(3), save nvertisccp
 
!$Id klon initialisation mois suivants day_rain itap ENDIF!Calcul fin de nday_rain calcul nday_rain itap DO i
 
type(ctrl_outcosp), save o_sunlit
 
!$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
 
logical, dimension(3), save cosp_outfilekeys
 
character(len=20), dimension(3), save cosp_outfiletypes
 
type(ctrl_outcosp), save o_cfad_lidarsr532
 
type(ctrl_outcosp), save o_clhcalipso
 
!$Id zjulian!correction pour l heure initiale!jyg!jyg CALL nid_tra CALL histvert(nid_tra,"presnivs","Vertical levels","Pa", klev, presnivs, nvert,"down") zsto
 
real, dimension(3), save zoutm_cosp
 
integer, dimension(3), save nhoricosp
 
real, dimension(3), save cosp_ecritfiles
 
type(ctrl_outcosp), save o_meantbclrisccp
 
type(ctrl_outcosp), save o_atb532
 
integer, dimension(3), save cosp_nidfiles
 
type(ctrl_outcosp), save o_beta_mol532
 
type(ctrl_outcosp), save o_tauisccp
 
real, save zdtimemoy_cosp
 
!$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
 
real, dimension(7), parameter isccp_pc
 
type(ctrl_outcosp), save o_meantbisccp
 
type(ctrl_outcosp), save o_clmcalipso
 
subroutine cosp_output_open(Nlevlmdz, Ncolumns, presnivs, dtime, freq_cosp, ok_mensuelCOSP, ok_journeCOSP, ok_hfCOSP, ok_all_xml, ecrit_mth, ecrit_day, ecrit_hf, use_vgrid, vgrid)
 
integer, dimension(3), save nvertp
 
type(ctrl_outcosp), save o_ncrefl
 
type(ctrl_outcosp), save o_albisccp
 
type(ctrl_outcosp), save o_boxtauisccp
 
!$Header!integer nvarmx s s unit
 
character(len=20), dimension(3), save cosp_outfilenames
 
type(ctrl_outcosp), save o_tclisccp
 
type(ctrl_outcosp), save o_boxptopisccp
 
!$Header!gestion des impressions de sorties et de débogage la sortie standard prt_level COMMON comprint lunout
 
type(ctrl_outcosp), save o_clisccp2
 
real, dimension(parasol_nrefl), parameter parasol_sza
 
type(ctrl_outcosp), save o_parasol_refl