Ignore:
Timestamp:
Oct 19, 2012 2:35:30 PM (9 years ago)
Author:
raasch
Message:

netCDF4 without parallel file support implemented
additional define string netcdf4_parallel is required to switch on parallel file support

File:
1 edited

Legend:

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

    r1008 r1031  
    44! Current revisions:
    55! -----------------
    6 !
     6! netCDF4 without parallel file support implemented
    77!
    88! Former revisions:
     
    4444!
    4545! 493 2010-03-01 08:30:24Z raasch
    46 ! NetCDF4 support (parallel output)
     46! netCDF4 support (parallel output)
    4747!
    4848! 367 2009-08-25 08:35:52Z maronga
    49 ! simulated_time in NetCDF output replaced by time_since_reference_point.
    50 ! Output of NetCDF messages with aid of message handling routine.
     49! simulated_time in netCDF output replaced by time_since_reference_point.
     50! Output of netCDF messages with aid of message handling routine.
    5151! Bugfix: averaging along z is not allowed for 2d quantities (e.g. u* and z0)
    5252! Output of messages replaced by message handling routine.
     
    8585! Description:
    8686! ------------
    87 ! Data output of horizontal cross-sections in NetCDF format or binary format
     87! Data output of horizontal cross-sections in netCDF format or binary format
    8888! compatible to old graphic software iso2d.
    8989! Attention: The position of the sectional planes is still not always computed
     
    146146
    147147!
    148 !--       Classic and 64bit offset NetCDF output is done only on PE0.
    149 !--       netCDF4/HDF5 output is done in parallel on all PEs.
    150           IF ( netcdf_output .AND. ( myid == 0 .OR. netcdf_data_format > 2 ) ) &
     148!--       Parallel netCDF4/HDF5 output is done on all PEs, all other on PE0 only
     149          IF ( netcdf_output .AND. ( myid == 0 .OR. netcdf_data_format > 4 ) ) &
    151150          THEN
    152151             CALL check_open( 101+av*10 )
     
    169168
    170169!
    171 !--       Classic and 64bit offset NetCDF output is done only on PE0.
    172 !--       netCDF4/HDF5 output may be done in parallel on all PEs.
    173           IF ( netcdf_output .AND. ( myid == 0 .OR. netcdf_data_format > 2 ) ) &
     170!--       Parallel netCDF4/HDF5 output is done on all PEs, all other on PE0 only
     171          IF ( netcdf_output .AND. ( myid == 0 .OR. netcdf_data_format > 4 ) ) &
    174172          THEN
    175173             CALL check_open( 102+av*10 )
     
    193191
    194192!
    195 !--       Classic and 64bit offset NetCDF output is done only on PE0.
    196 !--       netCDF4/HDF5 output may be done in parallel on all PEs.
    197           IF ( netcdf_output .AND. ( myid == 0 .OR. netcdf_data_format > 2 ) ) &
     193!--       Parallel netCDF4/HDF5 output is done on all PEs, all other on PE0 only
     194          IF ( netcdf_output .AND. ( myid == 0 .OR. netcdf_data_format > 4 ) ) &
    198195          THEN
    199196             CALL check_open( 103+av*10 )
     
    703700
    704701!
    705 !--                Update the NetCDF xy cross section time axis
    706                    IF ( myid == 0  .OR.  netcdf_data_format > 2 )  THEN
     702!--                Update the netCDF xy cross section time axis
     703                   IF ( myid == 0  .OR.  netcdf_data_format > 4 )  THEN
    707704                      IF ( simulated_time /= do2d_xy_last_time(av) )  THEN
    708705                         do2d_xy_time_count(av) = do2d_xy_time_count(av) + 1
    709706                         do2d_xy_last_time(av)  = simulated_time
    710707                         IF ( ( .NOT. data_output_2d_on_each_pe  .AND. &
    711                               netcdf_output )  .OR.  netcdf_data_format > 2 ) &
     708                              netcdf_output )  .OR.  netcdf_data_format > 4 ) &
    712709                         THEN
    713710#if defined( __netcdf )
     
    747744
    748745#if defined( __parallel )
    749                    IF ( netcdf_output  .AND.  netcdf_data_format > 2 )  THEN
    750 !
    751 !--                   Output in NetCDF4/HDF5 format.
     746                   IF ( netcdf_output  .AND.  netcdf_data_format > 4 )  THEN
     747!
     748!--                   Parallel output in netCDF4/HDF5 format.
    752749!--                   Do not output redundant ghost point data except for the
    753750!--                   boundaries of the total domain.
     
    951948                CASE ( 'xz' )
    952949!
    953 !--                Update the NetCDF xz cross section time axis
    954                    IF ( myid == 0  .OR.  netcdf_data_format > 2 )  THEN
     950!--                Update the netCDF xz cross section time axis
     951                   IF ( myid == 0  .OR.  netcdf_data_format > 4 )  THEN
    955952
    956953                      IF ( simulated_time /= do2d_xz_last_time(av) )  THEN
     
    958955                         do2d_xz_last_time(av)  = simulated_time
    959956                         IF ( ( .NOT. data_output_2d_on_each_pe  .AND.        &
    960                               netcdf_output )  .OR.  netcdf_data_format > 2 ) &
     957                              netcdf_output )  .OR.  netcdf_data_format > 4 ) &
    961958                         THEN
    962959#if defined( __netcdf )
     
    10161013
    10171014#if defined( __parallel )
    1018                    IF ( netcdf_output  .AND.  netcdf_data_format > 2 )  THEN
     1015                   IF ( netcdf_output  .AND.  netcdf_data_format > 4 )  THEN
    10191016!
    10201017!--                   ATTENTION: The following lines are a workaround, because
    10211018!--                              independet output does not work with the
    1022 !--                              current NetCDF4 installation. Therefore, data
     1019!--                              current netCDF4 installation. Therefore, data
    10231020!--                              are transferred from PEs having the cross
    10241021!--                              sections to other PEs along y having no cross
     
    10491046
    10501047!
    1051 !--                   Output in NetCDF4/HDF5 format.
     1048!--                   Output in netCDF4/HDF5 format.
    10521049!--                   Output only on those PEs where the respective cross
    10531050!--                   sections reside. Cross sections averaged along y are
     
    12611258                CASE ( 'yz' )
    12621259!
    1263 !--                Update the NetCDF yz cross section time axis
    1264                    IF ( myid == 0  .OR.  netcdf_data_format > 2 )  THEN
     1260!--                Update the netCDF yz cross section time axis
     1261                   IF ( myid == 0  .OR.  netcdf_data_format > 4 )  THEN
    12651262
    12661263                      IF ( simulated_time /= do2d_yz_last_time(av) )  THEN
     
    12681265                         do2d_yz_last_time(av)  = simulated_time
    12691266                         IF ( ( .NOT. data_output_2d_on_each_pe  .AND.        &
    1270                               netcdf_output )  .OR.  netcdf_data_format > 2 ) &
     1267                              netcdf_output )  .OR.  netcdf_data_format > 4 ) &
    12711268                         THEN
    12721269#if defined( __netcdf )
     
    13251322
    13261323#if defined( __parallel )
    1327                    IF ( netcdf_output  .AND.  netcdf_data_format > 2 )  THEN
     1324                   IF ( netcdf_output  .AND.  netcdf_data_format > 4 )  THEN
    13281325!
    13291326!--                   ATTENTION: The following lines are a workaround, because
    13301327!--                              independet output does not work with the
    1331 !--                              current NetCDF4 installation. Therefore, data
     1328!--                              current netCDF4 installation. Therefore, data
    13321329!--                              are transferred from PEs having the cross
    13331330!--                              sections to other PEs along y having no cross
     
    13581355
    13591356!
    1360 !--                   Output in NetCDF4/HDF5 format.
     1357!--                   Output in netCDF4/HDF5 format.
    13611358!--                   Output only on those PEs where the respective cross
    13621359!--                   sections reside. Cross sections averaged along x are
Note: See TracChangeset for help on using the changeset viewer.