Changeset 4356 for palm/trunk
- Timestamp:
- Dec 20, 2019 5:09:33 PM (5 years ago)
- Location:
- palm/trunk/SOURCE
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/chem_emissions_mod.f90
r4242 r4356 27 27 ! ----------------- 28 28 ! $Id$ 29 ! Minor formatting adjustment 30 ! 31 ! 4242 2019-09-27 12:59:10Z suehring 29 32 ! Adjust index_hh access to new definition accompanied with new 30 33 ! palm_date_time_mod. Note, this is just a preleminary fix. (E Chan) … … 934 937 ONLY: days_per_week, get_date_time, hours_per_day, months_per_year, seconds_per_day 935 938 936 IMPLICIT NONE939 IMPLICIT NONE 937 940 938 941 -
palm/trunk/SOURCE/init_grid.f90
r4346 r4356 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Revise error messages for generic tunnel setup. 28 ! 29 ! 4346 2019-12-18 11:55:56Z motisi 27 30 ! Introduction of wall_flags_total_0, which currently sets bits based on static 28 31 ! topography information used in wall_flags_static_0 … … 2073 2076 ENDIF 2074 2077 ! 2075 !-- Tunnel axis along y 2078 !-- Check for too small tunnel width in x- and y-direction 2079 IF ( tunnel_width_x /= 9999999.9_wp .AND. & 2080 tunnel_width_x - 2.0_wp * td <= 2.0_wp * dx ) THEN 2081 message_string = 'tunnel_width_x too small' 2082 CALL message( 'init_grid', 'PA0175', 1, 2, 0, 6, 0 ) 2083 ENDIF 2084 IF ( tunnel_width_y /= 9999999.9_wp .AND. & 2085 tunnel_width_y - 2.0_wp * td <= 2.0_wp * dy ) THEN 2086 message_string = 'tunnel_width_y too small' 2087 CALL message( 'init_grid', 'PA0455', 1, 2, 0, 6, 0 ) 2088 ENDIF 2089 ! 2090 !-- Check for too large tunnel width. 2091 !-- Tunnel axis along y. 2076 2092 IF ( tunnel_width_x /= 9999999.9_wp ) THEN 2077 2093 IF ( tunnel_width_x > ( nx + 1 ) * dx ) THEN 2078 message_string = ' Tunnel widthtoo large'2094 message_string = 'tunnel_width_x too large' 2079 2095 CALL message( 'init_grid', 'PA0282', 1, 2, 0, 6, 0 ) 2080 2096 ENDIF … … 2092 2108 tye_in = tye_out 2093 2109 ENDIF 2094 IF ( tunnel_width_x /= 9999999.9_wp .AND. & 2095 tunnel_width_x - 2.0_wp * td <= 2.0_wp * dx ) & 2096 THEN 2097 message_string = 'Tunnel width too small' 2098 CALL message( 'init_grid', 'PA0175', 1, 2, 0, 6, 0 ) 2099 ENDIF 2100 IF ( tunnel_width_y /= 9999999.9_wp .AND. & 2101 tunnel_width_y - 2.0_wp * td <= 2.0_wp * dy ) & 2102 THEN 2103 message_string = 'Tunnel width too small' 2104 CALL message( 'init_grid', 'PA0455', 1, 2, 0, 6, 0 ) 2105 ENDIF 2106 ! 2107 !-- Tunnel axis along x 2110 ! 2111 !-- Tunnel axis along x. 2108 2112 IF ( tunnel_width_y /= 9999999.9_wp ) THEN 2109 2113 IF ( tunnel_width_y > ( ny + 1 ) * dy ) THEN 2110 message_string = ' Tunnel widthtoo large'2114 message_string = 'tunnel_width_y too large' 2111 2115 CALL message( 'init_grid', 'PA0456', 1, 2, 0, 6, 0 ) 2112 2116 ENDIF -
palm/trunk/SOURCE/land_surface_model_mod.f90
r4339 r4356 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Correct single message calls, local checks must be given by the respective 28 ! mpi rank. 29 ! 30 ! 4339 2019-12-13 18:18:30Z suehring 27 31 ! Bugfix, character length too short, caused crash on NEC. 28 32 ! … … 4856 4860 message_string = 'For non-pavement surfaces the combination ' // & 4857 4861 ' lai = 0.0 and c_veg = 1.0 is not allowed.' 4858 CALL message( 'lsm_rrd_local', 'PA0671', 2, 2, 0, 6, 0 )4862 CALL message( 'lsm_rrd_local', 'PA0671', 2, 2, myid, 6, 0 ) 4859 4863 ENDIF 4860 4864 … … 4865 4869 message_string = 'For non-pavement surfaces the combination ' // & 4866 4870 ' lai = 0.0 and c_veg = 1.0 is not allowed.' 4867 CALL message( 'lsm_rrd_local', 'PA0671', 2, 2, 0, 6, 0 )4871 CALL message( 'lsm_rrd_local', 'PA0671', 2, 2, myid, 6, 0 ) 4868 4872 ENDIF 4869 4873 ENDDO -
palm/trunk/SOURCE/netcdf_data_input_mod.f90
r4346 r4356 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Correct single message calls, local checks must be given by the respective 28 ! mpi rank. 29 ! 30 ! 4346 2019-12-18 11:55:56Z motisi 27 31 ! Introduction of wall_flags_total_0, which currently sets bits based on static 28 32 ! topography information used in wall_flags_static_0 … … 3495 3499 message_string = 'If vegetation_type = 0 at any location, ' // & 3496 3500 'vegetation_pars is required' 3497 CALL message( 'netcdf_data_input_mod', 'PA0555', 2, 2, -1, 6, 0 )3501 CALL message( 'netcdf_data_input_mod', 'PA0555', 2, 2, myid, 6, 0 ) 3498 3502 ENDIF 3499 3503 IF ( .NOT. root_area_density_lsm_f%from_file ) THEN … … 3528 3532 message_string = 'If buildings are provided, also building_type ' // & 3529 3533 'is required' 3530 CALL message( 'netcdf_data_input_mod', 'PA0581', 2, 2, myid, 6, 0 )3534 CALL message( 'netcdf_data_input_mod', 'PA0581', 2, 2, 0, 6, 0 ) 3531 3535 ENDIF 3532 3536 ! … … 3535 3539 message_string = 'If buildings are provided, also building_id ' // & 3536 3540 'is required' 3537 CALL message( 'netcdf_data_input_mod', 'PA0582', 2, 2, myid, 6, 0 )3541 CALL message( 'netcdf_data_input_mod', 'PA0582', 2, 2, 0, 6, 0 ) 3538 3542 ENDIF 3539 3543 ! … … 3555 3559 message_string = 'If building_type is provided, also building_id '// & 3556 3560 'is required' 3557 CALL message( 'netcdf_data_input_mod', 'PA0519', 2, 2, myid, 6, 0 )3561 CALL message( 'netcdf_data_input_mod', 'PA0519', 2, 2, 0, 6, 0 ) 3558 3562 ENDIF 3559 3563 ! … … 4838 4842 'non-building coordinates (xs, ys, zenith, azimuth): ', & 4839 4843 xs(isurf), ys(isurf), zenith(isurf), azimuth(isurf) 4840 CALL message( 'get_variable_surf', 'PA0684', 2, 2, 0, 6, 0 )4844 CALL message( 'get_variable_surf', 'PA0684', 2, 2, myid, 6, 0 ) 4841 4845 ENDIF 4842 4846 ! -
palm/trunk/SOURCE/plant_canopy_model_mod.f90
r4346 r4356 27 27 ! ----------------- 28 28 ! $Id$ 29 ! Correct single message call, local check must be given by the respective 30 ! mpi rank. 31 ! 32 ! 4346 2019-12-18 11:55:56Z motisi 29 33 ! Introduction of wall_flags_total_0, which currently sets bits based on static 30 34 ! topography information used in wall_flags_static_0 … … 1126 1130 !-- Check whether topography and local vegetation on top exceed 1127 1131 !-- height of the model domain. 1128 k = topo_top_ind(j,i,0) 1129 IF ( k + pch_index_ji(j,i) >= nzt + 1 ) THEN 1132 IF ( topo_top_ind(j,i,0) + pch_index_ji(j,i) >= nzt + 1 ) THEN 1130 1133 message_string = 'Local vegetation height on top of ' // & 1131 1134 'topography exceeds height of model domain.' 1132 CALL message( 'pcm_init', 'PA0674', 2, 2, 0, 6, 0 )1135 CALL message( 'pcm_init', 'PA0674', 2, 2, myid, 6, 0 ) 1133 1136 ENDIF 1134 1137 -
palm/trunk/SOURCE/read_restart_data_mod.f90
r4331 r4356 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Change automatic arrays to allocatable ones in rrd_local, in order to avoid 28 ! memory problems due to too small stack size for large jobs with intel 29 ! compiler. (J.Resler) 30 ! 31 ! 4331 2019-12-10 18:25:02Z suehring 27 32 ! Enable restart data for 2-m potential temperature output 28 33 ! … … 1050 1055 INTEGER(iwp), DIMENSION(numprocs_previous_run) :: overlap_count !< 1051 1056 1052 INTEGER(iwp), DIMENSION( numprocs_previous_run,1000):: nxlfa !<1053 INTEGER(iwp), DIMENSION( numprocs_previous_run,1000):: nxrfa !<1054 INTEGER(iwp), DIMENSION( numprocs_previous_run,1000):: nynfa !<1055 INTEGER(iwp), DIMENSION( numprocs_previous_run,1000):: nysfa !<1056 INTEGER(iwp), DIMENSION( numprocs_previous_run,1000):: offset_xa !<1057 INTEGER(iwp), DIMENSION( numprocs_previous_run,1000):: offset_ya !<1057 INTEGER(iwp), DIMENSION(:,:), ALLOCATABLE :: nxlfa !< 1058 INTEGER(iwp), DIMENSION(:,:), ALLOCATABLE :: nxrfa !< 1059 INTEGER(iwp), DIMENSION(:,:), ALLOCATABLE :: nynfa !< 1060 INTEGER(iwp), DIMENSION(:,:), ALLOCATABLE :: nysfa !< 1061 INTEGER(iwp), DIMENSION(:,:), ALLOCATABLE :: offset_xa !< 1062 INTEGER(iwp), DIMENSION(:,:), ALLOCATABLE :: offset_ya !< 1058 1063 1059 1064 INTEGER(isp), DIMENSION(:,:), ALLOCATABLE :: tmp_2d_id_random !< temporary array for storing random generator data … … 1070 1075 !-- Read data from previous model run. 1071 1076 CALL cpu_log( log_point_s(14), 'rrd_local', 'start' ) 1077 ! 1078 !-- Allocate temporary buffer arrays. In previous versions, there were 1079 !-- declared as automated arrays, causing memory problems when these 1080 !-- were allocate on stack. 1081 ALLOCATE( nxlfa(numprocs_previous_run,1000) ) 1082 ALLOCATE( nxrfa(numprocs_previous_run,1000) ) 1083 ALLOCATE( nynfa(numprocs_previous_run,1000) ) 1084 ALLOCATE( nysfa(numprocs_previous_run,1000) ) 1085 ALLOCATE( offset_xa(numprocs_previous_run,1000) ) 1086 ALLOCATE( offset_ya(numprocs_previous_run,1000) ) 1072 1087 1073 1088 ! … … 1793 1808 1794 1809 ENDDO ! dataloop 1795 1796 1810 ! 1797 1811 !-- Close the restart file … … 1801 1815 1802 1816 ENDDO ! loop over restart files 1803 1817 ! 1818 !-- Deallocate temporary buffer arrays 1819 DEALLOCATE( nxlfa ) 1820 DEALLOCATE( nxrfa ) 1821 DEALLOCATE( nynfa ) 1822 DEALLOCATE( nysfa ) 1823 DEALLOCATE( offset_xa ) 1824 DEALLOCATE( offset_ya ) 1804 1825 ! 1805 1826 !-- Restore the original filename for the restart file to be written -
palm/trunk/SOURCE/time_integration.f90
r4346 r4356 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Bugfix, hour_call_emis uninitialized at first call of time_integration 28 ! 29 ! 4346 2019-12-18 11:55:56Z motisi 27 30 ! Introduction of wall_flags_total_0, which currently sets bits based on static 28 31 ! topography information used in wall_flags_static_0 … … 390 393 CHARACTER (LEN=9) :: time_to_string !< 391 394 392 INTEGER(iwp) :: hour !< hour of current time393 INTEGER(iwp) :: hour_call_emis !< last hour where emission was called394 INTEGER(iwp) :: ib !< index for aerosol size bins395 INTEGER(iwp) :: ic !< index for aerosol mass bins396 INTEGER(iwp) :: icc !< additional index for aerosol mass bins397 INTEGER(iwp) :: ig !< index for salsa gases398 INTEGER(iwp) :: lsp !<399 INTEGER(iwp) :: lsp_usr !<400 INTEGER(iwp) :: mid !< masked output running index401 INTEGER(iwp) :: n !< loop counter for chemistry species395 INTEGER(iwp) :: hour !< hour of current time 396 INTEGER(iwp) :: hour_call_emis = -1 !< last hour where emission was called 397 INTEGER(iwp) :: ib !< index for aerosol size bins 398 INTEGER(iwp) :: ic !< index for aerosol mass bins 399 INTEGER(iwp) :: icc !< additional index for aerosol mass bins 400 INTEGER(iwp) :: ig !< index for salsa gases 401 INTEGER(iwp) :: lsp !< 402 INTEGER(iwp) :: lsp_usr !< 403 INTEGER(iwp) :: mid !< masked output running index 404 INTEGER(iwp) :: n !< loop counter for chemistry species 402 405 403 406 REAL(wp) :: dt_3d_old !< temporary storage of timestep to be used for
Note: See TracChangeset
for help on using the changeset viewer.