Changeset 254 for palm/trunk
- Timestamp:
- Mar 5, 2009 3:33:42 PM (16 years ago)
- Location:
- palm/trunk
- Files:
-
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/DOC/tec/message_identifiers
r247 r254 267 267 PA0171 NetCDF: no 64-bit offset allowed on this machine 268 268 PA0172 no OPEN-statement for file-id ... 269 PA0173 wrong component: ... 270 PA0174 wrong argument expected: ... given: ... 271 PA0175 no time measurement defined on this host 272 PA0176 negative time interval occured 273 PE ... L=PAUSE "..." new=... last=... 274 PA0177 negative time interval occured 275 PE ... L=STOP "..." new=... last=... isum=... 276 PA0178 negative time interval occured 277 PE ... L=STOP "..." sum=... mtime=... 278 PA0179 unknown modus of time measurement: ... 279 PA0180 unknown cross-section: ... 280 PA0181 no output provided for: ... 281 PA0182 no output available for: ... 282 PA0183 if humidity/passive_scalar = FALSE output of ... is not provided 283 PA0184 if cloud_physics = FALSE output of ... is not provided 284 PA0185 data_output_profiles: normalizing cross ... 285 is not possible since one of the normalizing factors is zero! 286 cross_normx_factor(...,...) = ... 287 cross_normy_factor(...,...) = ... 288 PA0186 no spectra data available 289 PA0187 fft method "..." currently does not work on NEC 290 PA0188 no system-specific fft-call available 291 PA0189 fft method "..." not available 292 PA0190 flow_statistics is called two times within one timestep 293 PA0191 unknown action(s): ... 294 PA0192 timestep has exceeded the lower limit dt_1d = ... s 295 simulation stopped! 296 PA0193 unknown initializing problem 297 PA0194 number of time series quantities exceeds its maximum 298 of dots_max = ... Please increase dots_max in modules.f90. 299 PA0195 dvrp_username is undefined 300 PA0196 dvrp_output="..." not allowed 301 PA0197 dvrp_file="..." not allowed 302 PA0198 mode_dvrp="..." not allowed 303 PA0199 split of communicator not realized with MPI1 coupling 304 atmosphere-ocean' 305 PA0200 missing dz 306 PA0201 dz=... <= 0.0 307 PA0202 grid anisotropy exceeds threshold given by only local 308 horizontal reduction of near_wall mixing length l_wall 309 starting from height level k = ... . 310 PA0203 inconsistent building parameters: bxl=... bxr=... bys=... 311 byn=... nx=... ny=... 312 PA0204 no street canyon width given 313 PA0205 inconsistent canyon parameters: cxl=... cxr=... 314 cwx=... ch=... nx=... ny=... 315 PA0206 inconsistent canyon parameters:... cys=... cyn=... 316 cwy=... ch=... nx=... ny=... 317 PA0207 inconsistent canyon parameters: street canyon can 318 only be oriented either in x- or in y-direction 319 PA0208 file TOPOGRAPHY_DATA does not exist 320 PA0209 errors in file TOPOGRAPHY_DATA 321 PA0210 nzb_local values are outside the model domain 322 MINVAL( nzb_local ) = ... 323 MAXVAL( nzb_local ) = ... 324 PA0211 nzb_local does not fulfill cyclic boundary condition 325 in x-direction 326 PA0212 nzb_local does not fulfill cyclic boundary condition 327 in y-direction 328 PA0213 max_number_of_particle_groups =... 329 number_of_particle_groups reset to ... 330 PA0214 version mismatch concerning data from prior run 331 version on file = ... 332 version in program = ... 333 PA0215 particle group # ... has a density ratio /= 0 334 but radius = 0 335 PA0216 number of initial particles (...) exceeds 336 maximum_number_of_particles (...) on PE ... 337 PA0217 unknown boundary condition bc_par_b = "..." 338 PA0218 unknown boundary condition bc_par_t = "..." 339 PA0219 unknown boundary condition bc_par_lr = "..." 340 PA0220 unknown boundary condition bc_par_ns = "..." 341 PA0221 number of PEs of the prescribed topology (...) does not match 342 the number of PEs available to the job () 343 PA0222 if the processor topology is prescribed by the user, 344 both values of "npex" and "npey" must be given 345 in the NAMELIST-parameter file 346 PA0223 psolver = "poisfft_hybrid" can only be used in case of 347 a 1d-decomposition along x 348 PA0224 no matching grid for transpositions found 349 PA0225 x-direction: gridpoint number (...)is not an 350 integral divisor of the number of procesors (...) 351 PA0226 x-direction: nx does not match the requirements given 352 by the number of PEs used 353 please use nx = ... instead of nx =... 354 PA0227 y-direction: gridpoint number (...) is not an 355 integral divisor of the number of processors (...) 356 PA0228 y-direction: ny does not match the requirements given 357 by the number of PEs used 358 please use ny = ... instead of ny =... 359 PA0229 1d-decomposition along x chosen but nz restrictions 360 may occur since ups-scheme is activated 361 PA0230 transposition z --> x: 362 nz=... is not an integral divisior of pdims(1)= ... 363 PA0231 transposition x --> y: 364 nx+1=... is not an integral divisor of pdims(2)= ... 365 PA0232 transposition y --> z: 366 ny+1=... is not an integral divisor of pdims(1)=... 367 PA0233 transposition x --> y: 368 ny+1=... is not an integral divisor of pdims(1)=... 369 PA0234 direct transposition z --> y (needed for spectra): 370 nz=... is not an integral divisor of pdims(2)=... 371 PA0235 mg_switch_to_pe0_level out of range and reset to default (=0) 372 PA0236 not enough memory for storing gathered multigrid data on PE0 373 PA0237 multigrid gather/scatter impossible in non parallel mode 374 PA0238 more than 10 multigrid levels 375 269 376 270 377 UI0001 The value for "topography_grid_convention" is not set. -
palm/trunk/SOURCE/CURRENT_MODIFICATIONS
r253 r254 26 26 First constant in array den also defined as type double. (eqn_state_seawater) 27 27 28 advec_particles, advec_s_bc, buoyancy, calc_spectra, check_for_restart, check_open, eqn_state_seawater, sort_particles28 advec_particles, advec_s_bc, buoyancy, calc_spectra, check_for_restart, check_open, coriolis, cpu_log, data_output_2d, data_output_3d, data_output_dvrp, data_output_profiles, data_output_spectra, eqn_state_seawater, fft_xy, flow_statistics, header, init_1d_model, init_3d_model, init_dvrp, init_grid, init_particles, init_pegrid, sort_particles 29 29 30 30 -
palm/trunk/SOURCE/coriolis.f90
r110 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 106 107 CASE DEFAULT 107 108 108 IF ( myid == 0 ) PRINT*,'+++ coriolis: wrong component: ', & 109 component 110 CALL local_stop 109 WRITE( message_string, * ) ' wrong component: ', component 110 CALL message( 'coriolis', 'PA0173', 1, 2, 0, 6, 0 ) 111 111 112 112 END SELECT … … 166 166 CASE DEFAULT 167 167 168 IF ( myid == 0 ) PRINT*,'+++ coriolis: wrong component: ', & 169 component 170 CALL local_stop 168 WRITE( message_string, * ) ' wrong component: ', component 169 CALL message( 'coriolis', 'PA0173', 1, 2, 0, 6, 0 ) 171 170 172 171 END SELECT -
palm/trunk/SOURCE/cpu_log.f90
r239 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! Output of messages replaced by message handling routine. 6 7 ! Type of count and count_rate changed to default INTEGER on NEC machines 7 8 ! … … 31 32 !------------------------------------------------------------------------------! 32 33 34 USE control_parameters 33 35 USE cpulog 34 36 USE pegrid … … 56 58 log_event%place = place 57 59 ELSEIF ( log_event%place /= place ) THEN 58 IF ( myid == 0 ) THEN 59 PRINT*,'+++ cpu_log: wrong argument' 60 PRINT*,' expected: ',log_event%place,' given: ', place 61 ENDIF 62 CALL local_stop 60 WRITE( message_string, * ) 'wrong argument & expected: ', & 61 TRIM(log_event%place), ' given: ', TRIM( place ) 62 CALL message( 'cpu_log', 'PA0174', 1, 2, 0, 6, 0 ) 63 63 ENDIF 64 64 … … 71 71 mtime = IRTC( ) * 1E-9 72 72 #else 73 IF ( myid == 0 ) THEN 74 PRINT*, '+++ cpu_log: no time measurement defined on this host' 75 ENDIF 76 CALL local_stop 73 message_string = 'no time measurement defined on this host' 74 CALL message( 'cpu_log', 'PA0175', 1, 2, 0, 6, 0 ) 77 75 #endif 78 76 … … 84 82 ELSEIF ( modus == 'pause' ) THEN 85 83 IF ( ( mtime - log_event%mtime ) < 0.0 .AND. first ) THEN 86 PRINT*,'+++ WARNING: cpu_log: negative time interval occured' 87 PRINT*,'+++ PE',myid,' L=PAUSE "',TRIM(log_event%place),'" new=', & 88 mtime,' last=',log_event%mtime 84 WRITE( message_string, * ) 'negative time interval occured', & 85 ' &PE',myid,' L=PAUSE "',TRIM(log_event%place),'" new=', & 86 mtime,' last=',log_event%mtime 87 CALL message( 'cpu_log', 'PA0176', 0, 1, -1, 6, 0 ) 89 88 first = .FALSE. 90 89 ENDIF … … 94 93 IF ( ( mtime - log_event%mtime + log_event%isum ) < 0.0 .AND. & 95 94 first ) THEN 96 PRINT*,'+++ WARNING: cpu_log: negative time interval occured' 97 PRINT*,'+++ PE',myid,' L=STOP "',TRIM(log_event%place),'" new=', & 98 mtime,' last=',log_event%mtime,' isum=',log_event%isum 95 WRITE( message_string, * ) 'negative time interval occured', & 96 ' &PE',myid,' L=STOP "',TRIM(log_event%place),'" new=', & 97 mtime,' last=',log_event%mtime,' isum=',log_event%isum 98 CALL message( 'cpu_log', 'PA0177', 0, 1, -1, 6, 0 ) 99 99 first = .FALSE. 100 100 ENDIF … … 103 103 log_event%sum = log_event%sum + log_event%mtime 104 104 IF ( log_event%sum < 0.0 .AND. first ) THEN 105 PRINT*,'+++ WARNING: cpu_log: negative time interval occured' 106 PRINT*,'+++ PE',myid,' L=STOP "',TRIM(log_event%place),'" sum=', & 107 log_event%sum,' mtime=',log_event%mtime 105 WRITE( message_string, * ) 'negative time interval occured',& 106 ' &PE',myid,' L=STOP "',TRIM(log_event%place),'" sum=', & 107 log_event%sum,' mtime=',log_event%mtime 108 CALL message( 'cpu_log', 'PA0178', 0, 1, -1, 6, 0 ) 108 109 first = .FALSE. 109 110 ENDIF … … 113 114 log_event%ivect = 0.0 114 115 ELSE 115 PRINT*, '+++ unknown modus of time measurement: ', modus 116 message_string = 'unknown modus of time measurement: ' // TRIM( modus ) 117 CALL message( 'cpu_log', 'PA0179', 0, 1, -1, 6, 0 ) 116 118 ENDIF 117 119 -
palm/trunk/SOURCE/data_output_2d.f90
r226 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 158 159 CASE DEFAULT 159 160 160 PRINT*,'+++ data_output_2d: unknown cross-section: ',mode161 CALL local_stop161 message_string = 'unknown cross-section: ' // TRIM( mode ) 162 CALL message( 'data_output_2d', 'PA0180', 1, 2, 0, 6, 0 ) 162 163 163 164 END SELECT … … 518 519 519 520 IF ( .NOT. found ) THEN 520 PRINT*, '+++ data_output_2d: no output provided for: ', &521 do2d(av,if)521 message_string = 'no output provided for: ' // TRIM( do2d(av,if) ) 522 CALL message( 'data_output_2d', 'PA0181', 0, 0, 0, 6, 0 ) 522 523 ENDIF 523 524 -
palm/trunk/SOURCE/data_output_3d.f90
r98 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 310 311 resorted = .TRUE. 311 312 312 IF ( myid == 0 .AND..NOT. found ) THEN313 PRINT*, '+++ data_output_3d: no output available for: ', &314 do3d(av,if)313 IF ( .NOT. found ) THEN 314 message_string = 'no output available for: ' // TRIM( do3d(av,if) ) 315 CALL message( 'data_output_3d', 'PA0182', 0, 0, 0, 6, 0 ) 315 316 ENDIF 316 317 -
palm/trunk/SOURCE/data_output_dvrp.f90
r246 r254 30 30 31 31 !------------------------------------------------------------------------------! 32 ! Actualrevisions:32 ! Current revisions: 33 33 ! ----------------- 34 ! Output of messages replaced by message handling routine. 34 35 ! TEST: different colours for isosurfaces 35 36 ! … … 398 399 ENDDO 399 400 ENDDO 400 ELSE 401 IF ( myid == 0 ) THEN 402 PRINT*, '+++ data_output_dvrp: if humidity/passive_scalar = ', & 403 'FALSE output of ', output_variable, & 404 'is not provided' 405 ENDIF 401 ELSE 402 message_string = 'if humidity/passive_scalar = ' // & 403 'FALSE output of ' // TRIM( output_variable ) // & 404 'is not provided' 405 CALL message( 'data_output_dvrp', 'PA0183', 0, 0, 0, 6, 0 ) 406 406 ENDIF 407 407 … … 415 415 ENDDO 416 416 ENDDO 417 ELSE 418 IF ( myid == 0 ) THEN419 PRINT*, '+++ data_output_dvrp: if cloud_physics = FALSE ', &420 'output of ', output_variable,'is not provided'421 ENDIF417 ELSE 418 message_string = 'if cloud_physics = FALSE ' // & 419 'output of ' // TRIM( output_variable) // & 420 'is not provided' 421 CALL message( 'data_output_dvrp', 'PA0184', 0, 0, 0, 6, 0 ) 422 422 ENDIF 423 423 -
palm/trunk/SOURCE/data_output_profiles.f90
r198 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 290 291 IF ( cross_normx_factor(k,j) == 0.0 .OR. & 291 292 cross_normy_factor(k,j) == 0.0 ) THEN 292 PRINT*,'+++ WARNING data_output_profiles: normalizi', & 293 'ng cross ',j, ' is not possible since one o', & 294 'f the' 295 PRINT*,' normalizing factors is ',& 296 'zero!' 297 PRINT*,' cross_normx_factor(',k,',',j,') = ', & 298 cross_normx_factor(k,j) 299 PRINT*,' cross_normy_factor(',k,',',j,') = ', & 300 cross_normy_factor(k,j) 293 WRITE( message_string, * ) 'data_output_profiles: normalizi', & 294 'ng cross ',j, ' is not possible since one o', & 295 'f the & normalizing factors is zero! & ', & 296 'cross_normx_factor(',k,',',j,') = ', & 297 cross_normx_factor(k,j), & 298 ' & cross_normy_factor(',k,',',j,') = ', & 299 cross_normy_factor(k,j) 300 CALL message( 'data_output_profiles', 'PA0185', 0, 1, 0, 6, 0 ) 301 301 cross_normx_factor(k,j) = 1.0 302 302 cross_normy_factor(k,j) = 1.0 … … 532 532 533 533 ! 534 !-- Check the normalizing factors for zeros and deactivate the535 !-- normalization, if required.534 !-- Check the normalizing factors for zeros and deactivate 535 !-- the normalization, if required. 536 536 IF ( cross_normx_factor(k,j) == 0.0 .OR. & 537 537 cross_normy_factor(k,j) == 0.0 ) THEN 538 PRINT*,'+++ WARNING data_output_profiles: normalizing ',j, & 539 ' cross is not possible since one of the' 540 PRINT*,' normalizing factors is zero!' 541 PRINT*,' cross_normx_factor(',k,',',j,') = ', & 542 cross_normx_factor(k,j) 543 PRINT*,' cross_normy_factor(',k,',',j,') = ', & 544 cross_normy_factor(k,j) 545 cross_normx_factor(k,j) = 1.0 546 cross_normy_factor(k,j) = 1.0 547 cross_normalized_x(j) = ' ' 548 cross_normalized_y(j) = ' ' 538 WRITE( message_string, * ) 'data_output_profiles: normalizi', & 539 'ng cross ',j, ' is not possible since one o', & 540 'f the & normalizing factors is zero! & ', & 541 'cross_normx_factor(',k,',',j,') = ', & 542 cross_normx_factor(k,j), & 543 ' & cross_normy_factor(',k,',',j,') = ', & 544 cross_normy_factor(k,j) 545 CALL message( 'data_output_profiles', 'PA0185', 0, 1, 0, 6, 0 ) 546 cross_normx_factor(k,j) = 1.0 547 cross_normy_factor(k,j) = 1.0 548 cross_normalized_x(j) = ' ' 549 cross_normalized_y(j) = ' ' 549 550 ENDIF 550 551 -
palm/trunk/SOURCE/data_output_spectra.f90
r198 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 92 93 !-- If necessary, calculate time average and reset average counter 93 94 IF ( average_count_sp == 0 ) THEN 94 PRINT*, '+++ data_output_spectra: no spectra data available' 95 message_string = 'no spectra data available' 96 CALL message( 'data_output_spectra', 'PA0186', 0, 0, 0, 6, 0 ) 95 97 ENDIF 96 98 IF ( average_count_sp /= 1 ) THEN -
palm/trunk/SOURCE/fft_xy.f90
r4 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 134 135 auy4, nau2 ) 135 136 #elif defined( __nec ) 136 PRINT*, '+++ fft_init: fft method "', fft_method,&137 '" currently does not work on NEC'138 CALL local_stop137 message_string = 'fft method "' // TRIM( fft_method) // & 138 '" currently does not work on NEC' 139 CALL message( 'fft_init', 'PA0187', 1, 2, 0, 6, 0 ) 139 140 140 141 ALLOCATE( trig_xb(2*(nx+1)), trig_xf(2*(nx+1)), & … … 163 164 trig_yb, worky, 0 ) 164 165 #else 165 PRINT*, '+++ fft_init:no system-specific fft-call available'166 CALL local_stop166 message_string = 'no system-specific fft-call available' 167 CALL message( 'fft_init', 'PA0188', 1, 2, 0, 6, 0 ) 167 168 #endif 168 169 ELSEIF ( fft_method == 'temperton-algorithm' ) THEN … … 181 182 ELSE 182 183 183 PRINT*, '+++ fft_init: fft method "', fft_method, & 184 '" not available' 185 CALL local_stop 186 184 message_string = 'fft method "' // TRIM( fft_method) // & 185 '" not available' 186 CALL message( 'fft_init', 'PA0189', 1, 2, 0, 6, 0 ) 187 187 ENDIF 188 188 … … 357 357 ENDIF 358 358 #else 359 PRINT*, '+++ fft_x:no system-specific fft-call available'360 CALL local_stop359 message_string = 'no system-specific fft-call available' 360 CALL message( 'fft_x', 'PA0188', 1, 2, 0, 6, 0 ) 361 361 #endif 362 362 ELSE 363 364 PRINT*, '+++ fft_x: fft method "', fft_method, '" not available' 365 CALL local_stop 363 message_string = 'fft method "' // TRIM( fft_method) // '" not available' 364 CALL message( 'fft_x', 'PA0189', 1, 2, 0, 6, 0 ) 366 365 367 366 ENDIF … … 537 536 ENDIF 538 537 #else 539 PRINT*, '+++ fft_y: no system-specific fft-call available' 540 CALL local_stop 538 message_string = 'no system-specific fft-call available' 539 CALL message( 'fft_y', 'PA0188', 1, 2, 0, 6, 0 ) 540 541 541 #endif 542 542 543 543 ELSE 544 544 545 PRINT*, '+++ fft_y: fft method "', fft_method,'" not available'546 CALL local_stop545 message_string = 'fft method "' // TRIM( fft_method) // '" not available' 546 CALL message( 'fft_y', 'PA0189', 1, 2, 0, 6, 0 ) 547 547 548 548 ENDIF … … 672 672 673 673 #else 674 PRINT*, '+++ fft_x_m:no system-specific fft-call available'675 STOP674 message_string = 'no system-specific fft-call available' 675 CALL message( 'fft_x_m', 'PA0188', 1, 2, 0, 6, 0 ) 676 676 #endif 677 677 678 678 ELSE 679 679 680 PRINT*, '+++ fft_x_m: fft method "', fft_method,'" not available'681 CALL local_stop680 message_string = 'fft method "' // TRIM( fft_method) // '" not available' 681 CALL message( 'fft_x_m', 'PA0189', 1, 2, 0, 6, 0 ) 682 682 683 683 ENDIF … … 807 807 808 808 #else 809 PRINT*, '+++ fft_y_m:no system-specific fft-call available'810 STOP809 message_string = 'no system-specific fft-call available' 810 CALL message( 'fft_y_m', 'PA0188', 1, 2, 0, 6, 0 ) 811 811 #endif 812 812 813 813 ELSE 814 815 PRINT*, '+++ fft_y_m: fft method "', fft_method,'" not available'816 CALL local_stop814 815 message_string = 'fft method "' // TRIM( fft_method) // '" not available' 816 CALL message( 'fft_x_m', 'PA0189', 1, 2, 0, 6, 0 ) 817 817 818 818 ENDIF -
palm/trunk/SOURCE/flow_statistics.f90
r220 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 93 94 !-- called once after the current time step 94 95 IF ( flow_statistics_called ) THEN 95 IF ( myid == 0 ) PRINT*, '+++ WARNING: flow_statistics is called two', & 96 ' times within one timestep' 97 CALL local_stop 96 97 message_string = 'flow_statistics is called two times within one timestep' 98 CALL message( 'flow_statistics', 'PA0190', 1, 2, 0, 6, 0 ) 99 98 100 ENDIF 99 101 -
palm/trunk/SOURCE/header.f90
r241 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! Output of messages replaced by message handling routine. 6 7 ! Output of cluster_size 7 8 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, … … 135 136 run_classification = '3D - run initialized by user' 136 137 ELSE 137 PRINT*,'+++ header: unknown action(s): ',initializing_actions 138 message_string = ' unknown action(s): ' // TRIM( initializing_actions ) 139 CALL message( 'header', 'PA0191', 0, 0, 0, 6, 0 ) 138 140 ENDIF 139 141 IF ( ocean ) THEN … … 634 636 ! 635 637 !-- 1D-profiles 636 dopr_chr = 'P rofile:'638 dopr_chr = 'Pofile:' 637 639 IF ( dopr_n /= 0 ) THEN 638 640 WRITE ( io, 331 ) -
palm/trunk/SOURCE/init_1d_model.f90
r198 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! Output of messages replaced by message handling routine. 7 ! 7 8 ! 8 9 ! Former revisions: … … 842 843 IF ( dt_1d < ( 0.00001 * dt_max_1d ) ) THEN 843 844 stop_dt_1d = .TRUE. 844 IF ( myid == 0 ) THEN 845 PRINT*,'+++ timestep_1d: timestep has exceeded the lower limit'846 PRINT*,'dt_1d = ',dt_1d,' s simulation stopped!'847 ENDIF848 CALL local_stop845 846 WRITE( message_string, * ) 'timestep has exceeded the lower limit &', & 847 'dt_1d = ',dt_1d,' s simulation stopped!' 848 CALL message( 'timestep_1d', 'PA0192', 1, 2, 0, 6, 0 ) 849 849 850 ENDIF 850 851 -
palm/trunk/SOURCE/init_3d_model.f90
r241 r254 5 5 6 6 !------------------------------------------------------------------------------! 7 ! Actualrevisions:7 ! Current revisions: 8 8 ! ----------------- 9 ! Output of messages replaced by message handling routine. 9 10 ! Set the starting level and the vertical smoothing factor used for 10 11 ! the external pressure gradient 11 ! +con verve_volume_flow_mode: 'default', 'initial_profiles', 'inflow_profile'12 ! +conserve_volume_flow_mode: 'default', 'initial_profiles', 'inflow_profile' 12 13 ! and 'bulk_velocity' 13 14 ! … … 1079 1080 ! 1080 1081 !-- Actually this part of the programm should not be reached 1081 IF ( myid == 0 ) PRINT*,'+++ init_3d_model: unknown initializing ', & 1082 'problem' 1083 CALL local_stop 1082 message_string = 'unknown initializing problem' 1083 CALL message( 'init_3d_model', 'PA0193', 1, 2, 0, 6, 0 ) 1084 1084 ENDIF 1085 1085 … … 1378 1378 1379 1379 IF ( dots_num > dots_max ) THEN 1380 IF ( myid == 0 ) THEN 1381 PRINT*, '+++ user_init: number of time series quantities exceeds', & 1382 ' its maximum of dots_max = ', dots_max 1383 PRINT*, ' Please increase dots_max in modules.f90.' 1384 ENDIF 1385 CALL local_stop 1380 WRITE( message_string, * ) 'number of time series quantities exceeds', & 1381 ' its maximum of dots_max = ', dots_max, & 1382 ' &Please increase dots_max in modules.f90.' 1383 CALL message( 'init_3d_model', 'PA0194', 1, 2, 0, 6, 0 ) 1386 1384 ENDIF 1387 1385 -
palm/trunk/SOURCE/init_dvrp.f90
r242 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! Output of messages replaced by message handling routine. 6 7 ! Clipping implemented. 7 8 ! Polygon reduction for building and ground plate isosurface. Reduction level … … 131 132 !-- and set default-values, where necessary 132 133 IF ( dvrp_username == ' ' ) THEN 133 IF ( myid == 0 ) THEN 134 PRINT*, '+++ init_dvrp: dvrp_username is undefined' 135 CALL local_stop 136 ENDIF 134 message_string = 'dvrp_username is undefined' 135 CALL message( 'init_dvrp', 'PA0195', 1, 2, 0, 6, 0 ) 137 136 ENDIF 138 137 139 138 IF ( dvrp_output /= 'ftp' .AND. dvrp_output /= 'rtsp' .AND. & 140 139 dvrp_output /= 'local' ) THEN 141 IF ( myid == 0 ) THEN 142 PRINT*, '+++ init_dvrp: dvrp_output="', dvrp_output, '" not allowed' 143 CALL local_stop 144 ENDIF 140 message_string = 'dvrp_output="' // TRIM( dvrp_output ) // '" not allowed' 141 CALL message( 'init_dvrp', 'PA0196', 1, 2, 0, 6, 0 ) 145 142 ENDIF 146 143 … … 151 148 IF ( dvrp_output /= 'local' ) THEN 152 149 IF ( dvrp_file /= 'default' .AND. dvrp_file /= '/dev/null' ) THEN 153 IF ( myid == 0 ) THEN 154 PRINT*, '+++ init_dvrp: dvrp_file="', dvrp_file, '" not allowed' 155 CALL local_stop 156 ENDIF 150 message_string = 'dvrp_file="' // TRIM( dvrp_file ) // '" not allowed' 151 CALL message( 'init_dvrp', 'PA0197', 1, 2, 0, 6, 0 ) 157 152 ENDIF 158 153 ENDIF … … 181 176 mode_dvrp(m)(1:9) /= 'pathlines' ) THEN 182 177 183 IF ( myid == 0 ) THEN 184 PRINT*, '+++ init_dvrp: mode_dvrp="', mode_dvrp, '" not allowed' 185 ENDIF 178 message_string = 'mode_dvrp="' // TRIM( mode_dvrp ) // '" not allowed' 179 CALL message( 'init_dvrp', 'PA0198', 1, 2, 0, 6, 0 ) 186 180 CALL local_stop 187 181 … … 693 687 #else 694 688 IF ( coupling_mode /= 'uncoupled' ) THEN 695 IF ( myid == 0 ) THEN 696 PRINT*, '+++ init_dvrp: split of communicator not realized with', & 689 message_string = 'split of communicator not realized with' // & 697 690 ' MPI1 coupling atmosphere-ocean' 698 ENDIF699 CALL local_stop691 CALL message( 'init_dvrp_logging', 'PA0199', 1, 2, 0, 6, 0 ) 692 700 693 ! CALL DVRP_SPLIT( comm_inter, comm_palm ) 701 694 ELSE -
palm/trunk/SOURCE/init_grid.f90
r240 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! Output of messages replaced by message handling routine. 6 7 ! new topography case 'single_street_canyon' 7 8 ! … … 78 79 !-- Compute height of u-levels from constant grid length and dz stretch factors 79 80 IF ( dz == -1.0 ) THEN 80 IF ( myid == 0 ) PRINT*,'+++ init_grid:missing dz'81 CALL local_stop81 message_string = 'missing dz' 82 CALL message( 'init_grid', 'PA0200', 1, 2, 0, 6, 0 ) 82 83 ELSEIF ( dz <= 0.0 ) THEN 83 IF ( myid == 0 ) PRINT*,'+++ init_grid:dz=',dz,' <= 0.0'84 CALL local_stop84 WRITE( message_string, * ) 'dz=',dz,' <= 0.0' 85 CALL message( 'init_grid', 'PA0201', 1, 2, 0, 6, 0 ) 85 86 ENDIF 86 87 … … 309 310 IF ( l_grid(k) > 1.5 * dx * wall_adjustment_factor .OR. & 310 311 l_grid(k) > 1.5 * dy * wall_adjustment_factor ) THEN 311 IF ( myid == 0 ) THEN 312 PRINT*, '+++ WARNING: grid anisotropy exceeds '// & 313 'threshold given by only local' 314 PRINT*, ' horizontal reduction of near_wall '// & 315 'mixing length l_wall' 316 PRINT*, ' starting from height level k = ', k, '.' 317 ENDIF 312 WRITE( message_string, * ) 'grid anisotropy exceeds ', & 313 'threshold given by only local', & 314 ' &horizontal reduction of near_wall ', & 315 'mixing length l_wall', & 316 ' &starting from height level k = ', k, '.' 317 CALL message( 'init_grid', 'PA0202', 0, 1, 0, 6, 0 ) 318 318 EXIT 319 319 ENDIF … … 367 367 IF ( ( bxl < 1 ) .OR. ( bxr > nx-1 ) .OR. ( bxr < bxl+3 ) .OR. & 368 368 ( bys < 1 ) .OR. ( byn > ny-1 ) .OR. ( byn < bys+3 ) ) THEN 369 IF ( myid == 0 ) THEN 370 PRINT*, '+++ init_grid: inconsistent building parameters:' 371 PRINT*, ' bxl=', bxl, 'bxr=', bxr, 'bys=', bys, & 372 'byn=', byn, 'nx=', nx, 'ny=', ny 373 ENDIF 374 CALL local_stop 369 WRITE( message_string, * ) 'inconsistent building parameters:', & 370 '& bxl=', bxl, 'bxr=', bxr, 'bys=', bys, & 371 'byn=', byn, 'nx=', nx, 'ny=', ny 372 CALL message( 'init_grid', 'PA0203', 1, 2, 0, 6, 0 ) 375 373 ENDIF 376 374 … … 405 403 406 404 ELSE 407 IF ( myid == 0 ) THEN408 PRINT*, '+++ user_init_grid:no street canyon width given'409 ENDIF410 CALL local_stop405 406 message_string = 'no street canyon width given' 407 CALL message( 'init_grid', 'PA0204', 1, 2, 0, 6, 0 ) 408 411 409 ENDIF 412 410 … … 418 416 IF ( ( cxl < 1 ) .OR. ( cxr > nx-1 ) .OR. ( cwx < 3 ) .OR. & 419 417 ( ch < 3 ) ) THEN 420 IF ( myid == 0 ) THEN 421 PRINT*, '+++ user_init_grid: inconsistent canyon parameters:' 422 PRINT*, ' cxl=', cxl, 'cxr=', cxr, & 423 'cwx=', cwx, & 424 'ch=', ch, 'nx=', nx, 'ny=', ny 425 ENDIF 426 CALL local_stop 418 WRITE( message_string, * ) 'inconsistent canyon parameters:', & 419 '&cxl=', cxl, 'cxr=', cxr, & 420 'cwx=', cwx, & 421 'ch=', ch, 'nx=', nx, 'ny=', ny 422 CALL message( 'init_grid', 'PA0205', 1, 2, 0, 6, 0 ) 427 423 ENDIF 428 424 ELSEIF ( canyon_width_y /= 9999999.9 ) THEN 429 425 IF ( ( cys < 1 ) .OR. ( cyn > ny-1 ) .OR. ( cwy < 3 ) .OR. & 430 426 ( ch < 3 ) ) THEN 431 IF ( myid == 0 ) THEN 432 PRINT*, '+++ user_init_grid: inconsistent canyon parameters:' 433 PRINT*, ' cys=', cys, 'cyn=', cyn, & 434 'cwy=', cwy, & 435 'ch=', ch, 'nx=', nx, 'ny=', ny 436 ENDIF 437 CALL local_stop 427 WRITE( message_string, * ) 'inconsistent canyon parameters:', & 428 '&cys=', cys, 'cyn=', cyn, & 429 'cwy=', cwy, & 430 'ch=', ch, 'nx=', nx, 'ny=', ny 431 CALL message( 'init_grid', 'PA0206', 1, 2, 0, 6, 0 ) 438 432 ENDIF 439 433 ENDIF 440 434 IF ( canyon_width_x /= 9999999.9 .AND. canyon_width_y /= 9999999.9 ) & 441 435 THEN 442 IF ( myid == 0 ) THEN 443 PRINT*, '+++ user_init_grid: inconsistent canyon parameters:' 444 PRINT*, ' street canyon can only be oriented' 445 PRINT*, ' either in x- or in y-direction' 446 ENDIF 447 CALL local_stop 436 message_string = 'inconsistent canyon parameters:' // & 437 '&street canyon can only be oriented' // & 438 '&either in x- or in y-direction' 439 CALL message( 'init_grid', 'PA0207', 1, 2, 0, 6, 0 ) 448 440 ENDIF 449 441 … … 480 472 481 473 GOTO 12 482 483 10 IF ( myid == 0 ) THEN 484 PRINT*, '+++ init_grid: file TOPOGRAPHY_DATA does not exist' 485 ENDIF 486 CALL local_stop 487 488 11 IF ( myid == 0 ) THEN 489 PRINT*, '+++ init_grid: errors in file TOPOGRAPHY_DATA' 490 ENDIF 491 CALL local_stop 474 475 10 message_string = 'file TOPOGRAPHY_DATA does not exist' 476 CALL message( 'init_grid', 'PA0208', 1, 2, 0, 6, 0 ) 477 478 11 message_string = 'errors in file TOPOGRAPHY_DATA' 479 CALL message( 'init_grid', 'PA0209', 1, 2, 0, 6, 0 ) 492 480 493 481 12 CLOSE( 90 ) … … 519 507 !-- Consistency checks 520 508 IF ( MINVAL( nzb_local ) < 0 .OR. MAXVAL( nzb_local ) > nz + 1 ) THEN 521 IF ( myid == 0 ) THEN 522 PRINT*, '+++ init_grid: nzb_local values are outside the', & 523 'model domain' 524 PRINT*, ' MINVAL( nzb_local ) = ', MINVAL(nzb_local) 525 PRINT*, ' MAXVAL( nzb_local ) = ', MAXVAL(nzb_local) 526 ENDIF 527 CALL local_stop 509 WRITE( message_string, * ) 'nzb_local values are outside the', & 510 'model domain', & 511 '&MINVAL( nzb_local ) = ', MINVAL(nzb_local), & 512 '&MAXVAL( nzb_local ) = ', MAXVAL(nzb_local) 513 CALL message( 'init_grid', 'PA0210', 1, 2, 0, 6, 0 ) 528 514 ENDIF 529 515 … … 531 517 IF ( ANY( nzb_local(:,-1) /= nzb_local(:,nx) ) .OR. & 532 518 ANY( nzb_local(:,0) /= nzb_local(:,nx+1) ) ) THEN 533 IF ( myid == 0 ) THEN 534 PRINT*, '+++ init_grid: nzb_local does not fulfill cyclic', & 535 ' boundary condition in x-direction' 536 ENDIF 537 CALL local_stop 519 message_string = 'nzb_local does not fulfill cyclic' // & 520 ' boundary condition in x-direction' 521 CALL message( 'init_grid', 'PA0211', 1, 2, 0, 6, 0 ) 538 522 ENDIF 539 523 ENDIF … … 541 525 IF ( ANY( nzb_local(-1,:) /= nzb_local(ny,:) ) .OR. & 542 526 ANY( nzb_local(0,:) /= nzb_local(ny+1,:) ) ) THEN 543 IF ( myid == 0 ) THEN 544 PRINT*, '+++ init_grid: nzb_local does not fulfill cyclic', & 545 ' boundary condition in y-direction' 546 ENDIF 547 CALL local_stop 527 message_string = 'nzb_local does not fulfill cyclic' // & 528 ' boundary condition in y-direction' 529 CALL message( 'init_grid', 'PA0212', 1, 2, 0, 6, 0 ) 548 530 ENDIF 549 531 ENDIF -
palm/trunk/SOURCE/init_particles.f90
r229 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! Output of messages replaced by message handling routine 6 7 ! Bugfix: arrays for tails are allocated with a minimum size of 10 tails if 7 8 ! there is no tail initially … … 97 98 !-- Check the number of particle groups. 98 99 IF ( number_of_particle_groups > max_number_of_particle_groups ) THEN 99 PRINT*, '+++ WARNING: init_particles:', &100 'max_number_of_particle_groups =', &101 max_number_of_particle_groups102 PRINT*, '+++ number_of_particle_groups reset to ', &103 max_number_of_particle_groups100 WRITE( message_string, * ) 'max_number_of_particle_groups =', & 101 max_number_of_particle_groups , & 102 '&number_of_particle_groups reset to ', & 103 max_number_of_particle_groups 104 CALL message( 'init_particles', 'PA0213', 0, 1, 0, 6, 0 ) 104 105 number_of_particle_groups = max_number_of_particle_groups 105 106 ENDIF … … 152 153 particle_binary_version = '3.0' 153 154 IF ( TRIM( version_on_file ) /= TRIM( particle_binary_version ) ) THEN 154 IF ( myid == 0 ) THEN 155 PRINT*, '+++ init_particles: version mismatch concerning data ', & 156 'from prior run' 157 PRINT*, ' version on file = "', TRIM( version_on_file ),& 158 '"' 159 PRINT*, ' version in program = "', & 160 TRIM( particle_binary_version ), '"' 161 ENDIF 162 CALL local_stop 155 message_string = 'version mismatch concerning data from prior run' // & 156 '&version on file = "' // TRIM( version_on_file ) // & 157 '&version in program = "' // & 158 TRIM( particle_binary_version ) // '"' 159 CALL message( 'init_particles', 'PA0214', 1, 2, 0, 6, 0 ) 163 160 ENDIF 164 161 … … 234 231 DO i = 1, number_of_particle_groups 235 232 IF ( density_ratio(i) /= 0.0 .AND. radius(i) == 0 ) THEN 236 IF ( myid == 0 ) THEN 237 PRINT*, '+++ init_particles: particle group #', i, 'has a', & 238 'density ratio /= 0 but radius = 0' 239 ENDIF 240 CALL local_stop 233 WRITE( message_string, * ) 'particle group #', i, 'has a', & 234 'density ratio /= 0 but radius = 0' 235 CALL message( 'init_particles', 'PA0215', 1, 2, 0, 6, 0 ) 241 236 ENDIF 242 237 particle_groups(i)%density_ratio = density_ratio(i) … … 273 268 n = n + 1 274 269 IF ( n > maximum_number_of_particles ) THEN 275 PRINT*,'+++ init_particles: number of initial', & 276 ' particles (', n, ') exceeds' 277 PRINT*,' maximum_number_of_particles (', & 278 maximum_number_of_particles, ') on PE ', & 279 myid 280 #if defined( __parallel ) 281 CALL MPI_ABORT( comm2d, 9999, ierr ) 282 #else 283 CALL local_stop 284 #endif 270 WRITE( message_string, * ) 'number of initial', & 271 'particles (', n, ') exceeds', & 272 '&maximum_number_of_particles (', & 273 maximum_number_of_particles, ') on PE ', & 274 myid 275 CALL message( 'init_particles', 'PA0216', 2, 2, 0, 6, 0 ) 285 276 ENDIF 286 277 particles(n)%x = pos_x … … 519 510 520 511 CASE DEFAULT 521 IF ( myid == 0 ) THEN 522 PRINT*,'+++ init_particles: unknown boundary condition ', & 523 'bc_par_b = "', TRIM( bc_par_b ), '"' 524 ENDIF 525 CALL local_stop 512 WRITE( message_string, * ) 'unknown boundary condition ', & 513 'bc_par_b = "', TRIM( bc_par_b ), '"' 514 CALL message( 'init_particles', 'PA0217', 1, 2, 0, 6, 0 ) 526 515 527 516 END SELECT … … 535 524 536 525 CASE DEFAULT 537 IF ( myid == 0 ) THEN 538 PRINT*,'+++ init_particles: unknown boundary condition ', & 539 'bc_par_t = "', TRIM( bc_par_t ), '"' 540 ENDIF 541 CALL local_stop 526 WRITE( message_string, * ) 'unknown boundary condition ', & 527 'bc_par_t = "', TRIM( bc_par_t ), '"' 528 CALL message( 'init_particles', 'PA0218', 1, 2, 0, 6, 0 ) 542 529 543 530 END SELECT … … 554 541 555 542 CASE DEFAULT 556 IF ( myid == 0 ) THEN 557 PRINT*,'+++ init_particles: unknown boundary condition ', & 558 'bc_par_lr = "', TRIM( bc_par_lr ), '"' 559 ENDIF 560 CALL local_stop 543 WRITE( message_string, * ) 'unknown boundary condition ', & 544 'bc_par_lr = "', TRIM( bc_par_lr ), '"' 545 CALL message( 'init_particles', 'PA0219', 1, 2, 0, 6, 0 ) 561 546 562 547 END SELECT … … 573 558 574 559 CASE DEFAULT 575 IF ( myid == 0 ) THEN 576 PRINT*,'+++ init_particles: unknown boundary condition ', & 577 'bc_par_ns = "', TRIM( bc_par_ns ), '"' 578 ENDIF 579 CALL local_stop 560 WRITE( message_string, * ) 'unknown boundary condition ', & 561 'bc_par_ns = "', TRIM( bc_par_ns ), '"' 562 CALL message( 'init_particles', 'PA0220', 1, 2, 0, 6, 0 ) 580 563 581 564 END SELECT -
palm/trunk/SOURCE/init_pegrid.f90
r226 r254 2 2 3 3 !------------------------------------------------------------------------------! 4 ! Actualrevisions:4 ! Current revisions: 5 5 ! ----------------- 6 ! Output of messages replaced by message handling routine. 6 7 ! ATTENTION: nnz_x undefined problem still has to be solved!!!!!!!! 7 8 ! TEST OUTPUT (TO BE REMOVED) logging mpi2 ierr values … … 121 122 !-- must be equal to the number of PEs available to the job 122 123 IF ( ( npex * npey ) /= numprocs ) THEN 123 PRINT*, '+++ init_pegrid:' 124 PRINT*, ' number of PEs of the prescribed topology (', npex*npey, & 125 ') does not match the number of PEs available to the ', & 126 'job (', numprocs, ')' 127 CALL local_stop 124 WRITE( message_string, * ) 'number of PEs of the prescribed topology (', & 125 npex*npey,') does not match & the number of ', & 126 'PEs available to the job (', numprocs, ')' 127 CALL message( 'init_pegrid', 'PA0221', 1, 2, 0, 6, 0 ) 128 128 ENDIF 129 129 pdims(1) = npex … … 134 134 !-- If the processor topology is prescribed by the user, the number of 135 135 !-- PEs must be given in both directions 136 PRINT*, '+++ init_pegrid:' 137 PRINT*, ' if the processor topology is prescribed by the user, ', & 138 'both values of "npex" and "npey" must be given in the ', & 139 'NAMELIST-parameter file' 140 CALL local_stop 136 message_string = 'if the processor topology is prescribed by the user, ' // & 137 '& both values of "npex" and "npey" must be given in the ' // & 138 '&NAMELIST-parameter file' 139 CALL message( 'init_pegrid', 'PA0222', 1, 2, 0, 6, 0 ) 141 140 142 141 ENDIF … … 145 144 !-- The hybrid solver can only be used in case of a 1d-decomposition along x 146 145 IF ( pdims(2) /= 1 .AND. psolver == 'poisfft_hybrid' ) THEN 147 IF ( myid == 0 ) THEN 148 PRINT*, '*** init_pegrid: psolver = "poisfft_hybrid" can only be' 149 PRINT*, ' used in case of a 1d-decomposition along x' 150 ENDIF 146 message_string = 'psolver = "poisfft_hybrid" can only be' // & 147 '& used in case of a 1d-decomposition along x' 148 CALL message( 'init_pegrid', 'PA0223', 1, 2, 0, 6, 0 ) 151 149 ENDIF 152 150 … … 224 222 225 223 IF ( .NOT. found ) THEN 226 IF ( myid == 0 ) THEN 227 PRINT*,'+++ init_pegrid: no matching grid for transpositions found' 228 ENDIF 229 CALL local_stop 224 message_string = 'no matching grid for transpositions found' 225 CALL message( 'init_pegrid', 'PA0224', 1, 2, 0, 6, 0 ) 230 226 ENDIF 231 227 … … 239 235 240 236 IF ( MOD( nxa+1 , pdims(1) ) /= 0 ) THEN 241 IF ( myid == 0 ) THEN 242 PRINT*,'+++ x-direction: gridpoint number (',nx+1,') is not an' 243 PRINT*,' integral divisor of the number of proces', & 244 &'sors (', pdims(1),')' 245 ENDIF 246 CALL local_stop 237 WRITE( message_string, * ) 'x-direction: gridpoint number (',nx+1,') is not an',& 238 '& integral divisor of the number of proces', & 239 'sors (', pdims(1),')' 240 CALL message( 'init_pegrid', 'PA0225', 1, 2, 0, 6, 0 ) 247 241 ELSE 248 242 nnx = ( nxa + 1 ) / pdims(1) 249 243 IF ( nnx*pdims(1) - ( nx + 1) > nnx ) THEN 250 IF ( myid == 0 ) THEN 251 PRINT*,'+++ x-direction: nx does not match the requirements ', & 252 'given by the number of PEs' 253 PRINT*,' used' 254 PRINT*,' please use nx = ', nx - ( pdims(1) - ( nnx*pdims(1) & 255 - ( nx + 1 ) ) ), ' instead of nx =', nx 256 ENDIF 257 CALL local_stop 244 WRITE( message_string, * ) 'x-direction: nx does not match the', & 245 'requirements given by the number of PEs', & 246 '& used',& 247 '& please use nx = ', nx - ( pdims(1) - ( nnx*pdims(1) & 248 - ( nx + 1 ) ) ), ' instead of nx =', nx 249 CALL message( 'init_pegrid', 'PA0226', 1, 2, 0, 6, 0 ) 258 250 ENDIF 259 251 ENDIF … … 270 262 !-- Calculate array bounds in y-direction for every PE. 271 263 IF ( MOD( nya+1 , pdims(2) ) /= 0 ) THEN 272 IF ( myid == 0 ) THEN 273 PRINT*,'+++ y-direction: gridpoint number (',ny+1,') is not an' 274 PRINT*,' integral divisor of the number of proces', & 275 &'sors (', pdims(2),')' 276 ENDIF 277 CALL local_stop 264 WRITE( message_string, * ) 'y-direction: gridpoint number (',ny+1,') is not an', & 265 '& integral divisor of the number of proces', & 266 'sors (', pdims(2),')' 267 CALL message( 'init_pegrid', 'PA0227', 1, 2, 0, 6, 0 ) 278 268 ELSE 279 269 nny = ( nya + 1 ) / pdims(2) 280 270 IF ( nny*pdims(2) - ( ny + 1) > nny ) THEN 281 IF ( myid == 0 ) THEN 282 PRINT*,'+++ x-direction: nx does not match the requirements ', & 283 'given by the number of PEs' 284 PRINT*,' used' 285 PRINT*,' please use nx = ', nx - ( pdims(1) - ( nnx*pdims(1) & 286 - ( nx + 1 ) ) ), ' instead of nx =', nx 287 ENDIF 288 CALL local_stop 271 WRITE( message_string, * ) 'y-direction: ny does not match the',& 272 'requirements given by the number of PEs', & 273 '& used', & 274 '& please use ny = ', ny - ( pdims(2) - ( nnx*pdims(2) & 275 - ( ny + 1 ) ) ), ' instead of ny =', ny 276 CALL message( 'init_pegrid', 'PA0228', 1, 2, 0, 6, 0 ) 289 277 ENDIF 290 278 ENDIF … … 326 314 IF ( pdims(2) == 1 .AND. ( momentum_advec == 'ups-scheme' .OR. & 327 315 scalar_advec == 'ups-scheme' ) ) THEN 328 IF ( myid == 0 ) THEN 329 PRINT*,'+++ WARNING: init_pegrid: 1d-decomposition along x ', & 330 &'chosen but nz restrictions may occur' 331 PRINT*,' since ups-scheme is activated' 332 ENDIF 316 message_string = '1d-decomposition along x ' // & 317 'chosen but nz restrictions may occur' // & 318 '& since ups-scheme is activated' 319 CALL message( 'init_pegrid', 'PA0229', 0, 1, 0, 6, 0 ) 333 320 ENDIF 334 321 nys_x = nys … … 337 324 nny_x = nny 338 325 IF ( MOD( nza , pdims(1) ) /= 0 ) THEN 339 IF ( myid == 0 ) THEN 340 PRINT*,'+++ transposition z --> x:' 341 PRINT*,' nz=',nz,' is not an integral divisior of pdims(1)=', & 342 &pdims(1) 343 ENDIF 344 CALL local_stop 326 WRITE( message_string, * ) 'transposition z --> x:', & 327 '&nz=',nz,' is not an integral divisior of pdims(1)=', & 328 pdims(1) 329 CALL message( 'init_pegrid', 'PA0230', 1, 2, 0, 6, 0 ) 345 330 ENDIF 346 331 nnz_x = nza / pdims(1) … … 371 356 nzt_y = nzt_x 372 357 IF ( MOD( nxa+1 , pdims(2) ) /= 0 ) THEN 373 IF ( myid == 0 ) THEN 374 PRINT*,'+++ transposition x --> y:' 375 PRINT*,' nx+1=',nx+1,' is not an integral divisor of ',& 376 &'pdims(2)=',pdims(2) 377 ENDIF 378 CALL local_stop 358 WRITE( message_string, * ) 'transposition x --> y:', & 359 '&nx+1=',nx+1,' is not an integral divisor of ',& 360 'pdims(2)=',pdims(2) 361 CALL message( 'init_pegrid', 'PA0231', 1, 2, 0, 6, 0 ) 379 362 ENDIF 380 363 nnx_y = (nxa+1) / pdims(2) … … 399 382 nxr_z = nxr_y 400 383 IF ( MOD( nya+1 , pdims(1) ) /= 0 ) THEN 401 IF ( myid == 0 ) THEN 402 PRINT*,'+++ Transposition y --> z:' 403 PRINT*,' ny+1=',ny+1,' is not an integral divisor of ',& 404 &'pdims(1)=',pdims(1) 405 ENDIF 406 CALL local_stop 384 WRITE( message_string, * ) 'transposition y --> z:', & 385 '& ny+1=',ny+1,' is not an integral divisor of ',& 386 'pdims(1)=',pdims(1) 387 CALL message( 'init_pegrid', 'PA0232', 1, 2, 0, 6, 0 ) 407 388 ENDIF 408 389 nny_z = (nya+1) / pdims(1) … … 417 398 !-- x --> y. This condition must be fulfilled for a 1D-decomposition along x 418 399 IF ( MOD( nya+1 , pdims(1) ) /= 0 ) THEN 419 IF ( myid == 0 ) THEN 420 PRINT*,'+++ Transposition x --> y:' 421 PRINT*,' ny+1=',ny+1,' is not an integral divisor of ',& 422 &'pdims(1)=',pdims(1) 423 ENDIF 424 CALL local_stop 400 WRITE( message_string, * ) 'transposition x --> y:', & 401 '& ny+1=',ny+1,' is not an integral divisor of ',& 402 'pdims(1)=',pdims(1) 403 CALL message( 'init_pegrid', 'PA0233', 1, 2, 0, 6, 0 ) 425 404 ENDIF 426 405 … … 431 410 IF ( dt_dosp /= 9999999.9 ) THEN 432 411 IF ( MOD( nza, pdims(2) ) /= 0 ) THEN 433 IF ( myid == 0 ) THEN 434 PRINT*,'+++ Direct transposition z --> y (needed for spectra):' 435 PRINT*,' nz=',nz,' is not an integral divisor of ',& 436 &'pdims(2)=',pdims(2) 437 ENDIF 438 CALL local_stop 412 WRITE( message_string, * ) 'direct transposition z --> y (needed for spectra):', & 413 '& nz=',nz,' is not an integral divisor of ',& 414 'pdims(2)=',pdims(2) 415 CALL message( 'init_pegrid', 'PA0234', 1, 2, 0, 6, 0 ) 439 416 ELSE 440 417 nxl_yd = nxl … … 609 586 IF ( coupling_mode == 'atmosphere_to_ocean' ) THEN 610 587 611 print*, '... before COMM_ACCEPT'588 PRINT*, '... before COMM_ACCEPT' 612 589 CALL MPI_COMM_ACCEPT( port_name, MPI_INFO_NULL, 0, MPI_COMM_WORLD, & 613 590 comm_inter, ierr ) 614 print*, '--- ierr = ', ierr615 print*, '--- comm_inter atmosphere = ', comm_inter591 PRINT*, '--- ierr = ', ierr 592 PRINT*, '--- comm_inter atmosphere = ', comm_inter 616 593 617 594 coupling_mode_remote = 'ocean_to_atmosphere' … … 620 597 621 598 IF ( myid == 0 ) PRINT*, '*** read: ', port_name, ' ierr = ', ierr 622 print*, '... before COMM_CONNECT'599 PRINT*, '... before COMM_CONNECT' 623 600 CALL MPI_COMM_CONNECT( port_name, MPI_INFO_NULL, 0, MPI_COMM_WORLD, & 624 601 comm_inter, ierr ) 625 print*, '--- ierr = ', ierr626 print*, '--- comm_inter ocean = ', comm_inter602 PRINT*, '--- ierr = ', ierr 603 PRINT*, '--- comm_inter ocean = ', comm_inter 627 604 628 605 coupling_mode_remote = 'atmosphere_to_ocean' … … 776 753 IF ( mg_switch_to_pe0_level < mg_switch_to_pe0_level_l .OR. & 777 754 mg_switch_to_pe0_level >= maximum_grid_level_l ) THEN 778 IF ( myid == 0 ) THEN 779 PRINT*, '+++ WARNING init_pegrid: mg_switch_to_pe0_level ', & 780 'out of range and reset to default (=0)' 781 ENDIF 755 message_string = 'mg_switch_to_pe0_level ' // & 756 'out of range and reset to default (=0)' 757 CALL message( 'init_pegrid', 'PA0235', 0, 1, 0, 6, 0 ) 782 758 mg_switch_to_pe0_level = 0 783 759 ELSE … … 836 812 837 813 IF ( gathered_size > subdomain_size ) THEN 838 IF ( myid == 0 ) THEN 839 PRINT*, '+++ init_pegrid: not enough memory for storing ', & 840 'gathered multigrid data on PE0' 841 ENDIF 842 CALL local_stop 814 message_string = 'not enough memory for storing ' // & 815 'gathered multigrid data on PE0' 816 CALL message( 'init_pegrid', 'PA0236', 1, 2, 0, 6, 0 ) 843 817 ENDIF 844 818 #else 845 PRINT*, '+++ init_pegrid: multigrid gather/scatter impossible ',&819 message_string = 'multigrid gather/scatter impossible ' // & 846 820 'in non parallel mode' 847 CALL local_stop821 CALL message( 'init_pegrid', 'PA0237', 1, 2, 0, 6, 0 ) 848 822 #endif 849 823 ENDIF … … 1062 1036 1063 1037 CASE DEFAULT 1064 IF ( myid == 0 ) PRINT*, '+++ init_pegrid: more than 10 ', & 1065 ' multigrid levels' 1066 CALL local_stop 1038 message_string = 'more than 10 multigrid levels' 1039 CALL message( 'init_pegrid', 'PA0238', 1, 2, 0, 6, 0 ) 1067 1040 1068 1041 END SELECT
Note: See TracChangeset
for help on using the changeset viewer.