Changeset 1031 for palm/trunk/SOURCE/data_output_2d.f90
- Timestamp:
- Oct 19, 2012 2:35:30 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/data_output_2d.f90
r1008 r1031 4 4 ! Current revisions: 5 5 ! ----------------- 6 ! 6 ! netCDF4 without parallel file support implemented 7 7 ! 8 8 ! Former revisions: … … 44 44 ! 45 45 ! 493 2010-03-01 08:30:24Z raasch 46 ! NetCDF4 support (parallel output)46 ! netCDF4 support (parallel output) 47 47 ! 48 48 ! 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. 51 51 ! Bugfix: averaging along z is not allowed for 2d quantities (e.g. u* and z0) 52 52 ! Output of messages replaced by message handling routine. … … 85 85 ! Description: 86 86 ! ------------ 87 ! Data output of horizontal cross-sections in NetCDF format or binary format87 ! Data output of horizontal cross-sections in netCDF format or binary format 88 88 ! compatible to old graphic software iso2d. 89 89 ! Attention: The position of the sectional planes is still not always computed … … 146 146 147 147 ! 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 ) ) & 151 150 THEN 152 151 CALL check_open( 101+av*10 ) … … 169 168 170 169 ! 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 ) ) & 174 172 THEN 175 173 CALL check_open( 102+av*10 ) … … 193 191 194 192 ! 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 ) ) & 198 195 THEN 199 196 CALL check_open( 103+av*10 ) … … 703 700 704 701 ! 705 !-- Update the NetCDF xy cross section time axis706 IF ( myid == 0 .OR. netcdf_data_format > 2) THEN702 !-- Update the netCDF xy cross section time axis 703 IF ( myid == 0 .OR. netcdf_data_format > 4 ) THEN 707 704 IF ( simulated_time /= do2d_xy_last_time(av) ) THEN 708 705 do2d_xy_time_count(av) = do2d_xy_time_count(av) + 1 709 706 do2d_xy_last_time(av) = simulated_time 710 707 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 ) & 712 709 THEN 713 710 #if defined( __netcdf ) … … 747 744 748 745 #if defined( __parallel ) 749 IF ( netcdf_output .AND. netcdf_data_format > 2) THEN750 ! 751 !-- Output in NetCDF4/HDF5 format.746 IF ( netcdf_output .AND. netcdf_data_format > 4 ) THEN 747 ! 748 !-- Parallel output in netCDF4/HDF5 format. 752 749 !-- Do not output redundant ghost point data except for the 753 750 !-- boundaries of the total domain. … … 951 948 CASE ( 'xz' ) 952 949 ! 953 !-- Update the NetCDF xz cross section time axis954 IF ( myid == 0 .OR. netcdf_data_format > 2) THEN950 !-- Update the netCDF xz cross section time axis 951 IF ( myid == 0 .OR. netcdf_data_format > 4 ) THEN 955 952 956 953 IF ( simulated_time /= do2d_xz_last_time(av) ) THEN … … 958 955 do2d_xz_last_time(av) = simulated_time 959 956 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 ) & 961 958 THEN 962 959 #if defined( __netcdf ) … … 1016 1013 1017 1014 #if defined( __parallel ) 1018 IF ( netcdf_output .AND. netcdf_data_format > 2) THEN1015 IF ( netcdf_output .AND. netcdf_data_format > 4 ) THEN 1019 1016 ! 1020 1017 !-- ATTENTION: The following lines are a workaround, because 1021 1018 !-- independet output does not work with the 1022 !-- current NetCDF4 installation. Therefore, data1019 !-- current netCDF4 installation. Therefore, data 1023 1020 !-- are transferred from PEs having the cross 1024 1021 !-- sections to other PEs along y having no cross … … 1049 1046 1050 1047 ! 1051 !-- Output in NetCDF4/HDF5 format.1048 !-- Output in netCDF4/HDF5 format. 1052 1049 !-- Output only on those PEs where the respective cross 1053 1050 !-- sections reside. Cross sections averaged along y are … … 1261 1258 CASE ( 'yz' ) 1262 1259 ! 1263 !-- Update the NetCDF yz cross section time axis1264 IF ( myid == 0 .OR. netcdf_data_format > 2) THEN1260 !-- Update the netCDF yz cross section time axis 1261 IF ( myid == 0 .OR. netcdf_data_format > 4 ) THEN 1265 1262 1266 1263 IF ( simulated_time /= do2d_yz_last_time(av) ) THEN … … 1268 1265 do2d_yz_last_time(av) = simulated_time 1269 1266 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 ) & 1271 1268 THEN 1272 1269 #if defined( __netcdf ) … … 1325 1322 1326 1323 #if defined( __parallel ) 1327 IF ( netcdf_output .AND. netcdf_data_format > 2) THEN1324 IF ( netcdf_output .AND. netcdf_data_format > 4 ) THEN 1328 1325 ! 1329 1326 !-- ATTENTION: The following lines are a workaround, because 1330 1327 !-- independet output does not work with the 1331 !-- current NetCDF4 installation. Therefore, data1328 !-- current netCDF4 installation. Therefore, data 1332 1329 !-- are transferred from PEs having the cross 1333 1330 !-- sections to other PEs along y having no cross … … 1358 1355 1359 1356 ! 1360 !-- Output in NetCDF4/HDF5 format.1357 !-- Output in netCDF4/HDF5 format. 1361 1358 !-- Output only on those PEs where the respective cross 1362 1359 !-- sections reside. Cross sections averaged along x are
Note: See TracChangeset
for help on using the changeset viewer.