source: trunk/LMDZ.TITAN/libf/phytitan/turb_mod.F90

Last change on this file was 2742, checked in by aslmd, 2 years ago

small bug fix on the name of in WRF planet_type check callphysi_mod for Titan

MESOSCALE interface: modifications of local time management for idealized studies (LES) of Titan. removed undefined variables pday ptime.

MESOSCALE. Titan. bug fix: added a test to set surface roughness to a default value in case it is not set thus zero. moved the setting of Z0 outside the loop since it is not (yet?) varying with space in the Titan model

MESOSCALE. Titan. adding a comment for future work in turb_mod

added missing implicit none and kps kpe (found by comparing with updata_outputs from Mars). a couple cosmetic spaces to have something closer to Mars for comparisons.

added diagnostics in update_outputs that were sent to comm_wrf module but not invoked in update_outputs to be available for I/O

alternate computation of sensible heat flux in Titan LES. equivalent to Mars. results are strictly similar to what could be obtained within vdifc or turbdiff computations.

File size: 1.3 KB
Line 
1module turb_mod
2
3  !! variables
4  REAL,SAVE,ALLOCATABLE :: q2(:,:)    ! Turbulent Kinetic Energy
5  REAL,allocatable,SAVE :: l0(:)
6!$OMP THREADPRIVATE(q2,l0)
7  REAL,SAVE,ALLOCATABLE :: ustar(:)
8  REAL,SAVE,ALLOCATABLE :: wstar(:)
9  REAL,SAVE,ALLOCATABLE :: tstar(:)
10!$OMP THREADPRIVATE(ustar,wstar,tstar)
11  REAL,SAVE,ALLOCATABLE :: hfmax_th(:)
12  REAL,SAVE,ALLOCATABLE :: zmax_th(:)
13!$OMP THREADPRIVATE(hfmax_th,zmax_th)
14  REAL,SAVE,ALLOCATABLE :: sensibFlux(:)
15  LOGICAL,SAVE :: turb_resolved = .false.
16!$OMP THREADPRIVATE(sensibFlux,turb_resolved)
17      ! this is a flag to say 'turbulence is resolved'
18      ! mostly for LES use. default is FALSE (for GCM and mesoscale)
19
20!!
21!! initialisation done in phys_state_var_mod
22!! ... strategy using routines like the one that follows could be used instead
23
24!contains
25
26!  subroutine ini_turb_mod(ngrid,nlayer)
27
28!  implicit none
29!  integer,intent(in) :: ngrid ! number of atmospheric columns
30!  integer,intent(in) :: nlayer ! number of atmospheric layers
31
32!    allocate(q2(ngrid,nlayer+1))
33!    allocate(l0(ngrid))
34!    allocate(wstar(ngrid))
35!   allocate(ustar(ngrid))
36!   allocate(tstar(ngrid))
37!   allocate(hfmax_th(ngrid))
38!   allocate(zmax_th(ngrid))
39!   allocate(sensibFlux(ngrid))
40
41!  end subroutine ini_turb_mod
42
43end module turb_mod
Note: See TracBrowser for help on using the repository browser.