Changeset 3091 for palm/trunk/SOURCE/urban_surface_mod.f90
- Timestamp:
- Jun 28, 2018 4:20:35 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/urban_surface_mod.f90
r3065 r3091 28 28 ! ----------------- 29 29 ! $Id$ 30 ! - Limit aerodynamic resistance at vertical walls. 31 ! - Add check for local roughness length not exceeding surface-layer height and 32 ! limit roughness length where necessary. 33 ! 34 ! 3065 2018-06-12 07:03:02Z Giersch 30 35 ! Unused array dxdir was removed, dz was replaced by dzu to consider vertical 31 36 ! grid stretching … … 4577 4582 ENDIF 4578 4583 ENDIF 4584 ! 4585 !-- Check for consistent initialization. 4586 !-- Check if roughness length exceed surface-layer height and decrease 4587 !-- local roughness length where necessary. 4588 DO m = 1, surf_usm_h%ns 4589 IF ( surf_usm_h%z0(m) >= surf_usm_h%z_mo(m) ) THEN 4590 4591 surf_usm_h%z0(m) = 0.9_wp * surf_usm_h%z_mo(m) 4592 4593 WRITE( message_string, * ) 'z0 exceeds surface-layer height ' // & 4594 'at horizontal urban surface and is ' // & 4595 'decreased appropriately at grid point (i,j) = ', & 4596 surf_usm_h%i(m), surf_usm_h%j(m) 4597 CALL message( 'urban_surface_model_mod', 'PA0503', & 4598 0, 0, 0, 6, 0 ) 4599 ENDIF 4600 ENDDO 4601 4602 DO l = 0, 3 4603 DO m = 1, surf_usm_v(l)%ns 4604 IF ( surf_usm_v(l)%z0(m) >= surf_usm_v(l)%z_mo(m) ) THEN 4605 4606 surf_usm_v(l)%z0(m) = 0.9_wp * surf_usm_v(l)%z_mo(m) 4607 4608 WRITE( message_string, * ) 'z0 exceeds surface-layer height '//& 4609 'at vertical urban surface and is ' // & 4610 'decreased appropriately at grid point (i,j) = ', & 4611 surf_usm_v(l)%i(m)+surf_usm_v(l)%ioff, & 4612 surf_usm_v(l)%j(m)+surf_usm_v(l)%joff 4613 CALL message( 'urban_surface_model_mod', 'PA0503', & 4614 0, 0, 0, 6, 0 ) 4615 ENDIF 4616 ENDDO 4617 ENDDO 4579 4618 4580 4619 !-- Intitialization of the surface and wall/ground/roof temperature … … 7464 7503 0.01_wp ) ) & 7465 7504 ) - 4.0_wp ) 7466 7505 ! 7506 !-- Limit aerodynamic resistance 7507 IF ( surf_usm_v(l)%r_a(m) < 1.0_wp ) & 7508 surf_usm_v(l)%r_a(m) = 1.0_wp 7509 7467 7510 f_shf = rho_cp / surf_usm_v(l)%r_a(m) 7468 7511 f_shf_window = rho_cp / surf_usm_v(l)%r_a(m) … … 7489 7532 lambda_surface_window * t_window_v(l)%t(nzb_wall,m) 7490 7533 7491 coef_green_1 = surf_usm_v(l)%rad_net_l(m) + 7534 coef_green_1 = surf_usm_v(l)%rad_net_l(m) + & ! coef +1 corresponds to -lwout included in calculation of radnet_l 7492 7535 ( 3.0_wp + 1.0_wp ) * surf_usm_v(l)%emissivity(ind_pav_green,m) *& 7493 7536 sigma_sb * t_surf_green_v(l)%t(m) ** 4 + &
Note: See TracChangeset
for help on using the changeset viewer.