Ignore:
Timestamp:
Oct 27, 2014, 6:47:03 PM (10 years ago)
Author:
lguez
Message:

Add the module from ecmwf model for water production by methane oxydation
and photolysis. Activated if def file option: ok_qch4=y.
LG, D.Cugnet

Location:
LMDZ5/trunk/libf/phylmd
Files:
3 added
7 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/clesphys.h

    r2126 r2136  
    7777       LOGICAL :: ok_strato
    7878       LOGICAL :: ok_hines, ok_gwd_rando
     79       LOGICAL :: ok_qch4
    7980       LOGICAL :: ok_conserv_q
    8081
     
    114115     &     , ip_ebil_phy                                                &
    115116     &     , ok_lic_melt,           aer_type                            &
    116      &     , iflag_rrtm, ok_strato,ok_hines                             &
     117     &     , iflag_rrtm, ok_strato,ok_hines, ok_qch4                    &
    117118     &     , iflag_ice_thermo, ok_gwd_rando, NSW                        &
    118119     &     , ok_conserv_q, ok_all_xml
  • LMDZ5/trunk/libf/phylmd/conf_phys_m.F90

    r2126 r2136  
    189189    LOGICAL,SAVE :: ok_hines_omp, ok_gwd_rando_omp
    190190    real, SAVE:: GWD_RANDO_RUWMAX_omp, gwd_rando_sat_omp
     191    LOGICAL,SAVE :: ok_qch4_omp
    191192    LOGICAL,SAVE      :: carbon_cycle_tr_omp
    192193    LOGICAL,SAVE      :: carbon_cycle_cpl_omp
     
    17251726    gwd_rando_sat_omp = 0.25
    17261727    CALL getin('gwd_rando_sat', gwd_rando_sat_omp)
     1728
     1729    !Config  key = ok_qch4
     1730    !Config  Desc = activation de la parametrisation du methane
     1731    !Config  Def  = .FALSE.
     1732    !Config  Help = Clef controlant l'activation de la parametrisation
     1733    !               de l'humidite due a oxydation+photolyse du methane strato
     1734
     1735    ok_qch4_omp=.FALSE.
     1736    CALL getin('ok_qch4',ok_qch4_omp)
    17271737
    17281738    !Config Key  = OK_LES                                               
     
    19551965    GWD_RANDO_RUWMAX = GWD_RANDO_RUWMAX_omp
    19561966    gwd_rando_sat = gwd_rando_sat_omp
     1967    ok_qch4 = ok_qch4_omp
    19571968    ok_LES = ok_LES_omp
    19581969    callstats = callstats_omp
     
    21472158    write(lunout,*) 'ok_hines = ',  ok_hines
    21482159    write(lunout,*) 'ok_gwd_rando = ',  ok_gwd_rando
     2160    write(lunout,*) 'ok_qch4 = ',  ok_qch4
    21492161    write(lunout,*) 'GWD_RANDO_RUWMAX = ', GWD_RANDO_RUWMAX
    21502162    write(lunout,*) 'gwd_rando_sat = ', gwd_rando_sat
  • LMDZ5/trunk/libf/phylmd/phys_local_var_mod.F90

    r2103 r2136  
    7373      REAL, SAVE, ALLOCATABLE :: d_t_hin(:,:)
    7474      !$OMP THREADPRIVATE(d_t_hin)
     75! tendance due a l'oxydation du methane
     76      REAL, SAVE, ALLOCATABLE :: d_q_ch4(:,:)
     77      !$OMP THREADPRIVATE(d_q_ch4)
    7578
    7679! tendance du a la conersion Ec -> E thermique
     
    338341      allocate(topswcf_aero(klon,3), solswcf_aero(klon,3))
    339342      allocate(d_u_hin(klon,klev),d_v_hin(klon,klev),d_t_hin(klon,klev))
     343      allocate(d_q_ch4(klon,klev))
    340344!      allocate(tausum_aero(klon,nwave,naero_spc))
    341345!      allocate(tau3d_aero(klon,klev,nwave,naero_spc))
     
    535539      deallocate(load_tmp7)
    536540      deallocate(d_u_hin,d_v_hin,d_t_hin)
     541      deallocate(d_q_ch4)
    537542
    538543!IM ajout variables CFMIP2/CMIP5
     
    603608END SUBROUTINE phys_local_var_end
    604609
    605 END MODULE phys_local_var_mod
     610END MODULE phys_local_var_mod 
  • LMDZ5/trunk/libf/phylmd/phys_output_ctrlout_mod.F90

    r2103 r2136  
    11001100  TYPE(ctrl_out), SAVE :: o_dthin = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
    11011101    'dthin', 'Hines GWD dT', 'K/s', (/ ('', i=1, 9) /))
     1102  TYPE(ctrl_out), SAVE :: o_dqch4 = ctrl_out((/ 4, 10, 10, 10, 10, 10, 11, 11, 11 /), &
     1103    'dqch4', 'H2O due to CH4 oxidation & photolysis', '(kg/kg)/s', (/ ('', i=1, 9) /))
    11021104
    11031105  type(ctrl_out), save:: o_du_gwd_rando &
  • LMDZ5/trunk/libf/phylmd/phys_output_write_mod.F90

    r2114 r2136  
    130130         o_duvdf, o_dvvdf, o_duoro, o_dvoro, &
    131131         o_dtoro, o_dulif, o_dvlif, o_dtlif, &
    132          o_duhin, o_dvhin, o_dthin, o_rsu, &
     132         o_duhin, o_dvhin, o_dthin, o_dqch4, o_rsu, &
    133133         o_rsd, o_rlu, o_rld, o_rsucs, o_rsdcs, &
    134134         o_rlucs, o_rldcs, o_tnt, o_tntr, &
     
    217217         d_v_vdf, d_u_oro, d_v_oro, d_t_oro, d_u_lif, &
    218218         d_v_lif, d_t_lif, d_u_hin, d_v_hin, d_t_hin, &
    219          pmfd, pmfu, ref_liq, ref_ice, rhwriteSTD
     219         d_q_ch4, pmfd, pmfu, ref_liq, ref_ice, rhwriteSTD
    220220
    221221    USE phys_output_var_mod, only: vars_defined, snow_o, zfra_o, bils_diss, &
     
    11531153       end IF
    11541154
     1155       IF (ok_qch4) then
     1156          CALL histwrite_phy(o_dqch4, d_q_ch4 / pdtphys)
     1157       ENDIF
     1158
    11551159       CALL histwrite_phy(o_rsu, swup)
    11561160       CALL histwrite_phy(o_rsd, swdn)
  • LMDZ5/trunk/libf/phylmd/physiq.F90

    r2105 r2136  
    34953495          , fs_bound, fq_bound )
    34963496  END IF
     3497
     3498  !DC Calcul de la tendance due au methane
     3499  IF(ok_qch4) THEN
     3500     CALL METHOX(1,klon,klon,klev,q_seri,d_q_ch4,pplay)
     3501  ! ajout de la tendance d'humidite due au methane
     3502     CALL add_phys_tend(du0,dv0,dt0,d_q_ch4*dtime,dql0,'q_ch4')
     3503  END IF
    34973504  !
    34983505  !
  • LMDZ5/trunk/libf/phylmd/suphel.F90

    r1992 r2136  
    192192  ! ------------------------------------------------------------------
    193193
    194   ! calculer les constantes pour les fonctions thermodynamiques
     194  ! *       10.   CONSTANTS FOR THERMODYNAMICAL FUNCTIONS.
     195  ! ----------------------------------------
    195196
    196197  rvtmp2 = rcpv/rcpd - 1.
     
    204205  r5ies = r3ies*(rtt-r4ies)
    205206
     207  ! ------------------------------------------------------------------
     208
     209  ! *       10.   CONSTANTS FOR METHANE OXIDATION AND PHOTOLYSIS.
     210  ! -----------------------------------------------
     211
     212  CALL SUMETHOX()
     213
    206214  RETURN
    207215END SUBROUTINE suphel
Note: See TracChangeset for help on using the changeset viewer.