- Timestamp:
- Jan 12, 2018 2:59:47 PM (7 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/average_3d_data.f90
r2735 r2742 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Enable output of surface temperature 28 ! 29 ! 2735 2018-01-11 12:01:27Z suehring 27 30 ! output of r_a moved from land-surface to consider also urban-type surfaces 28 31 ! … … 422 425 CALL exchange_horiz_2d( ts_av, nbgp ) 423 426 427 CASE ( 'tsurf*' ) 428 DO i = nxlg, nxrg 429 DO j = nysg, nyng 430 tsurf_av(j,i) = tsurf_av(j,i) / REAL( average_count_3d, KIND=wp ) 431 ENDDO 432 ENDDO 433 CALL exchange_horiz_2d( tsurf_av, nbgp ) 434 424 435 CASE ( 'u' ) 425 436 DO i = nxlg, nxrg -
palm/trunk/SOURCE/check_parameters.f90
r2735 r2742 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Enable output of surface temperature 28 ! 29 ! 2735 2018-01-11 12:01:27Z suehring 27 30 ! output of r_a moved from land-surface to consider also urban-type surfaces 28 31 ! … … 3286 3289 3287 3290 CASE ( 'lwp*', 'ol*', 'pra*', 'prr*', 'qsws*', 'r_a*', 'shf*', & 3288 'ssws*', 't*', ' u*', 'z0*', 'z0h*', 'z0q*' )3291 'ssws*', 't*', 'tsurf*', 'u*', 'z0*', 'z0h*', 'z0q*' ) 3289 3292 IF ( k == 0 .OR. data_output(i)(ilen-2:ilen) /= '_xy' ) THEN 3290 3293 message_string = 'illegal value for data_output: "' // & … … 3321 3324 CALL message( 'check_parameters', 'PA0322', 1, 2, 0, 6, 0 ) 3322 3325 ENDIF 3323 IF ( TRIM( var ) == 'r_a*' .AND. .NOT. land_surface .AND.&3324 .NOT. urban_surface )&3326 IF ( ( TRIM( var ) == 'r_a*' .OR. TRIM( var ) == 'tsurf*' ) & 3327 .AND. .NOT. land_surface .AND. .NOT. urban_surface ) & 3325 3328 THEN 3326 3329 message_string = 'output of "' // TRIM( var ) // '" requi' // & … … 3344 3347 IF ( TRIM( var ) == 'ssws*' ) unit = 'kg/m2*s' 3345 3348 IF ( TRIM( var ) == 't*' ) unit = 'K' 3349 IF ( TRIM( var ) == 'tsurf*' ) unit = 'K' 3346 3350 IF ( TRIM( var ) == 'u*' ) unit = 'm/s' 3347 3351 IF ( TRIM( var ) == 'z0*' ) unit = 'm' -
palm/trunk/SOURCE/data_output_2d.f90
r2735 r2742 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Enable output of surface temperature 28 ! 29 ! 2735 2018-01-11 12:01:27Z suehring 27 30 ! output of r_a moved from land-surface to consider also urban-type surfaces 28 31 ! … … 978 981 resorted = .TRUE. 979 982 two_d = .TRUE. 983 level_z(nzb+1) = zu(nzb+1) 984 985 CASE ( 'tsurf*_xy' ) ! 2d-array 986 IF ( av == 0 ) THEN 987 DO m = 1, surf_lsm_h%ns 988 i = surf_lsm_h%i(m) 989 j = surf_lsm_h%j(m) 990 local_pf(i,j,nzb+1) = surf_lsm_h%pt_surface(m) 991 ENDDO 992 993 DO m = 1, surf_usm_h%ns 994 i = surf_usm_h%i(m) 995 j = surf_usm_h%j(m) 996 local_pf(i,j,nzb+1) = surf_usm_h%pt_surface(m) 997 ENDDO 998 999 ELSE 1000 DO i = nxl, nxr 1001 DO j = nys, nyn 1002 local_pf(i,j,nzb+1) = tsurf_av(j,i) 1003 ENDDO 1004 ENDDO 1005 ENDIF 1006 resorted = .TRUE. 1007 two_d = .TRUE. 980 1008 level_z(nzb+1) = zu(nzb+1) 981 1009 -
palm/trunk/SOURCE/modules.f90
r2735 r2742 25 25 ! ----------------- 26 26 ! $Id$ 27 ! +tsurf_av 28 ! 29 ! 2735 2018-01-11 12:01:27Z suehring 27 30 ! +r_a_av 28 31 ! … … 890 893 REAL(wp), DIMENSION(:,:), ALLOCATABLE :: ssws_av !< avg. surface scalar flux 891 894 REAL(wp), DIMENSION(:,:), ALLOCATABLE :: shf_av !< avg. surface heat flux 895 REAL(wp), DIMENSION(:,:), ALLOCATABLE :: tsurf_av !< avg. surface temperature 892 896 REAL(wp), DIMENSION(:,:), ALLOCATABLE :: ts_av !< avg. characteristic temperature scale 893 897 REAL(wp), DIMENSION(:,:), ALLOCATABLE :: us_av !< avg. friction velocity -
palm/trunk/SOURCE/sum_up_3d_data.f90
r2735 r2742 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Enable output of surface temperature 28 ! 29 ! 2735 2018-01-11 12:01:27Z suehring 27 30 ! output of r_a moved from land-surface to consider also urban-type surfaces 28 31 ! … … 162 165 q_av, qc_av, ql_av, ql_c_av, ql_v_av, ql_vp_av, qr_av, qsws_av, & 163 166 qv_av, r_a_av, rho_ocean_av, s_av, sa_av, shf_av, ssws_av, & 164 ts_av, u_av, us_av, v_av, vpt_av, w_av, z0_av, z0h_av, z0q_av 167 ts_av, tsurf_av, u_av, us_av, v_av, vpt_av, w_av, z0_av, z0h_av,& 168 z0q_av 165 169 #if defined( __chem ) 166 170 USE chemistry_model_mod, & … … 409 413 ENDIF 410 414 ts_av = 0.0_wp 415 416 CASE ( 'tsurf*' ) 417 IF ( .NOT. ALLOCATED( tsurf_av ) ) THEN 418 ALLOCATE( tsurf_av(nysg:nyng,nxlg:nxrg) ) 419 ENDIF 420 tsurf_av = 0.0_wp 411 421 412 422 CASE ( 'u' ) … … 854 864 ENDDO 855 865 866 CASE ( 'tsurf*' ) 867 DO m = 1, surf_lsm_h%ns 868 i = surf_lsm_h%i(m) 869 j = surf_lsm_h%j(m) 870 tsurf_av(j,i) = tsurf_av(j,i) + surf_lsm_h%pt_surface(m) 871 ENDDO 872 873 DO m = 1, surf_usm_h%ns 874 i = surf_usm_h%i(m) 875 j = surf_usm_h%j(m) 876 tsurf_av(j,i) = tsurf_av(j,i) + surf_usm_h%pt_surface(m) 877 ENDDO 878 856 879 CASE ( 'u' ) 857 880 DO i = nxlg, nxrg
Note: See TracChangeset
for help on using the changeset viewer.