Ignore:
Timestamp:
Mar 1, 2010 8:30:24 AM (14 years ago)
Author:
raasch
Message:

New:
---
Output in NetCDF4-format. New d3par-parameter netcdf_data_format.

(check_open, check_parameters, close_file, data_output_2d, data_output_3d, header, modules, netcdf, parin)

Modules to be loaded for compilation (mbuild) or job execution (mrun)
can be given in the configuration file using variable modules. Example:

%modules ifort/11.0.069:netcdf lcsgih parallel

This method replaces the (undocumented) mpilib-variable.

WARNING: All fixed settings of modules in the scripts mbuild, mrun, and subjob
have been removed! Please set the modules variable appropriately in your
configuration file. (mbuild, mrun, subjob)

Changed:


Parameters netcdf_64bit and netcdf_64bit_3d have been removed. Use
netcdf_data_format = 2 for choosing the classic 64bit-offset format (this is
the default). The offset-format can not be set independently for the
3d-output-data any more.

Parameters netcdf_format_mask, netcdf_format_mask_av, and variables
nc_format_mask, format_parallel_io removed. They are replaced by the new
parameter netcdf_data_format. (check_open, close_file,
data_output_mask, header, init_masks, modules, parin)

Errors:


bugfix in trunk/UTIL/Makefile: forgot to compile for interpret_config

Bugfix: timeseries data have to be collected by PE0 (user_statistics)

File:
1 edited

Legend:

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

    r484 r493  
    5353    CALL cpu_log (log_point(49),'data_output_mask','start')
    5454
    55 !!
     55!
    5656!-- Open output file.
    57     IF ( format_parallel_io .AND. netcdf_output )  THEN
    58        CALL check_open( 120+mid+av*max_masks )
    59     ELSEIF (myid == 0  .AND.  netcdf_output ) THEN
     57    IF ( netcdf_output  .AND.  ( myid == 0  .OR.  netcdf_data_format > 2 ) ) &
     58    THEN
    6059       CALL check_open( 120+mid+av*max_masks )
    6160    ENDIF
     
    7473!-- Update the NetCDF time axis.
    7574    domask_time_count(mid,av) = domask_time_count(mid,av) + 1
    76     IF ( format_parallel_io .AND. netcdf_output )  THEN
    77        nc_stat = NF90_PUT_VAR( id_set_mask(mid,av), id_var_time_mask(mid,av), &
    78                                (/ simulated_time /),                          &
    79                                start = (/ domask_time_count(mid,av) /),       &
    80                                count = (/ 1 /) )
    81        CALL handle_netcdf_error( 'data_output_mask', 9998 )
    82     ELSEIF ( myid == 0  .AND.  netcdf_output )  THEN
     75    IF ( netcdf_output  .AND.  ( myid == 0  .OR.  netcdf_data_format > 2 ) ) &
     76    THEN
    8377       nc_stat = NF90_PUT_VAR( id_set_mask(mid,av), id_var_time_mask(mid,av), &
    8478                               (/ simulated_time /),                          &
     
    9589!
    9690!--    Reallocate local_pf on PE 0 since its shape changes during MPI exchange
    97        IF ( .NOT. format_parallel_io .AND. myid == 0 .AND. if > 1 )  THEN
     91       IF ( netcdf_data_format < 3   .AND.  myid == 0  .AND. if > 1 )  THEN
    9892          DEALLOCATE( local_pf )
    9993          ALLOCATE( local_pf(mask_size_l(mid,1),mask_size_l(mid,2), &
     
    329323!--    The choice of method depends on the correct setting of preprocessor
    330324!--    directives __parallel and __netcdf4 as well as on the parameter
    331 !--    nc_format_mask(mid,av).
     325!--    netcdf_data_format.
    332326#if defined( __parallel )
    333327#if defined( __netcdf4 )
    334        IF ( nc_format_mask(mid,av) == 3 .OR. nc_format_mask(mid,av) == 4 )  THEN
     328       IF ( netcdf_data_format > 2 )  THEN
    335329!
    336330!--       (1) a. Parallel I/O using NetCDF 4 (not yet tested)
Note: See TracChangeset for help on using the changeset viewer.