Changeset 4842 for palm/trunk/SOURCE/surface_data_output_mod.f90
- Timestamp:
- Jan 14, 2021 10:42:28 AM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/surface_data_output_mod.f90
r4828 r4842 25 25 ! ----------------- 26 26 ! $Id$ 27 ! reading of namelist file and actions in case of namelist errors revised so that statement labels 28 ! and goto statements are not required any more 29 ! 30 ! 4828 2021-01-05 11:21:41Z Giersch 27 31 ! Bugfix: correct the down-ward surf_lsm index in the routine surface_data_output_collect_2d 28 32 ! … … 4205 4209 IMPLICIT NONE 4206 4210 4207 CHARACTER (LEN=80) :: line !< dummy string that contains the current line of the parameter file 4208 4209 4210 NAMELIST /surface_data_output_parameters/ averaging_interval_surf, data_output_surf, & 4211 dt_dosurf, dt_dosurf_av, skip_time_dosurf, & 4212 skip_time_dosurf_av, to_netcdf, to_vtk 4213 4214 line = ' ' 4215 4216 ! 4217 !-- Try to find the namelist 4218 REWIND ( 11 ) 4219 line = ' ' 4220 DO WHILE ( INDEX( line, '&surface_data_output_parameters' ) == 0 ) 4221 READ ( 11, '(A)', END=14 ) line 4222 ENDDO 4223 BACKSPACE ( 11 ) 4224 4225 ! 4226 !-- Read namelist 4227 READ ( 11, surface_data_output_parameters, ERR = 10 ) 4228 ! 4229 !-- Set flag that indicates that surface data output is switched on 4230 surface_output = .TRUE. 4231 GOTO 14 4232 4233 10 BACKSPACE( 11 ) 4234 READ( 11 , '(A)') line 4235 CALL parin_fail_message( 'surface_data_output_parameters', line ) 4236 4237 14 CONTINUE 4238 4211 CHARACTER(LEN=100) :: line !< dummy string that contains the current line of the parameter file 4212 4213 INTEGER(iwp) :: io_status !< status after reading the namelist file 4214 4215 4216 NAMELIST /surface_data_output_parameters/ averaging_interval_surf, & 4217 data_output_surf, & 4218 dt_dosurf, & 4219 dt_dosurf_av, & 4220 skip_time_dosurf, & 4221 skip_time_dosurf_av, & 4222 to_netcdf, & 4223 to_vtk 4224 4225 ! 4226 !-- Move to the beginning of the namelist file and try to find and read the namelist. 4227 REWIND( 11 ) 4228 READ( 11, surface_data_output_parameters, IOSTAT=io_status ) 4229 ! 4230 !-- Action depending on the READ status 4231 IF ( io_status == 0 ) THEN 4232 ! 4233 !-- surface_data_output_parameters namelist was found and read correctly. Set flag that indicates 4234 !-- that surface data output is switched on. 4235 surface_output = .TRUE. 4236 4237 ELSEIF ( io_status > 0 ) THEN 4238 ! 4239 !-- surface_data_output_parameters namelist was found but contained errors. Print an error 4240 !-- message including the line that caused the problem. 4241 BACKSPACE( 11 ) 4242 READ( 11 , '(A)') line 4243 CALL parin_fail_message( 'surface_data_output_parameters', line ) 4244 4245 ENDIF 4239 4246 4240 4247 END SUBROUTINE surface_data_output_parin
Note: See TracChangeset
for help on using the changeset viewer.