Changeset 411 for palm/trunk/SOURCE
- Timestamp:
- Dec 11, 2009 2:15:58 PM (15 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 1 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/CURRENT_MODIFICATIONS
r407 r411 5 5 (check_parameters, init_3d_model, parin) 6 6 7 check parameters, init_3d_model, parin 7 Large scale vertical motion (subsidence/ascent) can be applied to the 8 prognostic equation for the potential temperature. (check_parameters, header, 9 Makefile, modules, parin, prognostic_equations, read_var_list, subsidence, 10 write_var_list) 11 12 check parameters, header, init_3d_model, Makefile, modules, parin prognostic equations, read_var_list, subsidence, write_var_list 8 13 9 14 Changed: -
palm/trunk/SOURCE/Makefile
r410 r411 5 5 # ----------------- 6 6 # +set_particle_attributes, set_slicer_attributes_dvrp 7 # +subsidence 7 8 # 8 9 # Branch revisions: … … 81 82 set_particle_attributes.f90 set_slicer_attributes_dvrp.f90 \ 82 83 singleton.f90 sor.f90 spline_x.f90 \ 83 spline_y.f90 spline_z.f90 sum_up_3d_data.f90 surface_coupler.f90 \ 84 spline_y.f90 spline_z.f90 subsidence.f90 \ 85 sum_up_3d_data.f90 surface_coupler.f90 \ 84 86 swap_timelevel.f90 temperton_fft.f90 time_integration.f90 \ 85 87 time_to_string.f90 timestep.f90 timestep_scheme_steering.f90 \ … … 124 126 set_particle_attributes.o set_slicer_attributes_dvrp.o \ 125 127 singleton.o sor.o spline_x.o spline_y.o \ 126 spline_z.o sum_up_3d_data.o surface_coupler.o swap_timelevel.o \ 128 spline_z.o subsidence.o sum_up_3d_data.o surface_coupler.o \ 129 swap_timelevel.o \ 127 130 temperton_fft.o time_integration.o time_to_string.o \ 128 131 timestep.o timestep_scheme_steering.o transpose.o \ … … 188 191 check_for_restart.o: modules.o 189 192 check_open.o: modules.o 190 check_parameters.o: modules.o 193 check_parameters.o: modules.o subsidence.o 191 194 close_file.o: modules.o 192 195 compute_vpt.o: modules.o … … 260 263 eqn_state_seawater.o impact_of_latent_heat.o \ 261 264 plant_canopy_model.o production_e.o \ 262 user_actions.o265 subsidence.o user_actions.o 263 266 random_gauss.o: random_function.o 264 267 read_3d_binary.o: modules.o random_function.o … … 272 275 spline_y.o: modules.o 273 276 spline_z.o: modules.o 277 subsidence.o: modules.o 274 278 sum_up_3d_data.o: modules.o 275 279 surface_coupler.o: modules.o -
palm/trunk/SOURCE/check_parameters.f90
r410 r411 5 5 ! ----------------- 6 6 ! Enabled passive scalar/humidity wall fluxes for non-flat topography 7 ! Initialization of large scale vertical motion (subsidence/ascent) 7 8 ! 8 9 ! Branch revisions: … … 114 115 USE pegrid 115 116 USE profil_parameter 117 USE subsidence_mod 116 118 USE statistics 117 119 USE transpose_indices … … 983 985 984 986 ENDIF 987 988 ! 989 !-- Initialize large scale subsidence if required 990 IF ( ws_vertical_gradient_level(1) /= -9999999.9 ) THEN 991 large_scale_subsidence = .TRUE. 992 CALL init_w_subsidence 993 END IF 994 985 995 986 996 ! -
palm/trunk/SOURCE/header.f90
r410 r411 4 4 ! Current revisions: 5 5 ! ----------------- 6 ! +large scale vertical motion (subsidence/ascent) 6 7 ! 7 8 ! … … 84 85 ! end of the run, then writing additional information about CPU-usage on file 85 86 ! header. 86 !----------------------------------------------------------------------------- -!87 !-----------------------------------------------------------------------------! 87 88 88 89 USE arrays_3d … … 96 97 USE particle_attributes 97 98 USE pegrid 99 USE subsidence_mod 98 100 USE spectrum 99 101 … … 323 325 WRITE ( io, 152 ) dpdxy, dp_level_b, '.' 324 326 ENDIF 327 ENDIF 328 IF ( large_scale_subsidence ) THEN 329 WRITE ( io, 153 ) 330 WRITE ( io, 154 ) 325 331 ENDIF 326 332 WRITE ( io, 99 ) … … 1357 1363 1358 1364 WRITE ( io, 425 ) TRIM( coordinates ), TRIM( temperatures ), & 1365 TRIM( gradients ), TRIM( slices ) 1366 ENDIF 1367 1368 ! 1369 !-- Profile for the large scale vertial velocity 1370 !-- Building output strings, starting with surface value 1371 IF ( large_scale_subsidence ) THEN 1372 temperatures = ' 0.0' 1373 gradients = '------' 1374 slices = ' 0' 1375 coordinates = ' 0.0' 1376 i = 1 1377 DO WHILE ( ws_vertical_gradient_level_ind(i) /= -9999 ) 1378 1379 WRITE (coor_chr,'(E10.2,7X)') & 1380 w_subs(ws_vertical_gradient_level_ind(i)) 1381 temperatures = TRIM( temperatures ) // ' ' // TRIM( coor_chr ) 1382 1383 WRITE (coor_chr,'(E10.2,7X)') ws_vertical_gradient(i) 1384 gradients = TRIM( gradients ) // ' ' // TRIM( coor_chr ) 1385 1386 WRITE (coor_chr,'(I10,7X)') ws_vertical_gradient_level_ind(i) 1387 slices = TRIM( slices ) // ' ' // TRIM( coor_chr ) 1388 1389 WRITE (coor_chr,'(F10.2,7X)') ws_vertical_gradient_level(i) 1390 coordinates = TRIM( coordinates ) // ' ' // TRIM( coor_chr ) 1391 1392 i = i + 1 1393 ENDDO 1394 1395 WRITE ( io, 426 ) TRIM( coordinates ), TRIM( temperatures ), & 1359 1396 TRIM( gradients ), TRIM( slices ) 1360 1397 ENDIF … … 1568 1605 /' ',2(1X,E12.5),'Pa/m in x/y direction', & 1569 1606 /' starting from dp_level_b =', F8.3, 'm', A /) 1607 153 FORMAT (' --> Large-scale vertical motion is used in the ', & 1608 'prognostic equation for') 1609 154 FORMAT (' the potential temperature') 1570 1610 200 FORMAT (//' Run time and time step information:'/ & 1571 1611 ' ----------------------------------'/) … … 1814 1854 ' Gradient: ',A,' psu/100m'/ & 1815 1855 ' Gridpoint: ',A) 1856 426 FORMAT (/' Characteristic levels of the subsidence/ascent profile:'// & 1857 ' Height: ',A,' m'/ & 1858 ' w_subs: ',A,' m/s'/ & 1859 ' Gradient: ',A,' (m/s)/100m'/ & 1860 ' Gridpoint: ',A) 1816 1861 450 FORMAT (//' LES / Turbulence quantities:'/ & 1817 1862 ' ---------------------------'/) -
palm/trunk/SOURCE/modules.f90
r410 r411 8 8 ! initial data assignments to some dvrp arrays changed due to error messages 9 9 ! from gfortran compiler 10 ! +large_scale_subsidence, ws_vertical_gradient, ws_vertical_gradient_level, 11 ! ws_vertical_gradient_level_ind, w_subs 10 12 ! 11 13 ! Branch revisions: … … 155 157 ddzu, dd2zu, dzu, ddzw, dzw, hyp, inflow_damping_factor, km_damp_x, & 156 158 km_damp_y, lad, l_grid, pt_init, q_init, rdf, sa_init, ug, u_init, & 157 u_nzb_p1_for_vfc, vg, v_init, v_nzb_p1_for_vfc, zu, zw159 u_nzb_p1_for_vfc, vg, v_init, v_nzb_p1_for_vfc, w_subs, zu, zw 158 160 159 161 REAL, DIMENSION(:,:), ALLOCATABLE :: & … … 398 400 section_xz(100) = -9999, section_yz(100) = -9999, & 399 401 ug_vertical_gradient_level_ind(10) = -9999, & 400 vg_vertical_gradient_level_ind(10) = -9999 402 vg_vertical_gradient_level_ind(10) = -9999, & 403 ws_vertical_gradient_level_ind(10) = -9999 401 404 402 405 INTEGER, DIMENSION(:), ALLOCATABLE :: grid_level_count … … 426 429 humidity = .FALSE., humidity_remote = .FALSE., & 427 430 inflow_l = .FALSE., inflow_n = .FALSE., & 428 inflow_r = .FALSE., inflow_s = .FALSE., iso2d_output = .FALSE.,& 431 inflow_r = .FALSE., inflow_s = .FALSE., & 432 iso2d_output = .FALSE., large_scale_subsidence = .FALSE., & 429 433 mg_switch_to_pe0 = .FALSE., & 430 434 netcdf_output = .FALSE., netcdf_64bit = .FALSE., & … … 545 549 volume_flow_initial(1:2) = 0.0, wall_heatflux(0:4) = 0.0, & 546 550 wall_humidityflux(0:4) = 0.0, wall_qflux(0:4) = 0.0, & 547 wall_salinityflux(0:4) = 0.0, wall_scalarflux(0:4) = 0.0 551 wall_salinityflux(0:4) = 0.0, wall_scalarflux(0:4) = 0.0, & 552 ws_vertical_gradient(10) = 0.0, & 553 ws_vertical_gradient_level(10) = -9999999.9 548 554 549 555 REAL, DIMENSION(:), ALLOCATABLE :: dp_smooth_factor -
palm/trunk/SOURCE/parin.f90
r410 r411 5 5 ! ----------------- 6 6 ! +wall_humidityflux, wall_scalarflux 7 ! +ws_vertical_gradient, ws_vertical_gradient_level 7 8 ! 8 9 ! Branch revisions: … … 137 138 use_upstream_for_tke, vg_surface, vg_vertical_gradient, & 138 139 vg_vertical_gradient_level, v_bulk, wall_adjustment, & 139 wall_heatflux, wall_humidityflux, wall_scalarflux 140 wall_heatflux, wall_humidityflux, wall_scalarflux, & 141 ws_vertical_gradient, ws_vertical_gradient_level 140 142 141 143 -
palm/trunk/SOURCE/prognostic_equations.f90
r407 r411 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! add call of subsidence in the prognostic equation for 7 ! the potential temperature 6 8 ! 7 9 ! … … 94 96 USE plant_canopy_model_mod 95 97 USE production_e_mod 98 USE subsidence_mod 96 99 USE user_actions_mod 97 100 … … 452 455 IF ( plant_canopy .AND. ( cthf /= 0.0 ) ) THEN 453 456 CALL plant_canopy_model( i, j, 4 ) 457 ENDIF 458 459 ! 460 !-- If required compute influence of large-scale subsidence/ascent 461 IF ( large_scale_subsidence ) THEN 462 CALL subsidence ( i, j, tend, pt, pt_init ) 454 463 ENDIF 455 464 … … 1094 1103 ENDIF 1095 1104 1105 1106 !-- If required compute influence of large-scale subsidence/ascent 1107 IF ( large_scale_subsidence ) THEN 1108 CALL subsidence ( i, j, tend, pt, pt_init ) 1109 ENDIF 1110 1111 1096 1112 CALL user_actions( i, j, 'pt-tendency' ) 1097 1113 … … 1680 1696 ENDIF 1681 1697 1698 !--If required compute influence of large-scale subsidence/ascent 1699 IF ( large_scale_subsidence ) THEN 1700 CALL subsidence ( tend, pt, pt_init ) 1701 ENDIF 1682 1702 1683 1703 CALL user_actions( 'pt-tendency' ) -
palm/trunk/SOURCE/read_var_list.f90
r392 r411 4 4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! +large_scale_subsidence, ws_vertical_gradient, ws_vertical_gradient_level, 7 ! ws_vertical_gradient_level_ind 7 8 ! 8 9 ! Former revisions: … … 346 347 CASE ( 'last_dt_change' ) 347 348 READ ( 13 ) last_dt_change 349 CASE ( 'large_scale_subsidence' ) 350 READ ( 13 ) large_scale_subsidence 348 351 CASE ( 'leaf_surface_concentration' ) 349 352 READ ( 13 ) leaf_surface_concentration … … 593 596 CASE ( 'wall_adjustment' ) 594 597 READ ( 13 ) wall_adjustment 598 CASE ( 'ws_vertical_gradient' ) 599 READ ( 13 ) ws_vertical_gradient 600 CASE ( 'ws_vertical_gradient_level' ) 601 READ ( 13 ) ws_vertical_gradient_level 602 CASE ( 'ws_vertical_gradient_level_ind' ) 603 READ ( 13 ) ws_vertical_gradient_level_ind 595 604 CASE ( 'w_max' ) 596 605 READ ( 13 ) w_max -
palm/trunk/SOURCE/write_var_list.f90
r392 r411 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! +large_scale_subsidence, ws_vertical_gradient, ws_vertical_gradient_level, 7 ! ws_vertical_gradient_level_ind 7 8 ! 8 9 ! Former revisions: … … 267 268 WRITE ( 14 ) 'last_dt_change ' 268 269 WRITE ( 14 ) last_dt_change 270 WRITE ( 14 ) 'large_scale_subsidence ' 271 WRITE ( 14 ) large_scale_subsidence 269 272 WRITE ( 14 ) 'leaf_surface_concentration ' 270 273 WRITE ( 14 ) leaf_surface_concentration … … 511 514 WRITE ( 14 ) 'wall_adjustment ' 512 515 WRITE ( 14 ) wall_adjustment 516 WRITE ( 14 ) 'ws_vertical_gradient ' 517 WRITE ( 14 ) ws_vertical_gradient 518 WRITE ( 14 ) 'ws_vertical_gradient_level ' 519 WRITE ( 14 ) ws_vertical_gradient_level 520 WRITE ( 14 ) 'ws_vertical_gradient_level_ind' 521 WRITE ( 14 ) ws_vertical_gradient_level_ind 513 522 WRITE ( 14 ) 'w_max ' 514 523 WRITE ( 14 ) w_max
Note: See TracChangeset
for help on using the changeset viewer.