Ignore:
Timestamp:
Feb 22, 2021, 12:44:07 PM (4 years ago)
Author:
dcugnet
Message:

Update the branch to the current trunk.

Location:
LMDZ6/branches/LMDZ-tracers
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/LMDZ-tracers

  • LMDZ6/branches/LMDZ-tracers/libf/phylmd/phys_output_write_mod.F90

    r3702 r3851  
    3838         o_t2m, o_t2m_min, o_t2m_max, &
    3939         o_t2m_min_mon, o_t2m_max_mon, &
     40         o_nt2mout, o_nt2moutfg, &
     41         o_nq2mout, o_nq2moutfg, &
     42         o_nu2mout, o_nu2moutfg, &
    4043         o_q2m, o_ustar, o_u10m, o_v10m, &
    4144         o_wind10m, o_wind10max, o_wind100m, o_gusts, o_sicf, &
     
    4548         o_snow, o_msnow, o_fsnow, o_evap, o_ep,o_epmax_diag, & ! epmax_cape
    4649         o_tops, o_tops0, o_topl, o_topl0, &
    47          o_SWupTOA, o_SWupTOAclr, o_SWupTOAcleanclr, o_SWdnTOA, &
     50         o_SWupTOA, o_SWupTOAclr, o_SWupTOAcleanclr, o_SWdnTOA, o_fdiffSWdnSFC, &
    4851         o_SWdnTOAclr, o_nettop, o_SWup200, &
    4952         o_SWup200clr, o_SWdn200, o_SWdn200clr, &
     
    133136         o_vitu, o_vitv, o_vitw, o_pres, o_paprs, &
    134137         o_zfull, o_zhalf, o_rneb, o_rnebjn, o_rnebcon, &
    135          o_rnebls, o_rneblsvol, o_rhum, o_ozone, o_ozone_light, &
     138         o_rnebls, o_rneblsvol, o_rhum, o_rhl, o_rhi, o_ozone, o_ozone_light, &
    136139         o_duphy, o_dtphy, o_dqphy, o_dqphy2d, o_dqlphy, o_dqlphy2d, &
    137140         o_dqsphy, o_dqsphy2d, o_albe_srf, o_z0m_srf, o_z0h_srf, &
    138          o_ages_srf, o_snow_srf, o_alb1, o_alb2, o_tke, &
     141         o_ages_srf, o_snow_srf, o_alb1, o_alb2, o_tke, o_tke_dissip, &
    139142         o_tke_max, o_kz, o_kz_max, o_clwcon, &
    140143         o_dtdyn, o_dqdyn, o_dqdyn2d, o_dqldyn, o_dqldyn2d, &
     
    199202         o_col_O3_strato, o_col_O3_tropo,                 &
    200203!--interactive CO2
    201          o_flx_co2_ocean, o_flx_co2_land, o_flx_co2_ff, o_flx_co2_bb
    202 
     204         o_flx_co2_ocean, o_flx_co2_land, o_flx_co2_ff, o_flx_co2_bb, &
     205         o_delta_sst, o_delta_sal, o_ds_ns, o_dt_ns, o_dter, o_dser, o_tkt, &
     206         o_tks, o_taur, o_sss
    203207
    204208#ifdef CPP_StratAer
     
    223227         qsol, z0m, z0h, fevap, agesno, &
    224228         nday_rain, rain_con, snow_con, &
    225          topsw, toplw, toplw0, swup, swdn, &
     229         topsw, toplw, toplw0, swup, swdn, solswfdiff, &
    226230         topsw0, swupc0, swdnc0, swup0, swdn0, SWup200, SWup200clr, &
    227231         SWdn200, SWdn200clr, LWup200, LWup200clr, &
     
    245249         T2sumSTD, nlevSTD, du_gwd_rando, du_gwd_front, &
    246250         ulevSTD, vlevSTD, wlevSTD, philevSTD, qlevSTD, tlevSTD, &
    247          rhlevSTD, O3STD, O3daySTD, uvSTD, vqSTD, vTSTD, wqSTD, &
    248          vphiSTD, wTSTD, u2STD, v2STD, T2STD, missing_val_nf90
     251         rhlevSTD, O3STD, O3daySTD, uvSTD, vqSTD, vTSTD, wqSTD, vphiSTD, &
     252         wTSTD, u2STD, v2STD, T2STD, missing_val_nf90, delta_sal, ds_ns, &
     253         dt_ns, delta_sst
    249254
    250255    USE phys_local_var_mod, ONLY: zxfluxlat, slp, ptstar, pt0, zxtsol, zt2m, &
    251          zt2m_cor,zq2m_cor,zu10m_cor,zv10m_cor, zrh2m_cor, zqsat2m_cor, &
    252          t2m_min_mon, t2m_max_mon, evap, &
    253          l_mixmin,l_mix, &
     256         zn2mout, t2m_min_mon, t2m_max_mon, evap, &
     257         l_mixmin,l_mix, tke_dissip, &
    254258         zu10m, zv10m, zq2m, zustar, zxqsurf, &
    255259         rain_lsc, rain_num, snow_lsc, bils, sens, fder, &
     
    258262         sissnow, runoff, albsol3_lic, evap_pot, &
    259263         t2m, fluxt, fluxlat, fsollw, fsolsw, &
    260          wfbils, wfbilo, wfevap, wfrain, wfsnow, & 
     264         wfbils, wfbilo, wfevap, wfrain, wfsnow, &
    261265         cdragm, cdragh, cldl, cldm, &
    262          cldh, cldt, JrNt, cldljn, cldmjn, cldhjn, &
    263          cldtjn, cldq, flwp, fiwp, ue, ve, uq, vq, &
     266         cldh, cldt, JrNt,   & ! only output names: cldljn,cldmjn,cldhjn,cldtjn
     267         cldq, flwp, fiwp, ue, ve, uq, vq, &
    264268         uwat, vwat, &
    265269         plcl, plfc, wbeff, convoccur, upwd, dnwd, dnwd0, prw, prlw, prsw, &
     
    297301         ql_seri, qs_seri, tr_seri, &
    298302         zphi, u_seri, v_seri, omega, cldfra, &
    299          rneb, rnebjn, rneblsvol, zx_rh, d_t_dyn,  &
     303         rneb, rnebjn, rneblsvol, zx_rh, zx_rhl, zx_rhi, d_t_dyn,  &
    300304         d_q_dyn,  d_ql_dyn, d_qs_dyn, &
    301305         d_q_dyn2d,  d_ql_dyn2d, d_qs_dyn2d, &
     
    353357         alt_tropo, &
    354358!Ionela
    355          ok_4xCO2atm
     359         ok_4xCO2atm, dter, dser, tkt, tks, taur, sss
    356360
    357361    USE ocean_slab_mod, ONLY: nslay, tslab, slab_bilg, tice, seaice, &
     
    361365    USE infotrac_phy, ONLY: nqtot, nqo, type_trac, tname, niadv
    362366    USE geometry_mod, ONLY: cell_area, latitude_deg, longitude_deg
    363     USE surface_data, ONLY: type_ocean, version_ocean, ok_veget, ok_snow
     367    USE surface_data, ONLY: type_ocean, version_ocean, ok_veget, landice_opt
    364368    USE aero_mod, ONLY: naero_tot, id_STRAT_phy
    365369    USE ioipsl, ONLY: histend, histsync
     
    380384#endif
    381385    USE tracinca_mod, ONLY: config_inca
     386    use config_ocean_skin_m, only: activate_ocean_skin
    382387
    383388    USE vertical_layers_mod, ONLY: presnivs
     
    458463#ifdef CPP_XIOS
    459464    CALL wxios_set_context
     465#endif
     466
     467#ifndef CPP_XIOS
     468    missing_val=missing_val_nf90
    460469#endif
    461470
     
    676685       CALL histwrite_phy(o_slp, slp)
    677686       CALL histwrite_phy(o_tsol, zxtsol)
    678        CALL histwrite_phy(o_t2m, zt2m_cor)
    679        CALL histwrite_phy(o_t2m_min, zt2m_cor)
    680        CALL histwrite_phy(o_t2m_max, zt2m_cor)
     687       CALL histwrite_phy(o_t2m, zt2m)
     688       CALL histwrite_phy(o_t2m_min, zt2m)
     689       CALL histwrite_phy(o_t2m_max, zt2m)
    681690       CALL histwrite_phy(o_t2m_max_mon, t2m_max_mon)
    682691       CALL histwrite_phy(o_t2m_min_mon, t2m_min_mon)
     
    684693       IF (vars_defined) THEN
    685694          DO i=1, klon
    686              zx_tmp_fi2d(i)=SQRT(zu10m_cor(i)*zu10m_cor(i)+zv10m_cor(i)*zv10m_cor(i))
     695             zx_tmp_fi2d(i)=real(zn2mout(i,1))
     696          ENDDO
     697       ENDIF
     698       CALL histwrite_phy(o_nt2mout, zx_tmp_fi2d)
     699
     700       IF (vars_defined) THEN
     701          DO i=1, klon
     702             zx_tmp_fi2d(i)=real(zn2mout(i,2))
     703          ENDDO
     704       ENDIF
     705       CALL histwrite_phy(o_nt2moutfg, zx_tmp_fi2d)
     706
     707       IF (vars_defined) THEN
     708          DO i=1, klon
     709             zx_tmp_fi2d(i)=real(zn2mout(i,3))
     710          ENDDO
     711       ENDIF
     712       CALL histwrite_phy(o_nq2mout, zx_tmp_fi2d)
     713
     714       IF (vars_defined) THEN
     715          DO i=1, klon
     716             zx_tmp_fi2d(i)=real(zn2mout(i,4))
     717          ENDDO
     718       ENDIF
     719       CALL histwrite_phy(o_nq2moutfg, zx_tmp_fi2d)
     720
     721       IF (vars_defined) THEN
     722          DO i=1, klon
     723             zx_tmp_fi2d(i)=real(zn2mout(i,5))
     724          ENDDO
     725       ENDIF
     726       CALL histwrite_phy(o_nu2mout, zx_tmp_fi2d)
     727
     728       IF (vars_defined) THEN
     729          DO i=1, klon
     730             zx_tmp_fi2d(i)=real(zn2mout(i,6))
     731          ENDDO
     732       ENDIF
     733       CALL histwrite_phy(o_nu2moutfg, zx_tmp_fi2d)
     734
     735       IF (vars_defined) THEN
     736          DO i=1, klon
     737             zx_tmp_fi2d(i)=SQRT(zu10m(i)*zu10m(i)+zv10m(i)*zv10m(i))
    687738          ENDDO
    688739       ENDIF
     
    691742       IF (vars_defined) THEN
    692743          DO i=1, klon
    693              zx_tmp_fi2d(i)=SQRT(zu10m_cor(i)*zu10m_cor(i)+zv10m_cor(i)*zv10m_cor(i))
     744             zx_tmp_fi2d(i)=SQRT(zu10m(i)*zu10m(i)+zv10m(i)*zv10m(i))
    694745          ENDDO
    695746       ENDIF
     
    699750
    700751       IF (vars_defined) THEN
    701           missing_val=missing_val_nf90
    702752          DO k = 1, kmax_100m                                      !--we could stop much lower
    703753            zrho(:) = pplay(:,k)/t_seri(:,k)/RD                    ! air density in kg/m3
     
    771821       ENDIF
    772822       CALL histwrite_phy(o_sicf, zx_tmp_fi2d)
    773        CALL histwrite_phy(o_q2m, zq2m_cor)
    774        CALL histwrite_phy(o_ustar, zustar)
    775        CALL histwrite_phy(o_u10m, zu10m_cor)
    776        CALL histwrite_phy(o_v10m, zv10m_cor)
     823       CALL histwrite_phy(o_q2m, zq2m)
     824       IF (vars_defined) zx_tmp_fi2d = zustar
     825       CALL histwrite_phy(o_ustar, zx_tmp_fi2d)
     826       CALL histwrite_phy(o_u10m, zu10m)
     827       CALL histwrite_phy(o_v10m, zv10m)
    777828
    778829       IF (vars_defined) THEN
     
    935986       ENDIF
    936987       CALL histwrite_phy(o_SWdnSFCcleanclr, zx_tmp_fi2d)
     988
     989       CALL histwrite_phy(o_fdiffSWdnSFC, solswfdiff)
    937990
    938991       IF (vars_defined) THEN
     
    9961049       CALL histwrite_phy(o_tauy, zx_tmp_fi2d)
    9971050
    998        IF (ok_snow) THEN
     1051       IF (landice_opt .GE. 1) THEN
    9991052          CALL histwrite_phy(o_snowsrf, snow_o)
    10001053          CALL histwrite_phy(o_qsnow, qsnow)
     
    10541107             CALL histwrite_phy(o_l_mixmin(nsrf),  l_mixmin(:,1:klev,nsrf))
    10551108             CALL histwrite_phy(o_tke_max_srf(nsrf),  pbl_tke(:,1:klev,nsrf))
     1109
     1110                         
    10561111          ENDIF
    10571112!jyg<
     
    10641119!            ENDIF
    10651120
    1066 
    10671121       ENDDO
     1122       
     1123               
     1124        IF (iflag_pbl > 1) THEN
     1125          zx_tmp_fi3d=0.
     1126          IF (vars_defined) THEN
     1127             DO nsrf=1,nbsrf
     1128                DO k=1,klev
     1129                   zx_tmp_fi3d(:,k)=zx_tmp_fi3d(:,k) &
     1130                        +pctsrf(:,nsrf)*tke_dissip(:,k,nsrf)
     1131                ENDDO
     1132             ENDDO
     1133          ENDIF
     1134         
     1135          CALL histwrite_phy(o_tke_dissip, zx_tmp_fi3d)   
     1136       ENDIF
    10681137
    10691138       IF (vars_defined) zx_tmp_fi2d(1 : klon) = sens_prec_liq_o(1 : klon, 1)
     
    11891258       ! ATTENTION, LES ANCIENS HISTWRITE ONT ETES CONSERVES EN ATTENDANT MIEUX:
    11901259       ! Champs interpolles sur des niveaux de pression
    1191        missing_val=missing_val_nf90
    11921260       DO iff=1, nfiles
    11931261          ll=0
     
    14121480!       CALL histwrite_phy(o_rh2m_max, zx_tmp_fi2d)
    14131481
    1414        CALL histwrite_phy(o_qsat2m, zqsat2m_cor)
     1482       CALL histwrite_phy(o_qsat2m, qsat2m)
    14151483       CALL histwrite_phy(o_tpot, tpot)
    14161484       CALL histwrite_phy(o_tpote, tpote)
     
    16911759       CALL histwrite_phy(o_rnebjn, zx_tmp_fi3d)
    16921760       CALL histwrite_phy(o_rhum, zx_rh)
     1761       IF (iflag_ice_thermo .GT. 0) THEN
     1762          IF (vars_defined) zx_tmp_fi3d = zx_rhl * 100.
     1763          CALL histwrite_phy(o_rhl, zx_tmp_fi3d)
     1764          IF (vars_defined) zx_tmp_fi3d = zx_rhi * 100.
     1765          CALL histwrite_phy(o_rhi, zx_tmp_fi3d)
     1766       ENDIF
     1767
    16931768       
    16941769       IF (vars_defined) zx_tmp_fi3d = wo(:, :, 1) * dobson_u * 1e3 / zmasse / rmo3 * rmd
     
    17491824          ENDIF
    17501825          CALL histwrite_phy(o_tke, zx_tmp_fi3d)
    1751 
    1752           CALL histwrite_phy(o_tke_max, zx_tmp_fi3d)
     1826          CALL histwrite_phy(o_tke_max, zx_tmp_fi3d) 
     1827
    17531828       ENDIF
    17541829
     
    21682243       ! ATTENTION, LES ANCIENS HISTWRITE ONT ETES CONSERVES EN ATTENDANT MIEUX:
    21692244       ! Champs interpolles sur des niveaux de pression
    2170        missing_val=missing_val_nf90
    21712245       DO iff=7, nfiles-1 !--OB: here we deal with files 7,8,9
    21722246
     
    23592433       ENDIF   !(iflag_phytrac==1)
    23602434
     2435       if (activate_ocean_skin >= 1) then
     2436          CALL histwrite_phy(o_delta_sst, delta_sst)
     2437          CALL histwrite_phy(o_delta_sal, delta_sal)
     2438          CALL histwrite_phy(o_ds_ns, ds_ns)
     2439          CALL histwrite_phy(o_dt_ns, dt_ns)
     2440          CALL histwrite_phy(o_dter, dter)
     2441          CALL histwrite_phy(o_dser, dser)
     2442          CALL histwrite_phy(o_tkt, tkt)
     2443          CALL histwrite_phy(o_tks, tks)
     2444          CALL histwrite_phy(o_taur, taur)
     2445          CALL histwrite_phy(o_sss, sss)
     2446       end if
     2447
    23612448       IF (.NOT.vars_defined) THEN
    23622449          !$OMP MASTER
Note: See TracChangeset for help on using the changeset viewer.