Changeset 240 in lmdz_wrf for trunk/WRFV3


Ignore:
Timestamp:
Feb 2, 2015, 1:05:23 PM (10 years ago)
Author:
lfita
Message:

Adding map factor on tendencies

Location:
trunk/WRFV3
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/WRFV3/dyn_em/solve_em.F

    r184 r240  
    915915        &        WRF_PERMASS=grid%mu_1, WRF_BASEMASS=grid%mub,                       &
    916916        &        WRF_MUT=grid%mut, WRF_MUU=grid%muu, WRF_MUV=grid%muv,               &
     917        &        WRF_MAPFAC=grid%msft,                                      &
    917918!!        &        WRF_UTEND=grid%ru_tend, WRF_VTEND=grid%rv_tend,                     &
    918919!!        &        WRF_TTEND=t_tend,                                                   &
     
    37023703   ENDIF
    37033704
     3705!!L. Fita, January 2105, LMD. We have mp_physics == 0, thus, WRF is not doing
     3706!  this...
    37043707   IF (config_flags%mp_physics /= 0)  then
     3708!   IF (config_flags%mp_physics /= 0)  then
    37053709
    37063710     !$OMP PARALLEL DO   &
  • trunk/WRFV3/lmdz/diagphy_mod.F90

    r176 r240  
    164164        PRINT *,'    fs_bound = stops-stopl - (ssols+ssoll)+ssens+sfront'
    165165        PRINT *,'    airetot= ',airetot
    166         IF (airetot .NE. airetot .OR. ABS(airetot) > largest*10.e6) THEN
     166        IF (airetot .NE. airetot .OR. ABS(airetot) > largest*10.e16) THEN
    167167          varname = 'airephy'
    168           CALL check_var(fname, varname, airephy, klon, largest*10.e12, .FALSE.)
     168          CALL check_var(fname, varname, airephy, klon, largest*10.e15, .FALSE.)
    169169        END IF
    170170        PRINT *,'    stops= ',stops
     
    223223        PRINT *,'    evap_tot= ',evap_tot
    224224        PRINT *,'    airetot= ',airetot
    225         IF (airetot .NE. airetot .OR. ABS(airetot) > largest*10.e5) THEN
     225        IF (airetot .NE. airetot .OR. ABS(airetot) > largest*10.e15) THEN
    226226          varname = 'airephy'
    227           CALL check_var(fname, varname, airephy, klon, largest*10.e5, .FALSE.)
     227          CALL check_var(fname, varname, airephy, klon, largest*10.e15, .FALSE.)
    228228        END IF
    229229        IF (evap_tot .NE. evap_tot .OR. ABS(evap_tot) > largest) THEN
     
    673673          PRINT *,'      h_vcol_tot = h_dair_tot+h_qw_tot+h_ql_tot+h_qs_tot'
    674674          PRINT *,'    airetot= ',airetot
    675           IF (airetot .NE. airetot .OR. ABS(airetot) > largest*10.e5) THEN
     675          IF (airetot .NE. airetot .OR. ABS(airetot) > largest*10.e15) THEN
    676676            varname = 'airephy'
    677             CALL check_var(fname, varname, airephy, klon, largest*10.e5, .FALSE.)
     677            CALL check_var(fname, varname, airephy, klon, largest*10.e15, .FALSE.)
    678678          END IF
    679679          PRINT *,'    h_dair_tot= ',h_dair_tot
     
    718718        PRINT *,'    qw_tot = f(q,ql,qs,airephy,t,paprs)'
    719719        varname = 'airephy'
    720         CALL check_var(fname, varname, airephy, klon, largest*10.e5, .FALSE.)
     720        CALL check_var(fname, varname, airephy, klon, largest*10.e15, .FALSE.)
    721721        varname = 'q'
    722722        CALL check_var3D(fname, varname, q, klon, klev, largest, .FALSE.)
     
    738738        PRINT *,'    ql_tot = f(ql,airephy,t,paprs)'
    739739        varname = 'airephy'
    740         CALL check_var(fname, varname, airephy, klon, largest*10.e5, .FALSE.)
     740        CALL check_var(fname, varname, airephy, klon, largest*10.e15, .FALSE.)
    741741        varname = 'ql'
    742742        CALL check_var3D(fname, varname, ql, klon, klev, largest, .FALSE.)
     
    754754        PRINT *,'    qs_tot = f(qs,airephy,t,paprs)'
    755755        varname = 'airephy'
    756         CALL check_var(fname, varname, airephy, klon, largest*10.e5, .FALSE.)
     756        CALL check_var(fname, varname, airephy, klon, largest*10.e15, .FALSE.)
    757757        varname = 'qs'
    758758        CALL check_var3D(fname, varname, qs, klon, klev, largest, .FALSE.)
     
    770770        PRINT *,'    ec_tot = f(u,v,airephy,t,paprs)'
    771771        varname = 'airephy'
    772         CALL check_var(fname, varname, airephy, klon, largest*10.e5, .FALSE.)
     772        CALL check_var(fname, varname, airephy, klon, largest*10.e15, .FALSE.)
    773773        varname = 'u'
    774774        CALL check_var3D(fname, varname, u, klon, klev, largest, .FALSE.)
  • trunk/WRFV3/phys/module_lmdz_phys.F

    r184 r240  
    3030     &        wrf_permass, wrf_basemass,                                             &
    3131     &        wrf_mut, wrf_muu, wrf_muv,                                             &
     32     &        wrf_mapfac,                                    &
    3233     &        wrf_Utend, wrf_Vtend, wrf_Ttend,                                       &
    3334     &        wrf_MOISTtend, wrf_psfctend,                                           &
     
    110111    REAL, INTENT(IN), DIMENSION(wims:wime,wjms:wjme)     :: wrf_Lon, wrf_Lat,        &
    111112        & wrf_basemass, wrf_permass, wrf_mapft, wrf_mapfu, wrf_mapfv, wrf_mut,       &
    112         & wrf_muu, wrf_muv
     113        & wrf_muu, wrf_muv, wrf_mapfac
    113114
    114115    REAL, INTENT(OUT), DIMENSION(wims:wime,wjms:wjme)    :: wrf_psfctend
     
    12891290! All the tendencies have to be given as decoupled from the dry air mass column! (see dyn_em/module_em.F:rk_update_scalar)
    12901291!!
     1292! L. Fita, LMD January 2015. Adding map factor!
    12911293    DO iz=1,dimz
    1292       wrf_Ttend(:,iz,:) = wrf_Ttend(:,iz,:)*wrf_mut
    1293       wrf_Utend(:,iz,:) = wrf_Utend(:,iz,:)*wrf_muu
    1294       wrf_Vtend(:,iz,:) = wrf_Vtend(:,iz,:)*wrf_muv
     1294      wrf_Ttend(:,iz,:) = wrf_Ttend(:,iz,:)*wrf_mut/wrf_mapfac
     1295      wrf_Utend(:,iz,:) = wrf_Utend(:,iz,:)*wrf_muu/wrf_mapfac
     1296      wrf_Vtend(:,iz,:) = wrf_Vtend(:,iz,:)*wrf_muv/wrf_mapfac
    12951297      DO iq=1,wnum3dm
    1296         wrf_MOISTtend(:,iz,:,iq) = wrf_MOISTtend(:,iz,:,iq)*wrf_mut
     1298        wrf_MOISTtend(:,iz,:,iq) = wrf_MOISTtend(:,iz,:,iq)*wrf_mut/wrf_mapfac
    12971299      END DO
    12981300    END DO
Note: See TracChangeset for help on using the changeset viewer.