57 use netcdf,
only: nf90_noerr, nf90_strerror
97 character(len=*),
intent(in) :: err
98 #ifdef ERROR_TRACEBACK 99 integer(i_long) :: div0
101 write(*,
"(A)")
" ** ERROR: " // err
102 #ifdef ERROR_TRACEBACK 103 write(*,
"(A)")
" ** Failed to process data/write NetCDF4." 104 write(*,
"(A)")
" (Traceback requested, triggering div0 error...)" 107 stop
" ** Failed to process data/write NetCDF4." 129 character(len=*),
intent(in) :: warn
130 write(*,
"(A)")
" ** WARNING: " // warn
155 logical :: action_on_off
156 #ifdef ENABLE_ACTION_MSGS 157 character(len=1000) :: action_str
160 write(action_str,
"(A, L, A)")
"nc_set_action_display(action_on_off = ", action_on_off,
")" 167 #ifdef ENABLE_ACTION_MSGS 197 character(len=*),
intent(in) :: act
199 write(*,
"(A)")
" ** ACTION: " // act
225 logical :: info_on_off
226 #ifdef ENABLE_ACTION_MSGS 227 character(len=1000) :: action_str
230 write(action_str,
"(A, L, A)")
"nc_set_info_display(info_on_off = ", info_on_off,
")" 255 character(len=*),
intent(in) :: ifo
257 write(*,
"(A)")
" ** INFO: " // ifo
279 subroutine nclayer_debug(dbg)
280 character(len=*),
intent(in) :: dbg
281 write(*,
"(A, A)")
"D: ", dbg
282 end subroutine nclayer_debug
302 integer(i_long),
intent(in) :: status
304 if(status /= nf90_noerr)
then integer, parameter, public i_long
logical nclayer_enable_action
subroutine nc_set_action_display(action_on_off)
subroutine nclayer_check(status)
subroutine nc_set_info_display(info_on_off)
subroutine nclayer_warning(warn)
subroutine nclayer_error(err)
subroutine nclayer_info(ifo)
logical nclayer_enable_info
subroutine nclayer_actionm(act)