Changeset 3157 for palm/trunk
- Timestamp:
- Jul 19, 2018 9:08:49 PM (6 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/modules.f90
r3129 r3157 25 25 ! ----------------- 26 26 ! $Id$ 27 ! added use_free_convection_scaling 28 ! 29 ! 3129 2018-07-16 07:45:13Z gronemeier 27 30 ! add target attribute to km and kh, necessary for output in tcm_data_output_3d 28 31 ! … … 1359 1362 LOGICAL :: urban_surface = .FALSE. !< use urban surface model? 1360 1363 LOGICAL :: use_cmax = .TRUE. !< namelist parameter 1364 LOGICAL :: use_free_convection_scaling = .FALSE. !< namelist parameter to switch on free convection velocity scale in calculation of horizontal wind speed (surface_layer_fluxes) 1361 1365 LOGICAL :: use_initial_profile_as_reference = .FALSE. !< use of initial profiles as reference state? 1362 1366 LOGICAL :: use_prescribed_profile_data = .FALSE. !< use of prescribed wind profiles? -
palm/trunk/SOURCE/parin.f90
r3083 r3157 25 25 ! ----------------- 26 26 ! $Id$ 27 ! added use_free_convection_scaling 28 ! 29 ! 3083 2018-06-19 14:03:12Z gronemeier 27 30 ! Added rans_const_c and rans_const_sigma as input parameters (TG) 28 31 ! … … 558 561 turbulent_inflow, turbulent_outflow, & 559 562 use_subsidence_tendencies, ug_surface, ug_vertical_gradient, & 563 use_free_convection_scaling, & 560 564 ug_vertical_gradient_level, use_surface_fluxes, use_cmax, & 561 565 use_top_fluxes, use_ug_for_galilei_tr, use_upstream_for_tke, & … … 631 635 ug_vertical_gradient_level, use_surface_fluxes, use_cmax, & 632 636 use_top_fluxes, use_ug_for_galilei_tr, use_upstream_for_tke, & 637 use_free_convection_scaling, & 633 638 uv_heights, u_bulk, u_profile, vg_surface, vg_vertical_gradient, & 634 639 vg_vertical_gradient_level, v_bulk, v_profile, ventilation_effect,& -
palm/trunk/SOURCE/surface_layer_fluxes_mod.f90
r3152 r3157 26 26 ! ----------------- 27 27 ! $Id$ 28 ! Added local free convection velocity scale w_lfc in calculation of uvw_abs. 29 ! This can be switche on/off by the user via the flag namelist parameter 30 ! use_free_convection_scaling 31 ! 32 ! 3152 2018-07-19 13:26:52Z suehring 28 33 ! q_surface is now part of surface structure 29 34 ! … … 246 251 most_method, neutral, passive_scalar, pt_surface, q_surface, & 247 252 run_coupled, surface_pressure, simulated_time, terminate_run, & 248 time_since_reference_point, urban_surface, zeta_max, zeta_min 253 time_since_reference_point, urban_surface, & 254 use_free_convection_scaling, zeta_max, zeta_min 249 255 250 256 USE grid_variables, & … … 952 958 !------------------------------------------------------------------------------! 953 959 SUBROUTINE calc_uvw_abs 954 960 955 961 IMPLICIT NONE 956 962 … … 961 967 INTEGER(iwp) :: m !< running index surface elements 962 968 969 REAL(wp) :: w_lfc !< local free convection velocity scale 963 970 ! 964 971 !-- ibit is 1 for upward-facing surfaces, zero for downward-facing surfaces. … … 970 977 j = surf%j(m) 971 978 k = surf%k(m) 979 980 ! 981 !-- Calculate free convection velocity scale w_lfc is 982 !-- use_free_convection_scaling = .T.. This will maintain a horizontal 983 !-- velocity even for very weak wind convective conditions. SIGN is used 984 !-- to set w_lfc to zero under stable conditions. 985 IF ( use_free_convection_scaling ) THEN 986 w_lfc = ABS(g / surf%pt1(m) * surf%z_mo(m) * surf%shf(m)) 987 w_lfc = ( 0.5_wp * ( w_lfc + SIGN(w_lfc,surf%shf(m)) ) )**(0.33333_wp) 988 ELSE 989 w_lfc = 0.0_wp 990 ENDIF 991 972 992 ! 973 993 !-- Compute the absolute value of the horizontal velocity. … … 991 1011 ) * ibit & 992 1012 ) & 993 )**2 1013 )**2 + w_lfc**2 & 994 1014 ) 995 1015
Note: See TracChangeset
for help on using the changeset viewer.