 Timestamp:
 Oct 15, 2019 4:00:23 PM (4 years ago)
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

palm/trunk/SOURCE/init_pegrid.f90
r4241 r4264 25 25 !  26 26 ! $Id$ 27 ! corrected error message string 28 ! 29 ! 4241 20190927 06:32:47Z raasch 27 30 ! Check added to ensure that subdomain grid has at least the size as given by the number 28 31 ! of ghost points … … 300 303 IF ( MOD( nx+1 , pdims(1) ) /= 0 ) THEN 301 304 WRITE( message_string, * ) 'xdirection: gridpoint number (',nx+1,') ', & 302 'is not an& integral divisor of the number ',&303 'of processors (',pdims(1),')'305 'is not an& integral multiple of the number',& 306 ' of processors (',pdims(1),')' 304 307 CALL message( 'init_pegrid', 'PA0225', 1, 2, 0, 6, 0 ) 305 308 ELSE 306 309 nnx = ( nx + 1 ) / pdims(1) 307 ENDIF 310 ENDIF 308 311 309 312 ! … … 318 321 IF ( MOD( ny+1 , pdims(2) ) /= 0 ) THEN 319 322 WRITE( message_string, * ) 'ydirection: gridpoint number (',ny+1,') ', & 320 'is not an& integral divisor of the number of',&321 'processors (',pdims(2),')'323 'is not an& integral multiple of the number',& 324 ' of processors (',pdims(2),')' 322 325 CALL message( 'init_pegrid', 'PA0227', 1, 2, 0, 6, 0 ) 323 326 ELSE 324 327 nny = ( ny + 1 ) / pdims(2) 325 ENDIF 328 ENDIF 326 329 327 330 ! … … 363 366 IF ( pdims(2) /= 1 ) THEN 364 367 IF ( MOD( nz , pdims(1) ) /= 0 ) THEN 365 WRITE( message_string, * ) 'transposition z > x: ', &366 '& nz=',nz,' is not an integral divisior of pdims(1)=',&367 368 WRITE( message_string, * ) 'transposition z > x:& ', & 369 'nz=',nz,' is not an integral multiple ',& 370 'of pdims(1)=',pdims(1) 368 371 CALL message( 'init_pegrid', 'PA0230', 1, 2, 0, 6, 0 ) 369 372 ENDIF … … 381 384 382 385 383 IF ( psolver == 'poisfft' ) THEN 386 IF ( psolver == 'poisfft' ) THEN 384 387 ! 385 388 ! 2. transposition x > y 386 389 IF ( MOD( nx+1 , pdims(2) ) /= 0 ) THEN 387 WRITE( message_string, * ) 'transposition x > y: ',&388 '& nx+1=',nx+1,' is not an integral divisor of ',&389 'pdims(2)=',pdims(2)390 WRITE( message_string, * ) 'transposition x > y:& ', & 391 'nx+1=',nx+1,' is not an integral ', & 392 'multiple of pdims(2)=',pdims(2) 390 393 CALL message( 'init_pegrid', 'PA0231', 1, 2, 0, 6, 0 ) 391 394 ENDIF … … 399 402 sendrecvcount_xy = nnx_y * nny_x * nnz_y 400 403 ! 401 ! 3. transposition y > z 404 ! 3. transposition y > z 402 405 ! (ELSE: x > y in case of 1Ddecomposition along x) 403 406 nxl_z = nxl_y … … 414 417 ! along x, except that the uptreamspline method is switched on 415 418 IF ( MOD( ny+1 , pdims(1) ) /= 0 ) THEN 416 WRITE( message_string, * ) 'transposition y > z: ',&417 '& ny+1=',ny+1,' is not an integral divisor of',&418 'pdims(1)=',pdims(1)419 WRITE( message_string, * ) 'transposition y > z:& ', & 420 'ny+1=',ny+1,' is not an integral ', & 421 'multiple of pdims(1)=',pdims(1) 419 422 CALL message( 'init_pegrid', 'PA0232', 1, 2, 0, 6, 0 ) 420 423 ENDIF … … 425 428 ! This condition must be fulfilled for a 1Ddecomposition along x 426 429 IF ( MOD( ny+1 , pdims(1) ) /= 0 ) THEN 427 WRITE( message_string, * ) 'transposition x > y: ',&428 '& ny+1=',ny+1,' is not an integral divisor of',&429 'pdims(1)=',pdims(1)430 WRITE( message_string, * ) 'transposition x > y:& ', & 431 'ny+1=',ny+1,' is not an integral ', & 432 'multiple of pdims(1)=',pdims(1) 430 433 CALL message( 'init_pegrid', 'PA0233', 1, 2, 0, 6, 0 ) 431 434 ENDIF … … 440 443 IF ( MOD( nz, pdims(2) ) /= 0 ) THEN 441 444 WRITE( message_string, * ) 'direct transposition z > y (needed ', & 442 'for spectra): nz=',nz,' is not an integral divisor of ',&443 'pdims(2)=',pdims(2)445 'for spectra):& nz=',nz,' is not an ', & 446 'integral multiple of pdims(2)=',pdims(2) 444 447 CALL message( 'init_pegrid', 'PA0234', 1, 2, 0, 6, 0 ) 445 448 ELSE
Note: See TracChangeset
for help on using the changeset viewer.