Ignore:
Timestamp:
Oct 24, 2025, 4:39:28 PM (7 weeks ago)
Author:
jliu
Message:

#Non-orographic gravity waves and induced turbulence
#are added to the model. Further tunning are still needed.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.PLUTO/libf/phypluto/physiq_mod.F90

    r3932 r3935  
    4747      use calldrag_noro_mod, only: calldrag_noro
    4848      use time_phylmdz_mod, only: daysec
     49      use nonoro_gwd_ran_mod, only: nonoro_gwd_ran
     50      use nonoro_gwd_mix_mod, only: nonoro_gwd_mix, calljliu_gwimix
     51
    4952      use callkeys_mod, only: albedo_spectral_mode, calladj, calldifv,        &
    5053                              calllott, callrad, callsoil, nosurf,            &
    5154                              callconduct,callmolvis,callmoldiff,             &
    52                               corrk,                                          &
     55                              corrk, calllott_nonoro,                         &
    5356                              diurnal, enertest, fat1au,                      &
    5457                              icetstep, intheat, iradia, kastprof,            &
     
    6770                              global1d, szangle,                              &
    6871                              callmufi, evol1d
     72
    6973      use check_fields_mod, only: check_physics_fields
    7074      use conc_mod, only: rnew, cpnew, ini_conc_mod
     
    476480      REAL d_u_hin(ngrid,nlayer), d_v_hin(ngrid,nlayer)
    477481      REAL d_t_hin(ngrid,nlayer)
     482      REAL d_u_mix(ngrid,nlayer), d_v_mix(ngrid,nlayer)
     483      REAL d_t_mix(ngrid,nlayer), zdq_mix(ngrid,nlayer,nq)
    478484!  Diagnostics 2D of gw_nonoro
    479485      REAL zustrhi(ngrid), zvstrhi(ngrid)
     
    13841390      endif ! end of 'calladj'
    13851391
     1392! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     1393! IV.b Non-orographic gravity waves and induced turbulence
     1394! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     1395        IF (calllott_nonoro) THEN
     1396         CALL nonoro_gwd_ran(ngrid,nlayer,ptimestep, &
     1397                      cpnew,rnew,                    &
     1398                      zplay,                         &
     1399                      zmax_th,                       &
     1400                      pt, pu, pv,                    &
     1401                      pdt, pdu, pdv,                 &
     1402                      zustrhi,zvstrhi,               &
     1403                      d_t_hin, d_u_hin, d_v_hin)
     1404           IF (calljliu_gwimix) THEN
     1405            CALL nonoro_gwd_mix(ngrid,nlayer,ptimestep,  &
     1406                      nq,cpnew, rnew,                    &
     1407                      zplay,                             &
     1408                      zmax_th,                           &
     1409                      pt, pu, pv, pq, zh,                &
     1410                  !loss,  chemical reaction loss rates
     1411                      pdt, pdu, pdv, pdq, zdh,           &
     1412                  !  zustrhi,zvstrhi,
     1413                      zdq_mix, d_t_mix, d_u_mix, d_v_mix)
     1414           ENDIF
     1415 
     1416  !  Update tendencies
     1417           pdt(1:ngrid,1:nlayer)=pdt(1:ngrid,1:nlayer) +   &
     1418                                 d_t_hin(1:ngrid,1:nlayer)
     1419           pdu(1:ngrid,1:nlayer)=pdu(1:ngrid,1:nlayer) +   &
     1420                                 d_u_hin(1:ngrid,1:nlayer)
     1421           pdv(1:ngrid,1:nlayer)=pdv(1:ngrid,1:nlayer) +   &
     1422                                 d_v_hin(1:ngrid,1:nlayer)
     1423  !  Update tendencies of gw mixing
     1424          IF (calljliu_gwimix) THEN
     1425           pdt(1:ngrid,1:nlayer)=pdt(1:ngrid,1:nlayer) +   &
     1426                                 d_t_mix(1:ngrid,1:nlayer)
     1427           pdu(1:ngrid,1:nlayer)=pdu(1:ngrid,1:nlayer) +   &
     1428                                 d_u_mix(1:ngrid,1:nlayer)
     1429           pdv(1:ngrid,1:nlayer)=pdv(1:ngrid,1:nlayer) +   &
     1430                                 d_v_mix(1:ngrid,1:nlayer)
     1431           pdq(1:ngrid,1:nlayer,1:nq)=pdq(1:ngrid,1:nlayer,1:nq) + &
     1432                                      zdq_mix(1:ngrid,1:nlayer,1:nq)
     1433          ENDIF
     1434 
     1435 
     1436        ENDIF ! of IF (calllott_nonoro)
     1437     
    13861438!-----------------------------------------------
    13871439!   V. Nitrogen condensation-sublimation :
Note: See TracChangeset for help on using the changeset viewer.