Changeset 3646 for palm/trunk
- Timestamp:
- Dec 28, 2018 5:58:49 PM (6 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/biometeorology_mod.f90
r3614 r3646 27 27 ! ----------------- 28 28 ! $Id$ 29 ! Remove check for simulated_time > 0, it is not required since biometeorology 30 ! is only called from time_integration and not during time_integration_spinup 31 ! 32 ! 3614 2018-12-10 07:05:46Z raasch 29 33 ! unused variables removed 30 34 ! … … 101 105 ONLY: average_count_3d, biometeorology, dz, dz_stretch_factor, & 102 106 dz_stretch_level, humidity, initializing_actions, nz_do3d, & 103 s imulated_time, surface_pressure107 surface_pressure 104 108 105 109 USE date_and_time_mod, & … … 1343 1347 ! 1344 1348 !-- fill out the MRT 2D grid from appropriate source (RTM, RRTMG,...) 1345 IF ( simulated_time > 0.0_wp ) THEN 1346 CALL bio_calculate_mrt_grid ( av ) 1347 ENDIF 1349 CALL bio_calculate_mrt_grid ( av ) 1348 1350 1349 1351 DO i = nxl, nxr … … 1355 1357 ! 1356 1358 !-- Determine input only if 1357 IF ( simulated_time > 0.0_wp ) THEN 1358 CALL bio_get_thermal_index_input_ij ( av, i, j, ta, vp, & 1359 ws, pair, tmrt_ij ) 1360 END IF 1359 CALL bio_get_thermal_index_input_ij ( av, i, j, ta, vp, & 1360 ws, pair, tmrt_ij ) 1361 1361 ! 1362 1362 !-- Only proceed if input is available -
palm/trunk/SOURCE/check_parameters.f90
r3637 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Formatting 28 ! 29 ! 3637 2018-12-20 01:51:36Z knoop 27 30 ! Implementation of the PALM module interface 28 31 ! … … 3315 3318 ntdim_3d(1) = do3d_time_count(1) + CEILING( & 3316 3319 ( end_time - MAX( & 3317 MERGE( skip_time_data_output_av, skip_time_data_output_av&3318 + spinup_time, data_output_during_spinup ),&3320 MERGE( skip_time_data_output_av, skip_time_data_output_av & 3321 + spinup_time, data_output_during_spinup ), & 3319 3322 simulated_time_at_begin ) & 3320 3323 ) / dt_data_output_av ) … … 3323 3326 ( end_time - MAX( & 3324 3327 MERGE(skip_time_do2d_xy, skip_time_do2d_xy + spinup_time, & 3325 data_output_during_spinup ),&3326 simulated_time_at_begin )&3328 data_output_during_spinup ), & 3329 simulated_time_at_begin ) & 3327 3330 ) / dt_do2d_xy ) 3328 3331 -
palm/trunk/SOURCE/chemistry_model_mod.f90
r3643 r3646 27 27 ! ----------------- 28 28 ! $Id$ 29 ! Bugfix: use time_since_reference_point instead of simulated_time (relevant 30 ! when using wall/soil spinup) 31 ! 32 ! 3643 2018-12-24 13:16:19Z knoop 29 33 ! Bugfix: set found logical correct in chem_data_output_2d 30 34 ! … … 1923 1927 USE statistics, & 1924 1928 ONLY: weight_pres 1925 USE control_parameters, &1926 ONLY: dt_3d, intermediate_timestep_count, simulated_time1929 USE control_parameters, & 1930 ONLY: dt_3d, intermediate_timestep_count, time_since_reference_point 1927 1931 1928 1932 IMPLICIT NONE … … 2014 2018 2015 2019 IF(maxval(rcntrl) > 0.0) THEN ! Only if rcntrl is set 2016 IF( simulated_time<= 2*dt_3d) THEN2020 IF( time_since_reference_point <= 2*dt_3d) THEN 2017 2021 rcntrl_local = 0 2018 !2019 !-- todo: remove (kanani)2020 ! WRITE(9,'(a,2f10.3)') 'USE Default rcntrl in the first steps ',simulated_time,dt_3d2021 2022 ELSE 2022 2023 rcntrl_local = rcntrl -
palm/trunk/SOURCE/data_output_2d.f90
r3637 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix: use time_since_reference_point instead of simulated_time (relevant 28 ! when using wall/soil spinup) 29 ! 30 ! 3637 2018-12-20 01:51:36Z knoop 27 31 ! Implementation of the PALM module interface 28 32 ! … … 298 302 ibc_uv_b, io_blocks, io_group, message_string, & 299 303 ntdim_2d_xy, ntdim_2d_xz, ntdim_2d_yz, & 300 psolver, section, simulated_time,&304 psolver, section, & 301 305 time_since_reference_point 302 306 … … 510 514 ntdim_2d_xy(av) ) THEN 511 515 WRITE ( message_string, * ) 'Output of xy cross-sections is not ', & 512 'given at t=', simulated_time, '&because the', &516 'given at t=', time_since_reference_point, 's because the', & 513 517 ' maximum number of output time levels is exceeded.' 514 518 CALL message( 'data_output_2d', 'PA0384', 0, 1, 0, 6, 0 ) … … 519 523 ntdim_2d_xz(av) ) THEN 520 524 WRITE ( message_string, * ) 'Output of xz cross-sections is not ', & 521 'given at t=', simulated_time, '&because the', &525 'given at t=', time_since_reference_point, 's because the', & 522 526 ' maximum number of output time levels is exceeded.' 523 527 CALL message( 'data_output_2d', 'PA0385', 0, 1, 0, 6, 0 ) … … 528 532 ntdim_2d_yz(av) ) THEN 529 533 WRITE ( message_string, * ) 'Output of yz cross-sections is not ', & 530 'given at t=', simulated_time, '&because the', &534 'given at t=', time_since_reference_point, 's because the', & 531 535 ' maximum number of output time levels is exceeded.' 532 536 CALL message( 'data_output_2d', 'PA0386', 0, 1, 0, 6, 0 ) … … 697 701 CASE ( 'pc_xy', 'pc_xz', 'pc_yz' ) ! particle concentration 698 702 IF ( av == 0 ) THEN 699 IF ( simulated_time>= particle_advection_start ) THEN703 IF ( time_since_reference_point >= particle_advection_start ) THEN 700 704 tend = prt_count 701 705 ! CALL exchange_horiz( tend, nbgp ) … … 722 726 CASE ( 'pr_xy', 'pr_xz', 'pr_yz' ) ! mean particle radius (effective radius) 723 727 IF ( av == 0 ) THEN 724 IF ( simulated_time>= particle_advection_start ) THEN728 IF ( time_since_reference_point >= particle_advection_start ) THEN 725 729 DO i = nxl, nxr 726 730 DO j = nys, nyn … … 844 848 CASE ( 'ql_vp_xy', 'ql_vp_xz', 'ql_vp_yz' ) 845 849 IF ( av == 0 ) THEN 846 IF ( simulated_time>= particle_advection_start ) THEN850 IF ( time_since_reference_point >= particle_advection_start ) THEN 847 851 DO i = nxl, nxr 848 852 DO j = nys, nyn … … 1422 1426 !-- In case of parallel output, this is only done by PE0 1423 1427 !-- to increase the performance. 1424 IF ( simulated_time/= do2d_xy_last_time(av) ) THEN1428 IF ( time_since_reference_point /= do2d_xy_last_time(av) ) THEN 1425 1429 do2d_xy_time_count(av) = do2d_xy_time_count(av) + 1 1426 do2d_xy_last_time(av) = simulated_time1430 do2d_xy_last_time(av) = time_since_reference_point 1427 1431 IF ( myid == 0 ) THEN 1428 1432 IF ( .NOT. data_output_2d_on_each_pe & … … 1611 1615 !-- In case of parallel output, this is only done by PE0 1612 1616 !-- to increase the performance. 1613 IF ( simulated_time/= do2d_xz_last_time(av) ) THEN1617 IF ( time_since_reference_point /= do2d_xz_last_time(av) ) THEN 1614 1618 do2d_xz_time_count(av) = do2d_xz_time_count(av) + 1 1615 do2d_xz_last_time(av) = simulated_time1619 do2d_xz_last_time(av) = time_since_reference_point 1616 1620 IF ( myid == 0 ) THEN 1617 1621 IF ( .NOT. data_output_2d_on_each_pe & … … 1829 1833 !-- In case of parallel output, this is only done by PE0 1830 1834 !-- to increase the performance. 1831 IF ( simulated_time/= do2d_yz_last_time(av) ) THEN1835 IF ( time_since_reference_point /= do2d_yz_last_time(av) ) THEN 1832 1836 do2d_yz_time_count(av) = do2d_yz_time_count(av) + 1 1833 do2d_yz_last_time(av) = simulated_time1837 do2d_yz_last_time(av) = time_since_reference_point 1834 1838 IF ( myid == 0 ) THEN 1835 1839 IF ( .NOT. data_output_2d_on_each_pe & -
palm/trunk/SOURCE/data_output_3d.f90
r3637 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix: use time_since_reference_point instead of simulated_time (relevant 28 ! when using wall/soil spinup) 29 ! 30 ! 3637 2018-12-20 01:51:36Z knoop 27 31 ! Implementation of the PALM module interface 28 32 ! … … 255 259 io_blocks, io_group, land_surface, message_string, & 256 260 ntdim_3d, nz_do3d, ocean_mode, plant_canopy, & 257 psolver, salsa, simulated_time, time_since_reference_point,&261 psolver, salsa, time_since_reference_point, & 258 262 urban_surface, varnamelength 259 263 … … 355 359 IF ( netcdf_data_format > 4 ) THEN 356 360 IF ( do3d_time_count(av) + 1 > ntdim_3d(av) ) THEN 357 WRITE ( message_string, * ) 'Output of 3d data is not given at t=', &358 simulated_time, '&because the maximum ', &359 'number of output time levels is ', &361 WRITE ( message_string, * ) 'Output of 3d data is not given at t=', & 362 time_since_reference_point, 's because the maximum ', & 363 'number of output time levels is ', & 360 364 'exceeded.' 361 365 CALL message( 'data_output_3d', 'PA0387', 0, 1, 0, 6, 0 ) … … 447 451 CASE ( 'pc' ) ! particle concentration (requires ghostpoint exchange) 448 452 IF ( av == 0 ) THEN 449 IF ( simulated_time>= particle_advection_start ) THEN453 IF ( time_since_reference_point >= particle_advection_start ) THEN 450 454 tend = prt_count 451 455 ELSE … … 470 474 CASE ( 'pr' ) ! mean particle radius (effective radius) 471 475 IF ( av == 0 ) THEN 472 IF ( simulated_time>= particle_advection_start ) THEN476 IF ( time_since_reference_point >= particle_advection_start ) THEN 473 477 DO i = nxl, nxr 474 478 DO j = nys, nyn … … 585 589 CASE ( 'ql_vp' ) 586 590 IF ( av == 0 ) THEN 587 IF ( simulated_time>= particle_advection_start ) THEN591 IF ( time_since_reference_point >= particle_advection_start ) THEN 588 592 DO i = nxl, nxr 589 593 DO j = nys, nyn -
palm/trunk/SOURCE/parin.f90
r3637 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix: for restarts, reset data_output_during_spinup to FALSE to enable 28 ! correct calculation of ntdim in check_parameters 29 ! 30 ! 3637 2018-12-20 01:51:36Z knoop 27 31 ! Implementation of the PALM module interface 28 32 ! … … 893 897 max_pr_user = max_pr_user_tmp 894 898 ENDIF 895 899 PRINT*, 'data_output_during_spinup 1: ', data_output_during_spinup 896 900 ! 897 901 !-- Activate spinup … … 904 908 ENDIF 905 909 end_time = end_time + spinup_time 906 IF ( TRIM( initializing_actions ) /= 'read_restart_data' ) &910 IF ( TRIM( initializing_actions ) /= 'read_restart_data' ) THEN 907 911 spinup = .TRUE. 912 ELSEIF ( TRIM( initializing_actions ) == 'read_restart_data' & 913 .AND. time_since_reference_point > 0.0_wp ) THEN 914 data_output_during_spinup = .FALSE. !< required for correct ntdim calculation 915 !< in check_parameters for restart run 916 ENDIF 908 917 ENDIF 909 918 ENDIF 919 PRINT*, 'data_output_during_spinup 2: ', data_output_during_spinup 910 920 911 921 ! -
palm/trunk/SOURCE/pmc_interface_mod.f90
r3636 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Remove unused variable simulated_time 28 ! 29 ! 3636 2018-12-19 13:48:34Z raasch 27 30 ! nopointer option removed 28 31 ! … … 342 345 coupling_char, dt_3d, dz, humidity, message_string, & 343 346 neutral, passive_scalar, rans_mode, rans_tke_e, & 344 roughness_length, simulated_time,topography, volume_flow347 roughness_length, topography, volume_flow 345 348 346 349 USE chem_modules, & -
palm/trunk/SOURCE/surface_output_mod.f90
r3614 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix: use time_since_reference_point instead of simulated_time (relevant 28 ! when using wall/soil spinup) 29 ! 30 ! 3614 2018-12-10 07:05:46Z raasch 27 31 ! unused variables removed 28 32 ! … … 864 868 865 869 USE control_parameters, & 866 ONLY: io_blocks, io_group, simulated_time870 ONLY: io_blocks, io_group, time_since_reference_point 867 871 868 872 USE pegrid, & … … 2234 2238 WRITE ( 25+av ) LEN_TRIM( 'time' ) 2235 2239 WRITE ( 25+av ) 'time' 2236 WRITE ( 25+av ) simulated_time2240 WRITE ( 25+av ) time_since_reference_point 2237 2241 WRITE ( 25+av ) LEN_TRIM( trimvar ) 2238 2242 WRITE ( 25+av ) TRIM( trimvar ) -
palm/trunk/SOURCE/synthetic_turbulence_generator_mod.f90
r3579 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix: use time_since_reference_point instead of simulated_time (relevant 28 ! when using wall/soil spinup) 29 ! 30 ! 3579 2018-11-29 15:32:39Z suehring 27 31 ! - Bugfix in calculation of turbulence scaling parameters for turbulence 28 32 ! generator in case of topography … … 1054 1058 USE control_parameters, & 1055 1059 ONLY: child_domain, dt_3d, intermediate_timestep_count, & 1056 nesting_offline, rans_mode, simulated_time, volume_flow_initial 1060 nesting_offline, rans_mode, time_since_reference_point, & 1061 volume_flow_initial 1057 1062 1058 1063 USE grid_variables, & … … 1087 1092 ! 1088 1093 !-- Initial value of fu, fv, fw 1089 IF ( simulated_time== 0.0_wp .AND. .NOT. velocity_seed_initialized ) THEN1094 IF ( time_since_reference_point == 0.0_wp .AND. .NOT. velocity_seed_initialized ) THEN 1090 1095 CALL stg_generate_seed_yz( nuy, nuz, buy, buz, fu_yz, id_stg_left ) 1091 1096 CALL stg_generate_seed_yz( nvy, nvz, bvy, bvz, fv_yz, id_stg_left ) -
palm/trunk/SOURCE/time_integration.f90
r3634 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix: use time_since_reference_point instead of simulated_time where 28 ! required (relevant when using wall/soil spinup) 29 ! 30 ! 3634 2018-12-18 12:31:28Z knoop 27 31 ! OpenACC port for SPEC 28 32 ! … … 915 919 !-- to regard droplet interactions directly 916 920 IF ( particle_advection .AND. & 917 simulated_time>= particle_advection_start .AND. &921 time_since_reference_point >= particle_advection_start .AND. & 918 922 intermediate_timestep_count == 1 ) THEN 919 923 CALL lpm … … 1424 1428 1425 1429 1426 IF ( simulated_time>= skip_time_data_output_av ) THEN1430 IF ( time_since_reference_point >= skip_time_data_output_av ) THEN 1427 1431 time_do_av = time_do_av + dt_3d 1428 1432 ENDIF 1429 IF ( simulated_time>= skip_time_do2d_xy ) THEN1433 IF ( time_since_reference_point >= skip_time_do2d_xy ) THEN 1430 1434 time_do2d_xy = time_do2d_xy + dt_3d 1431 1435 ENDIF 1432 IF ( simulated_time>= skip_time_do2d_xz ) THEN1436 IF ( time_since_reference_point >= skip_time_do2d_xz ) THEN 1433 1437 time_do2d_xz = time_do2d_xz + dt_3d 1434 1438 ENDIF 1435 IF ( simulated_time>= skip_time_do2d_yz ) THEN1439 IF ( time_since_reference_point >= skip_time_do2d_yz ) THEN 1436 1440 time_do2d_yz = time_do2d_yz + dt_3d 1437 1441 ENDIF 1438 IF ( simulated_time>= skip_time_do3d ) THEN1442 IF ( time_since_reference_point >= skip_time_do3d ) THEN 1439 1443 time_do3d = time_do3d + dt_3d 1440 1444 ENDIF 1441 1445 DO mid = 1, masks 1442 IF ( simulated_time>= skip_time_domask(mid) ) THEN1446 IF ( time_since_reference_point >= skip_time_domask(mid) ) THEN 1443 1447 time_domask(mid)= time_domask(mid) + dt_3d 1444 1448 ENDIF 1445 1449 ENDDO 1446 1450 time_dvrp = time_dvrp + dt_3d 1447 IF ( simulated_time>= skip_time_dosp ) THEN1451 IF ( time_since_reference_point >= skip_time_dosp ) THEN 1448 1452 time_dosp = time_dosp + dt_3d 1449 1453 ENDIF … … 1452 1456 time_dopts = time_dopts + dt_3d 1453 1457 ENDIF 1454 IF ( simulated_time>= skip_time_dopr ) THEN1458 IF ( time_since_reference_point >= skip_time_dopr ) THEN 1455 1459 time_dopr = time_dopr + dt_3d 1456 1460 ENDIF … … 1460 1464 !-- Increment time-counter for surface output 1461 1465 IF ( surface_data_output ) THEN 1462 IF ( simulated_time>= skip_time_dosurf ) THEN1466 IF ( time_since_reference_point >= skip_time_dosurf ) THEN 1463 1467 time_dosurf = time_dosurf + dt_3d 1464 1468 ENDIF 1465 IF ( simulated_time>= skip_time_dosurf_av ) THEN1469 IF ( time_since_reference_point >= skip_time_dosurf_av ) THEN 1466 1470 time_dosurf_av = time_dosurf_av + dt_3d 1467 1471 ENDIF … … 1552 1556 IF ( averaging_interval_pr /= 0.0_wp .AND. & 1553 1557 ( dt_dopr - time_dopr ) <= averaging_interval_pr .AND. & 1554 simulated_time>= skip_time_dopr ) THEN1558 time_since_reference_point >= skip_time_dopr ) THEN 1555 1559 time_dopr_av = time_dopr_av + dt_3d 1556 1560 IF ( time_dopr_av >= dt_averaging_input_pr ) THEN … … 1566 1570 IF ( averaging_interval /= 0.0_wp .AND. & 1567 1571 ( dt_data_output_av - time_do_av ) <= averaging_interval .AND. & 1568 simulated_time>= skip_time_data_output_av ) &1572 time_since_reference_point >= skip_time_data_output_av ) & 1569 1573 THEN 1570 1574 time_do_sla = time_do_sla + dt_3d … … 1580 1584 IF ( averaging_interval_surf /= 0.0_wp .AND. & 1581 1585 ( dt_dosurf_av - time_dosurf_av ) <= averaging_interval_surf & 1582 .AND. simulated_time>= skip_time_dosurf_av ) THEN1586 .AND. time_since_reference_point >= skip_time_dosurf_av ) THEN 1583 1587 IF ( time_dosurf_av >= dt_averaging_input ) THEN 1584 1588 CALL surface_output_averaging … … 1592 1596 IF ( averaging_interval_sp /= 0.0_wp .AND. & 1593 1597 ( dt_dosp - time_dosp ) <= averaging_interval_sp .AND. & 1594 simulated_time>= skip_time_dosp ) THEN1598 time_since_reference_point >= skip_time_dosp ) THEN 1595 1599 time_dosp_av = time_dosp_av + dt_3d 1596 1600 IF ( time_dosp_av >= dt_averaging_input_pr ) THEN … … 1706 1710 IF ( particle_advection ) THEN 1707 1711 IF ( time_dopts >= dt_dopts .OR. & 1708 ( simulated_time>= particle_advection_start .AND. &1712 ( time_since_reference_point >= particle_advection_start .AND. & 1709 1713 first_call_lpm ) ) THEN 1710 1714 CALL data_output_ptseries -
palm/trunk/SOURCE/turbulence_closure_mod.f90
r3636 r3646 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Remove unused variable simulated_time 28 ! 29 ! 3636 2018-12-19 13:48:34Z raasch 27 30 ! nopointer option removed 28 31 ! … … 194 197 les_dynamic, les_mw, ocean_mode, plant_canopy, prandtl_number, & 195 198 pt_reference, rans_mode, rans_tke_e, rans_tke_l, & 196 simulated_time,timestep_scheme, turbulence_closure,&199 timestep_scheme, turbulence_closure, & 197 200 turbulent_inflow, use_upstream_for_tke, vpt_reference, & 198 201 ws_scheme_sca, current_timestep_number
Note: See TracChangeset
for help on using the changeset viewer.