Ignore:
Timestamp:
Apr 13, 2020 8:11:20 PM (4 years ago)
Author:
raasch
Message:

restart data handling with MPI-IO added, first part

File:
1 edited

Legend:

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

    r4457 r4495  
    2626! Former revisions:
    2727! -----------------
     28! $Id$
     29! restart data handling with MPI-IO added
     30!
     31! 4457 2020-03-11 14:20:43Z raasch
    2832!
    2933! use statement for exchange horiz added
    30 !
    31 !
    32 ! $Id$
    3334! (salim) removed the error message PA0672 to consider PC 3d data via ascii file
    3435!
     
    191192              passive_scalar,                                                  &
    192193              plant_canopy,                                                    &
     194              restart_data_format_output,                                      &
    193195              restart_string,                                                  &
    194196              urban_surface
     
    221223
    222224    USE pegrid
     225
     226    USE restart_data_mpi_io_mod,                                                                   &
     227        ONLY:  wrd_mpi_io
    223228
    224229    USE surface_mod,                                                           &
     
    24362441    SUBROUTINE pcm_wrd_local
    24372442
    2438        IF ( ALLOCATED( pcm_heatrate_av ) )  THEN
    2439           CALL wrd_write_string( 'pcm_heatrate_av' )
    2440           WRITE ( 14 )  pcm_heatrate_av
     2443       IF ( TRIM( restart_data_format_output ) == 'fortran_binary' )  THEN
     2444
     2445          IF ( ALLOCATED( pcm_heatrate_av ) )  THEN
     2446             CALL wrd_write_string( 'pcm_heatrate_av' )
     2447             WRITE ( 14 )  pcm_heatrate_av
     2448          ENDIF
     2449
     2450          IF ( ALLOCATED( pcm_latentrate_av ) )  THEN
     2451             CALL wrd_write_string( 'pcm_latentrate_av' )
     2452             WRITE ( 14 )  pcm_latentrate_av
     2453          ENDIF
     2454
     2455          IF ( ALLOCATED( pcm_transpirationrate_av ) )  THEN
     2456             CALL wrd_write_string( 'pcm_transpirationrate_av' )
     2457             WRITE ( 14 )  pcm_transpirationrate_av
     2458          ENDIF
     2459
     2460       ELSEIF ( TRIM( restart_data_format_output ) == 'mpi' )  THEN
     2461
     2462          IF ( ALLOCATED( pcm_heatrate_av ) )  CALL wrd_mpi_io( 'pcm_heatrate_av', pcm_heatrate_av )
     2463          IF ( ALLOCATED( pcm_latentrate_av ) )  THEN
     2464             CALL wrd_mpi_io( 'pcm_latentrate_av', pcm_latentrate_av )
     2465          ENDIF
     2466          IF ( ALLOCATED( pcm_transpirationrate_av ) )  THEN
     2467             CALL wrd_write_string( 'pcm_transpirationrate_av', pcm_transpirationrate_av )
     2468          ENDIF
     2469
    24412470       ENDIF
    24422471
    2443        IF ( ALLOCATED( pcm_latentrate_av ) )  THEN
    2444           CALL wrd_write_string( 'pcm_latentrate_av' )
    2445           WRITE ( 14 )  pcm_latentrate_av
    2446        ENDIF
    2447 
    2448        IF ( ALLOCATED( pcm_transpirationrate_av ) )  THEN
    2449           CALL wrd_write_string( 'pcm_transpirationrate_av' )
    2450           WRITE ( 14 )  pcm_transpirationrate_av
    2451        ENDIF
    2452 
    24532472    END SUBROUTINE pcm_wrd_local
    24542473
Note: See TracChangeset for help on using the changeset viewer.