Changeset 3812 for palm/trunk/SOURCE


Ignore:
Timestamp:
Mar 25, 2019 7:10:12 AM (6 years ago)
Author:
gronemeier
Message:

Open binary surface output data within separate folder

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/check_open.f90

    r3705 r3812  
    2525! -----------------
    2626! $Id$
     27! Open binary surface output data within separate folder
     28!
     29! 3705 2019-01-29 19:56:39Z suehring
    2730! Open binary files for virtual measurements
    2831!
     
    465468!
    466469!--       Binary files for surface data
    467           OPEN ( 25, FILE='SURFACE_DATA_BIN'//TRIM( coupling_char )//myid_char,  &
    468                  FORM='UNFORMATTED', POSITION='APPEND' )
     470          ! OPEN ( 25, FILE='SURFACE_DATA_BIN'//TRIM( coupling_char )//          &
     471          !                 myid_char, FORM='UNFORMATTED', POSITION='APPEND' )
     472
     473          IF ( myid_char == '' )  THEN
     474             OPEN ( 25, FILE='SURFACE_DATA_BIN'//TRIM( coupling_char )//       &
     475                             myid_char, FORM='UNFORMATTED', POSITION='APPEND' )
     476          ELSE
     477             IF ( myid == 0  .AND. .NOT. openfile(file_id)%opened_before )  THEN
     478                CALL local_system( 'mkdir  SURFACE_DATA_BIN' //                &
     479                                   TRIM( coupling_char ) )
     480             ENDIF
     481#if defined( __parallel )
     482!
     483!--          Set a barrier in order to allow that all other processors in the
     484!--          directory created by PE0 can open their file
     485             CALL MPI_BARRIER( comm2d, ierr )
     486#endif
     487             ioerr = 1
     488             DO WHILE ( ioerr /= 0 )
     489                OPEN ( 25, FILE='SURFACE_DATA_BIN'//TRIM(coupling_char)//      &
     490                                '/'//myid_char,                                &
     491                           FORM='UNFORMATTED', IOSTAT=ioerr )
     492                IF ( ioerr /= 0 )  THEN
     493                   WRITE( 9, * )  '*** could not open "SURFACE_DATA_BIN'//     &
     494                                  TRIM(coupling_char)//'/'//myid_char//        &
     495                                  '"! Trying again in 1 sec.'
     496                   CALL fortran_sleep( 1 )
     497                ENDIF
     498             ENDDO
     499
     500          ENDIF
    469501
    470502       CASE ( 26 )
    471503!
    472504!--       Binary files for averaged surface data
    473           OPEN ( 26, FILE='SURFACE_DATA_AV_BIN'//TRIM( coupling_char )//myid_char,  &
    474                  FORM='UNFORMATTED', POSITION='APPEND' )
    475                  
     505          ! OPEN ( 26, FILE='SURFACE_DATA_AV_BIN'//TRIM( coupling_char )//myid_char,  &
     506          !        FORM='UNFORMATTED', POSITION='APPEND' )
     507
     508          IF ( myid_char == '' )  THEN
     509             OPEN ( 26, FILE='SURFACE_DATA_AV_BIN'//TRIM( coupling_char )//    &
     510                             myid_char, FORM='UNFORMATTED', POSITION='APPEND' )
     511          ELSE
     512             IF ( myid == 0  .AND. .NOT. openfile(file_id)%opened_before )  THEN
     513                CALL local_system( 'mkdir  SURFACE_DATA_AV_BIN' //             &
     514                                   TRIM( coupling_char ) )
     515             ENDIF
     516#if defined( __parallel )
     517!
     518!--          Set a barrier in order to allow that all other processors in the
     519!--          directory created by PE0 can open their file
     520             CALL MPI_BARRIER( comm2d, ierr )
     521#endif
     522             ioerr = 1
     523             DO WHILE ( ioerr /= 0 )
     524                OPEN ( 26, FILE='SURFACE_DATA_AV_BIN'//TRIM(coupling_char)//   &
     525                                '/'//myid_char,                                &
     526                           FORM='UNFORMATTED', IOSTAT=ioerr )
     527                IF ( ioerr /= 0 )  THEN
     528                   WRITE( 9, * )  '*** could not open "SURFACE_DATA_AV_BIN'//  &
     529                                  TRIM(coupling_char)//'/'//myid_char//        &
     530                                  '"! Trying again in 1 sec.'
     531                   CALL fortran_sleep( 1 )
     532                ENDIF
     533             ENDDO
     534
     535          ENDIF
     536
    476537       CASE ( 27 )
    477538!
Note: See TracChangeset for help on using the changeset viewer.