Changeset 2283


Ignore:
Timestamp:
May 18, 2015, 5:25:29 PM (9 years ago)
Author:
Laurent Fairhead
Message:

Backport of trunk revisions 2271, 2279, 2280, 2282 into LMDZ6_rc0 branch:

  • modifications for NMC/XIOS
Location:
LMDZ5/branches/LMDZ6_rc0
Files:
21 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/branches/LMDZ6_rc0/DefLists/field_def_lmdz.xml

    r2276 r2283  
    207207        <field id="alp_bl_conv"    long_name="ALP_BL_CONV"    unit="W/m2" />
    208208        <field id="alp_bl_stat"    long_name="ALP_BL_STAT"    unit="W/m2" />
    209         <field id="u850"    long_name="Zonal wind 1hPa"    unit="m/s" />
    210         <field id="u700"    long_name="Zonal wind 2hPa"    unit="m/s" />
    211         <field id="u500"    long_name="Zonal wind 3hPa"    unit="m/s" />
    212         <field id="u200"    long_name="Zonal wind 4hPa"    unit="m/s" />
    213         <field id="u100"    long_name="Zonal wind 5hPa"    unit="m/s" />
    214         <field id="u50"     long_name="Zonal wind 6hPa"    unit="m/s" />
    215         <field id="u10"     long_name="Zonal wind 7hPa"    unit="m/s" />
    216         <field id="v850"    long_name="Meridional wind 1hPa"    unit="m/s" />
    217         <field id="v700"    long_name="Meridional wind 2hPa"    unit="m/s" />
    218         <field id="v500"    long_name="Meridional wind 3hPa"    unit="m/s" />
    219         <field id="v200"    long_name="Meridional wind 4hPa"    unit="m/s" />
    220         <field id="v100"    long_name="Meridional wind 5hPa"    unit="m/s" />
    221         <field id="v50"     long_name="Meridional wind 6hPa"    unit="m/s" />
    222         <field id="v10"    long_name="Meridional wind 7hPa"    unit="m/s" />
    223         <field id="w850"    long_name="Vertical wind 1hPa"    unit="Pa/s" />
    224         <field id="w700"    long_name="Vertical wind 2hPa"    unit="Pa/s" />
    225         <field id="w500"    long_name="Vertical wind 3hPa"    unit="Pa/s" />
    226         <field id="w200"    long_name="Vertical wind 4hPa"    unit="Pa/s" />
    227         <field id="w100"    long_name="Vertical wind 5hPa"    unit="Pa/s" />
    228         <field id="w50"    long_name="Vertical wind 6hPa"    unit="Pa/s" />
    229         <field id="w10"    long_name="Vertical wind 7hPa"    unit="Pa/s" />
    230         <field id="t850"    long_name="Temperature 1hPa"    unit="K" />
    231         <field id="t700"    long_name="Temperature 2hPa"    unit="K" />
    232         <field id="t500"    long_name="Temperature 3hPa"    unit="K" />
    233         <field id="t200"    long_name="Temperature 4hPa"    unit="K" />
    234         <field id="t100"    long_name="Temperature 5hPa"    unit="K" />
    235         <field id="t50"    long_name="Temperature 6hPa"    unit="K" />
    236         <field id="t10"    long_name="Temperature 7hPa"    unit="K" />
    237         <field id="q850"    long_name="Specific humidity 1hPa"    unit="kg/kg" />
    238         <field id="q700"    long_name="Specific humidity 2hPa"    unit="kg/kg" />
    239         <field id="q500"    long_name="Specific humidity 3hPa"    unit="kg/kg" />
    240         <field id="q200"    long_name="Specific humidity 4hPa"    unit="kg/kg" />
    241         <field id="q100"    long_name="Specific humidity 5hPa"    unit="kg/kg" />
    242         <field id="q50"    long_name="Specific humidity 6hPa"    unit="kg/kg" />
    243         <field id="q10"    long_name="Specific humidity 7hPa"    unit="kg/kg" />
    244         <field id="z850"    long_name="Geopotential height 1hPa"    unit="m" />
    245         <field id="z700"    long_name="Geopotential height 2hPa"    unit="m" />
    246         <field id="z500"    long_name="Geopotential height 3hPa"    unit="m" />
    247         <field id="z200"    long_name="Geopotential height 4hPa"    unit="m" />
    248         <field id="z100"    long_name="Geopotential height 5hPa"    unit="m" />
    249         <field id="z50"    long_name="Geopotential height 6hPa"    unit="m" />
    250         <field id="z10"    long_name="Geopotential height 7hPa"    unit="m" />
     209        <field id="u850"    long_name="Zonal wind 850hPa"    unit="m/s" />
     210        <field id="u700"    long_name="Zonal wind 700hPa"    unit="m/s" />
     211        <field id="u500"    long_name="Zonal wind 500hPa"    unit="m/s" />
     212        <field id="u200"    long_name="Zonal wind 200hPa"    unit="m/s" />
     213        <field id="u100"    long_name="Zonal wind 100hPa"    unit="m/s" />
     214        <field id="u50"     long_name="Zonal wind 50hPa"    unit="m/s" />
     215        <field id="u10"     long_name="Zonal wind 10hPa"    unit="m/s" />
     216        <field id="v850"    long_name="Meridional wind 850hPa"    unit="m/s" />
     217        <field id="v700"    long_name="Meridional wind 700hPa"    unit="m/s" />
     218        <field id="v500"    long_name="Meridional wind 500hPa"    unit="m/s" />
     219        <field id="v200"    long_name="Meridional wind 200hPa"    unit="m/s" />
     220        <field id="v100"    long_name="Meridional wind 100hPa"    unit="m/s" />
     221        <field id="v50"     long_name="Meridional wind 50hPa"    unit="m/s" />
     222        <field id="v10"    long_name="Meridional wind 10hPa"    unit="m/s" />
     223        <field id="w850"    long_name="Vertical wind 850hPa"    unit="Pa/s" />
     224        <field id="w700"    long_name="Vertical wind 700hPa"    unit="Pa/s" />
     225        <field id="w500"    long_name="Vertical wind 500hPa"    unit="Pa/s" />
     226        <field id="w200"    long_name="Vertical wind 200hPa"    unit="Pa/s" />
     227        <field id="w100"    long_name="Vertical wind 100hPa"    unit="Pa/s" />
     228        <field id="w50"    long_name="Vertical wind 50hPa"    unit="Pa/s" />
     229        <field id="w10"    long_name="Vertical wind 10hPa"    unit="Pa/s" />
     230        <field id="t850"    long_name="Temperature 850hPa"    unit="K" />
     231        <field id="t700"    long_name="Temperature 700hPa"    unit="K" />
     232        <field id="t500"    long_name="Temperature 500hPa"    unit="K" />
     233        <field id="t200"    long_name="Temperature 200hPa"    unit="K" />
     234        <field id="t100"    long_name="Temperature 100hPa"    unit="K" />
     235        <field id="t50"    long_name="Temperature 50hPa"    unit="K" />
     236        <field id="t10"    long_name="Temperature 10hPa"    unit="K" />
     237        <field id="q850"    long_name="Specific humidity 850hPa"    unit="kg/kg" />
     238        <field id="q700"    long_name="Specific humidity 700hPa"    unit="kg/kg" />
     239        <field id="q500"    long_name="Specific humidity 500hPa"    unit="kg/kg" />
     240        <field id="q200"    long_name="Specific humidity 200hPa"    unit="kg/kg" />
     241        <field id="q100"    long_name="Specific humidity 100hPa"    unit="kg/kg" />
     242        <field id="q50"    long_name="Specific humidity 50hPa"    unit="kg/kg" />
     243        <field id="q10"    long_name="Specific humidity 10hPa"    unit="kg/kg" />
     244        <field id="z850"    long_name="Geopotential height 850hPa"    unit="m" />
     245        <field id="z700"    long_name="Geopotential height 700hPa"    unit="m" />
     246        <field id="z500"    long_name="Geopotential height 500hPa"    unit="m" />
     247        <field id="z200"    long_name="Geopotential height 200hPa"    unit="m" />
     248        <field id="z100"    long_name="Geopotential height 100hPa"    unit="m" />
     249        <field id="z50"    long_name="Geopotential height 50hPa"    unit="m" />
     250        <field id="z10"    long_name="Geopotential height 10hPa"    unit="m" />
    251251        <field id="t_oce_sic"    long_name="Temp mixte oce-sic"    unit="K" />
    252252        <field id="weakinv"    long_name="Weak inversion"    unit="-" />
     
    524524   
    525525    <field_group  id="fields_NMC" domain_ref="dom_glo" axis_ref="plev">
    526       <field id="tnondef" long_name="Undefined value of T" unit="K" />
     526<!--  <field id="tnondef" long_name="Undefined value of T" unit="K" /> -->
    527527      <field id="ta" long_name="Air temperature" unit="K" />
    528528      <field id="zg" long_name="Geopotential height" unit="m" />
     
    532532      <field id="va" long_name="Northward wind" unit="m s-1" />
    533533      <field id="wap" long_name="Lagrangian tendency of air pressure" unit="Pa s-1" />
    534       <field id="psbg" long_name="Pressure sfce below ground" unit="%" />
     534<!--  <field id="psbg" long_name="Pressure sfce below ground" unit="%" /> -->
    535535      <field id="tro3" long_name="Ozone mole fraction" unit="1e-9" />
    536536      <field id="tro3_daylight" long_name="Daylight ozone mole fraction" unit="1e-9" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histLES_lmdz.xml

    r2160 r2283  
    204204                <field field_ref="alp_bl_stat" level="10" />
    205205
    206                 <field_group operation="instant">
     206                <field_group operation="average" freq_op="1ts" detect_missing_value=".true.">
    207207                    <field field_ref="u850" level="10" />
    208208                    <field field_ref="u700" level="10" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histdayNMC_lmdz.xml

    r2160 r2283  
    55            <!-- VARS 3D -->
    66            <field_group operation="instant" freq_op="1ts" >
    7                 <field field_ref="tnondef" level="5" />
     7<!--            <field field_ref="tnondef" level="5" /> -->
    88                <field field_ref="ta" level="1" />
    99                <field field_ref="zg" level="5" />
     
    1313                <field field_ref="va" level="5" />
    1414                <field field_ref="wap" level="5" />
    15                 <field field_ref="psbg" level="5" />
     15<!--            <field field_ref="psbg" level="5" /> -->
    1616                <field field_ref="tro3" level="5" />
    1717                <field field_ref="tro3_daylight" level="5" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histday_lmdz.xml

    r2160 r2283  
    204204                <field field_ref="alp_bl_stat" level="1" />
    205205
    206                 <field_group operation="instant">
     206                <field_group operation="average" freq_op="1ts" detect_missing_value=".true.">
    207207                    <field field_ref="u850" level="7" />
    208208                    <field field_ref="u700" level="7" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histhfNMC_lmdz.xml

    r2160 r2283  
    55            <!-- VARS 3D -->
    66            <field_group operation="instant" freq_op="1ts" >
    7                 <field field_ref="tnondef" level="5" />
     7<!--            <field field_ref="tnondef" level="5" />  -->
    88                <field field_ref="ta" level="1" />
    99                <field field_ref="zg" level="5" />
     
    1313                <field field_ref="va" level="5" />
    1414                <field field_ref="wap" level="5" />
    15                 <field field_ref="psbg" level="5" />
     15<!--            <field field_ref="psbg" level="5" /> -->
    1616                <field field_ref="tro3" level="5" />
    1717                <field field_ref="tro3_daylight" level="5" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histhf_lmdz.xml

    r2160 r2283  
    11<file_definition>
    22    <file_group id="defile">
    3         <file id="histhf" name="Xhisthf" output_freq="1h" output_level="5" enabled=".FALSE.">
     3        <file id="histhf" name="histhf" output_freq="6h" output_level="5" enabled=".FALSE.">
    44           
    55            <!-- VARS 1D -->
     
    204204                <field field_ref="alp_bl_stat" level="10" />
    205205
    206                 <field_group operation="instant">
     206                <field_group operation="average" freq_op="1ts" detect_missing_value=".true.">
    207207                    <field field_ref="u850" level="10" />
    208208                    <field field_ref="u700" level="10" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histins_lmdz.xml

    r2160 r2283  
    11<file_definition>
    22    <file_group id="defile">
    3         <file id="histins" name="Xhistins" output_freq="6h" output_level="4" enabled=".FALSE.">
     3        <file id="histins" name="Xhistins" output_freq="1ts" output_level="4" enabled=".FALSE.">
    44           
    55            <!-- VARS 1D -->
     
    204204                <field field_ref="alp_bl_stat" level="1" />
    205205
    206                 <field_group operation="instant">
     206                <field_group operation="instant" freq_op="1ts" detect_missing_value=".true.">
    207207                    <field field_ref="u850" level="7" />
    208208                    <field field_ref="u700" level="7" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histmthNMC_lmdz.xml

    r2160 r2283  
    55            <!-- VARS 3D -->
    66            <field_group operation="instant" freq_op="1ts" >
    7                 <field field_ref="tnondef" level="5" />
     7<!--            <field field_ref="tnondef" level="5" />  -->
    88                <field field_ref="ta" level="1" />
    99                <field field_ref="zg" level="5" />
     
    1313                <field field_ref="va" level="5" />
    1414                <field field_ref="wap" level="5" />
    15                 <field field_ref="psbg" level="5" />
     15<!--            <field field_ref="psbg" level="5" />  -->
    1616                <field field_ref="tro3" level="5" />
    1717                <field field_ref="tro3_daylight" level="5" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histmth_lmdz.xml

    r2160 r2283  
    204204                <field field_ref="alp_bl_stat" level="1" />
    205205
    206                 <field_group operation="instant">
     206                <field_group operation="average" freq_op="1ts" detect_missing_value=".true.">
    207207                    <field field_ref="u850" level="1" />
    208208                    <field field_ref="u700" level="1" />
  • LMDZ5/branches/LMDZ6_rc0/DefLists/file_def_histstn_lmdz.xml

    r2160 r2283  
    204204                <field field_ref="alp_bl_stat" level="10" />
    205205
    206                 <field_group operation="instant">
     206                <field_group operation="average" freq_op="1ts" detect_missing_value=".true.">
    207207                    <field field_ref="u850" level="10" />
    208208                    <field field_ref="u700" level="10" />
  • LMDZ5/branches/LMDZ6_rc0/libf/bibio/wxios.F90

    r2160 r2283  
    2121    CHARACTER(len=100) :: g_field_name = "nofield"
    2222!$OMP THREADPRIVATE(g_flag_xml,g_field_name)
    23 
     23    REAL :: missing_val_omp
     24    REAL :: missing_val
     25!$OMP THREADPRIVATE(missing_val)
    2426
    2527    CONTAINS
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/calcul_STDlev.h

    r1921 r2283  
    44!IM on initialise les variables
    55!
    6         missing_val=nf90_fill_real
     6!       missing_val=nf90_fill_real
    77!
    88        CALL ini_undefSTD(itap,itapm1)
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/declare_STDlev.h

    r1910 r2283  
    5757      REAL zx_tmp_fiNC(klon,nlevSTD)
    5858
    59       REAL missing_val
     59!     REAL missing_val
    6060      REAL, SAVE :: freq_moyNMC(nout)
    6161!$OMP THREADPRIVATE(freq_moyNMC)
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/moy_undefSTD.F90

    r1999 r2283  
    55  USE netcdf
    66  USE dimphy
     7#ifdef CPP_IOIPSL
    78  USE phys_state_var_mod
     9#endif
     10
    811  USE phys_cal_mod, ONLY: mth_len
    912  IMPLICIT NONE
    1013  include "clesphys.h"
     14#ifdef CPP_IOIPSL
     15  REAL :: missing_val
     16#endif
    1117
    1218  ! ====================================================================
     
    5157  REAL un_jour
    5258  PARAMETER (un_jour=86400.)
    53   REAL missing_val
     59! REAL missing_val
    5460
    55   missing_val = nf90_fill_real
     61! missing_val = nf90_fill_real
     62#ifndef CPP_XIOS
     63      missing_val=missing_val_nf90
     64#endif
    5665
    5766  DO n = 1, nout
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/phys_output_ctrlout_mod.F90

    r2160 r2283  
    557557
    558558  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_wSTDlevs     = (/                    &
    559       ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w850', "Vertical wind 1hPa", "Pa/s", &
     559      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w850', "Vertical wind 850hPa", "Pa/s", &
    560560      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    561561      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'w700', "Vertical wind 700hPa", "Pa/s", &
     
    573573
    574574  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_tSTDlevs     = (/                    &
    575       ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t850', "Temperature 1hPa", "K",      &
     575      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t850', "Temperature 850hPa", "K",      &
    576576      (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    577577      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'t700', "Temperature 700hPa", "K",      &
     
    589589
    590590  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_qSTDlevs     = (/                             &
    591       ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q850', "Specific humidity 1hPa", &
     591      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q850', "Specific humidity 850hPa", &
    592592      "kg/kg", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    593593      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'q700', "Specific humidity 700hPa", &
     
    605605
    606606  TYPE(ctrl_out), SAVE, DIMENSION(7) :: o_zSTDlevs   = (/                           &
    607       ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z850', "Geopotential height 1hPa",        &
     607      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z850', "Geopotential height 850hPa",        &
    608608      "m", (/ 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)', 'inst(X)' /)), &
    609609      ctrl_out((/ 1, 7, 7, 10, 10, 10, 11, 11, 11 /),'z700', "Geopotential height 700hPa",        &
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/phys_output_write_mod.F90

    r2160 r2283  
    171171         vqsumSTD, vTsumSTD, O3daysumSTD, wqsumSTD, &
    172172         vphisumSTD, wTsumSTD, u2sumSTD, v2sumSTD, &
    173          T2sumSTD, nlevSTD, du_gwd_rando, dv_gwd_rando
     173         T2sumSTD, nlevSTD, du_gwd_rando, dv_gwd_rando, &
     174         ulevSTD, vlevSTD, wlevSTD, philevSTD, qlevSTD, tlevSTD, &
     175         rhlevSTD, O3STD, O3daySTD, uvSTD, vqSTD, vTSTD, wqSTD, &
     176         vphiSTD, wTSTD, u2STD, v2STD, T2STD, missing_val_nf90
    174177
    175178    USE phys_local_var_mod, only: zxfluxlat, slp, zxtsol, zt2m, &
     
    239242    ! ug Pour les sorties XIOS
    240243    USE xios, ONLY: xios_update_calendar
    241     USE wxios, only: wxios_closedef
     244    USE wxios, only: wxios_closedef, missing_val
    242245#endif
    243246    USE phys_cal_mod, only : mth_len
     
    285288    INTEGER, DIMENSION(iim*jjmp1*klev) :: ndex3d
    286289    REAL, PARAMETER :: dobson_u = 2.1415e-05 ! Dobson unit, in kg m-2
    287     REAL, PARAMETER :: missing_val=nf90_fill_real
     290!   REAL, PARAMETER :: missing_val=nf90_fill_real
     291#ifndef CPP_XIOS
     292    REAL :: missing_val
     293#endif
    288294    REAL, PARAMETER :: un_jour=86400.
    289295
     
    646652       !       ENDIF
    647653
     654#ifdef CPP_IOIPSL
     655#ifndef CPP_XIOS
     656  IF (.NOT.ok_all_xml) THEN
    648657       ! ATTENTION, LES ANCIENS HISTWRITE ONT ETES CONSERVES EN ATTENDANT MIEUX:
    649658       ! Champs interpolles sur des niveaux de pression
     659       missing_val=missing_val_nf90
    650660       DO iff=1, nfiles
    651661          ll=0
     
    669679          ENDDO
    670680       ENDDO
    671 
     681  ENDIF
     682#endif
     683#endif
     684#ifdef CPP_XIOS
     685  IF(ok_all_xml) THEN
     686!XIOS  CALL xios_get_field_attr("u850",default_value=missing_val)
     687!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     688          ll=0
     689          DO k=1, nlevSTD
     690             bb2=clevSTD(k)
     691             IF(bb2.EQ."850".OR.bb2.EQ."700".OR. &
     692                bb2.EQ."500".OR.bb2.EQ."200".OR. &
     693                bb2.EQ."100".OR. &
     694                bb2.EQ."50".OR.bb2.EQ."10") THEN
     695                ll=ll+1
     696                CALL histwrite_phy(o_uSTDlevs(ll),ulevSTD(:,k))
     697                CALL histwrite_phy(o_vSTDlevs(ll),vlevSTD(:,k))
     698                CALL histwrite_phy(o_wSTDlevs(ll),wlevSTD(:,k))
     699                CALL histwrite_phy(o_zSTDlevs(ll),philevSTD(:,k))
     700                CALL histwrite_phy(o_qSTDlevs(ll),qlevSTD(:,k))
     701                CALL histwrite_phy(o_tSTDlevs(ll),tlevSTD(:,k))
     702             ENDIF !(bb2.EQ."850".OR.bb2.EQ."700".OR.
     703          ENDDO
     704  ENDIF
     705#endif
    672706       IF (vars_defined) THEN
    673707          DO i=1, klon
     
    12511285       ENDIF
    12521286!!!!!!!!!!!! Sorties niveaux de pression NMC !!!!!!!!!!!!!!!!!!!!
     1287#ifdef CPP_IOIPSL
     1288#ifndef CPP_XIOS
     1289  IF (.NOT.ok_all_xml) THEN
     1290       ! ATTENTION, LES ANCIENS HISTWRITE ONT ETES CONSERVES EN ATTENDANT MIEUX:
     1291       ! Champs interpolles sur des niveaux de pression
     1292       missing_val=missing_val_nf90
    12531293       DO iff=7, nfiles
    12541294
     
    13141354          CALL histwrite_phy(o_TxT,T2sumSTD(:,:,iff-6),iff)
    13151355       ENDDO !nfiles
     1356  ENDIF
     1357#endif
     1358#endif
     1359#ifdef CPP_XIOS
     1360  IF(ok_all_xml) THEN
     1361!      DO iff=7, nfiles
     1362
     1363!         CALL histwrite_phy(o_tnondef,tnondef(:,:,3))
     1364          CALL histwrite_phy(o_ta,tlevSTD(:,:))
     1365          CALL histwrite_phy(o_zg,philevSTD(:,:))
     1366          CALL histwrite_phy(o_hus,qlevSTD(:,:))
     1367          CALL histwrite_phy(o_hur,rhlevSTD(:,:))
     1368          CALL histwrite_phy(o_ua,ulevSTD(:,:))
     1369          CALL histwrite_phy(o_va,vlevSTD(:,:))
     1370          CALL histwrite_phy(o_wap,wlevSTD(:,:))
     1371!         IF(vars_defined) THEN
     1372!            DO k=1, nlevSTD
     1373!               DO i=1, klon
     1374!                  IF(tnondef(i,k,3).NE.missing_val) THEN
     1375!                     IF(freq_outNMC(iff-6).LT.0) THEN
     1376!                        freq_moyNMC(iff-6)=(mth_len*un_jour)/freq_calNMC(iff-6)
     1377!                     ELSE
     1378!                        freq_moyNMC(iff-6)=freq_outNMC(iff-6)/freq_calNMC(iff-6)
     1379!                     ENDIF
     1380!                     zx_tmp_fi3d_STD(i,k) = (100.*tnondef(i,k,3))/freq_moyNMC(iff-6)
     1381!                  ELSE
     1382!                     zx_tmp_fi3d_STD(i,k) = missing_val
     1383!                  ENDIF
     1384!               ENDDO
     1385!            ENDDO
     1386!         ENDIF
     1387!         CALL histwrite_phy(o_psbg,zx_tmp_fi3d_STD)
     1388          IF(vars_defined) THEN
     1389             DO k=1, nlevSTD
     1390                DO i=1, klon
     1391                   IF(O3STD(i,k).NE.missing_val) THEN
     1392                      zx_tmp_fi3d_STD(i,k) = O3STD(i,k) * 1.e+9
     1393                   ELSE
     1394                      zx_tmp_fi3d_STD(i,k) = missing_val
     1395                   ENDIF
     1396                ENDDO
     1397             ENDDO !k=1, nlevSTD
     1398          ENDIF
     1399          CALL histwrite_phy(o_tro3,zx_tmp_fi3d_STD)
     1400          if (read_climoz == 2) THEN
     1401             IF(vars_defined) THEN
     1402                DO k=1, nlevSTD
     1403                   DO i=1, klon
     1404                      IF(O3daySTD(i,k).NE.missing_val) THEN
     1405                         zx_tmp_fi3d_STD(i,k) = O3daySTD(i,k) * 1.e+9
     1406                      ELSE
     1407                         zx_tmp_fi3d_STD(i,k) = missing_val
     1408                      ENDIF
     1409                   ENDDO
     1410                ENDDO !k=1, nlevSTD
     1411             ENDIF
     1412             CALL histwrite_phy(o_tro3_daylight,zx_tmp_fi3d_STD)
     1413          endif
     1414          CALL histwrite_phy(o_uxv,uvSTD(:,:))
     1415          CALL histwrite_phy(o_vxq,vqSTD(:,:))
     1416          CALL histwrite_phy(o_vxT,vTSTD(:,:))
     1417          CALL histwrite_phy(o_wxq,wqSTD(:,:))
     1418          CALL histwrite_phy(o_vxphi,vphiSTD(:,:))
     1419          CALL histwrite_phy(o_wxT,wTSTD(:,:))
     1420          CALL histwrite_phy(o_uxu,u2STD(:,:))
     1421          CALL histwrite_phy(o_vxv,v2STD(:,:))
     1422          CALL histwrite_phy(o_TxT,T2STD(:,:))
     1423!      ENDDO !nfiles
     1424  ENDIF
     1425#endif
    13161426!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    13171427        IF (nqtot.GE.nqo+1) THEN
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/phys_state_var_mod.F90

    r2160 r2283  
    1010! Declaration des variables
    1111      USE dimphy
     12      USE netcdf, only: nf90_fill_real
    1213      INTEGER, PARAMETER :: nlevSTD=17
    1314      INTEGER, PARAMETER :: nlevSTD8=8
     
    1617      INTEGER, PARAMETER :: napisccp=1
    1718      INTEGER, SAVE :: radpas
     19      REAL, PARAMETER :: missing_val_nf90=nf90_fill_real
    1820!$OMP THREADPRIVATE(radpas)
    1921      REAL, SAVE :: dtime, solaire_etat0
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/physiq.F90

    r2160 r2283  
    4747  use phyaqua_mod, only: zenang_an
    4848  USE control_mod
     49#ifdef CPP_XIOS
     50  USE wxios, ONLY: missing_val, missing_val_omp
     51  USE xios, ONLY: xios_get_field_attr
     52#endif
    4953#ifdef REPROBUS
    5054  USE CHEM_REP, ONLY : Init_chem_rep_xjour
     
    240244  real da(klon,klev),phi(klon,klev,klev),mp(klon,klev)
    241245  real wght_cvfd(klon,klev)
     246#ifndef CPP_XIOS
     247  REAL, SAVE :: missing_val
     248#endif
    242249  ! Variables pour le lessivage convectif
    243250  ! RomP >>>
     
    36743681  !IM Interpolation sur les niveaux de pression du NMC
    36753682  !   -------------------------------------------------
     3683#ifdef CPP_XIOS
     3684          !$OMP MASTER
     3685          !On recupere la valeur de la missing value donnee dans le xml
     3686          CALL xios_get_field_attr("t850",default_value=missing_val_omp)
     3687!         PRINT *,"ARNAUD value missing ",missing_val_omp
     3688          !$OMP END MASTER
     3689          !$OMP BARRIER
     3690          missing_val=missing_val_omp
     3691#endif
     3692#ifndef CPP_XIOS
     3693          missing_val=missing_val_nf90
     3694#endif
    36763695  !
    36773696  include "calcul_STDlev.h"
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/plevel.F90

    r1999 r2283  
    99  USE netcdf
    1010  USE dimphy
     11#ifdef CPP_IOIPSL
     12  USE phys_state_var_mod, ONLY: missing_val_nf90
     13#endif
     14#ifdef CPP_XIOS
     15  USE wxios, ONLY: missing_val
     16#endif
    1117  IMPLICIT NONE
    1218
     
    5662  INTEGER i, k
    5763
    58   REAL missing_val
     64! REAL missing_val
     65#ifndef CPP_XIOS
     66  REAL :: missing_val
     67#endif
    5968
    60   missing_val = nf90_fill_real
     69! missing_val = nf90_fill_real
     70
     71#ifndef CPP_XIOS
     72      missing_val=missing_val_nf90
     73#endif
    6174
    6275  IF (first) THEN
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/plevel_new.F90

    r1999 r2283  
    1010  USE netcdf
    1111  USE dimphy
     12#ifdef CPP_IOIPSL
     13  USE phys_state_var_mod, ONLY: missing_val_nf90
     14#endif
     15#ifdef CPP_XIOS
     16  USE wxios, ONLY: missing_val
     17#endif
     18
    1219  IMPLICIT NONE
    1320
     
    5865  INTEGER i, k
    5966
    60   REAL missing_val
     67! REAL missing_val
     68#ifndef CPP_XIOS
     69  REAL :: missing_val
     70#endif
    6171
    62   missing_val = nf90_fill_real
     72! missing_val = nf90_fill_real
     73
     74#ifndef CPP_XIOS
     75      missing_val=missing_val_nf90
     76#endif
    6377
    6478  IF (first) THEN
  • LMDZ5/branches/LMDZ6_rc0/libf/phylmd/undefSTD.F90

    r1999 r2283  
    55  USE netcdf
    66  USE dimphy
    7   USE phys_state_var_mod ! Variables sauvegardees de la physique
     7#ifdef CPP_IOIPSL
     8  USE phys_state_var_mod
     9#endif
     10
    811  IMPLICIT NONE
    912  include "clesphys.h"
     13#ifdef CPP_IOIPSL
     14  REAL :: missing_val
     15#endif
    1016
    1117  ! ====================================================================
     
    5157  ! REAL tnondef(klon,klevSTD,nout)
    5258
    53   REAL missing_val
     59! REAL missing_val
    5460
    55   missing_val = nf90_fill_real
     61! missing_val = nf90_fill_real
     62#ifndef CPP_XIOS
     63      missing_val=missing_val_nf90
     64#endif
    5665
    5766  DO n = 1, nout
Note: See TracChangeset for help on using the changeset viewer.