9 use netcdf,
only: nf90_get_var, nf90_byte, nf90_short, nf90_int, &
10 nf90_float, nf90_double, nf90_char
44 integer(i_long),
intent(in) :: file_ncdr_id
45 character(len=*),
intent(in) :: var_name
46 integer(i_byte),
dimension(:),
allocatable,
intent(inout) :: var_stor
48 integer(i_long) :: var_index, var_type, file_ncid
60 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 1)
63 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
68 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1) /) ))
72 character(len=*),
intent(in) :: var_name
73 integer(i_byte),
dimension(:),
allocatable,
intent(inout) :: var_stor
80 integer(i_long),
intent(in) :: file_ncdr_id
81 character(len=*),
intent(in) :: var_name
82 integer(i_short),
dimension(:),
allocatable,
intent(inout) :: var_stor
84 integer(i_long) :: var_index, var_type, file_ncid
96 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 1)
99 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
104 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1) /) ))
108 character(len=*),
intent(in) :: var_name
109 integer(i_short),
dimension(:),
allocatable,
intent(inout) :: var_stor
116 integer(i_long),
intent(in) :: file_ncdr_id
117 character(len=*),
intent(in) :: var_name
118 integer(i_long),
dimension(:),
allocatable,
intent(inout) :: var_stor
120 integer(i_long) :: var_index, var_type, file_ncid
132 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 1)
135 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
140 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1) /) ))
144 character(len=*),
intent(in) :: var_name
145 integer(i_long),
dimension(:),
allocatable,
intent(inout) :: var_stor
152 integer(i_long),
intent(in) :: file_ncdr_id
153 character(len=*),
intent(in) :: var_name
154 real(r_single),
dimension(:),
allocatable,
intent(inout) :: var_stor
156 integer(i_long) :: var_index, var_type, file_ncid
168 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 1)
171 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
176 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1) /) ))
180 character(len=*),
intent(in) :: var_name
181 real(r_single),
dimension(:),
allocatable,
intent(inout) :: var_stor
188 integer(i_long),
intent(in) :: file_ncdr_id
189 character(len=*),
intent(in) :: var_name
190 real(r_double),
dimension(:),
allocatable,
intent(inout) :: var_stor
192 integer(i_long) :: var_index, var_type, file_ncid
204 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 1)
207 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
212 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1) /) ))
216 character(len=*),
intent(in) :: var_name
217 real(r_double),
dimension(:),
allocatable,
intent(inout) :: var_stor
224 integer(i_long),
intent(in) :: file_ncdr_id
225 character(len=*),
intent(in) :: var_name
226 character(len=:),
dimension(:),
allocatable,
intent(inout) :: var_stor
228 integer(i_long) :: var_index, var_type, file_ncid
240 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 2)
243 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
247 start = (/ 1, 1 /), &
248 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1), &
249 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(2) /) ))
253 character(len=*),
intent(in) :: var_name
254 character(len=:),
dimension(:),
allocatable,
intent(inout) :: var_stor
261 integer(i_long),
intent(in) :: file_ncdr_id
262 character(len=*),
intent(in) :: var_name
263 integer(i_byte),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
265 integer(i_long) :: var_index, var_type, file_ncid
277 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 2)
280 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
285 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1), &
286 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(2) /) ))
290 character(len=*),
intent(in) :: var_name
291 integer(i_byte),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
298 integer(i_long),
intent(in) :: file_ncdr_id
299 character(len=*),
intent(in) :: var_name
300 integer(i_short),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
302 integer(i_long) :: var_index, var_type, file_ncid
314 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 2)
317 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
322 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1), &
323 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(2) /) ))
327 character(len=*),
intent(in) :: var_name
328 integer(i_short),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
335 integer(i_long),
intent(in) :: file_ncdr_id
336 character(len=*),
intent(in) :: var_name
337 integer(i_long),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
339 integer(i_long) :: var_index, var_type, file_ncid
351 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 2)
354 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
359 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1), &
360 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(2) /) ))
364 character(len=*),
intent(in) :: var_name
365 integer(i_long),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
372 integer(i_long),
intent(in) :: file_ncdr_id
373 character(len=*),
intent(in) :: var_name
374 real(r_single),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
376 integer(i_long) :: var_index, var_type, file_ncid
388 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 2)
391 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
396 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1), &
397 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(2) /) ))
401 character(len=*),
intent(in) :: var_name
402 real(r_single),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
409 integer(i_long),
intent(in) :: file_ncdr_id
410 character(len=*),
intent(in) :: var_name
411 real(r_double),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
413 integer(i_long) :: var_index, var_type, file_ncid
425 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 2)
428 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
433 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1), &
434 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(2) /) ))
438 character(len=*),
intent(in) :: var_name
439 real(r_double),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
446 integer(i_long),
intent(in) :: file_ncdr_id
447 character(len=*),
intent(in) :: var_name
448 character(len=:),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
450 integer(i_long) :: var_index, var_type, file_ncid
462 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes), 3)
465 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes)
469 start = (/ 1, 1, 1 /), &
470 count = (/
ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(1), &
471 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(2), &
472 ncdr_files(file_ncdr_id)%vars(var_index)%var_dim_sizes(3) /) ))
476 character(len=*),
intent(in) :: var_name
477 character(len=:),
dimension(:,:),
allocatable,
intent(inout) :: var_stor
subroutine nc_diag_read_id_get_var_1d_long(file_ncdr_id, var_name, var_stor)
integer, parameter, public i_byte
subroutine nc_diag_read_noid_get_var_1d_byte(var_name, var_stor)
integer, parameter, public i_long
subroutine nc_diag_read_noid_get_var_1d_float(var_name, var_stor)
subroutine nc_diag_read_noid_get_var_2d_byte(var_name, var_stor)
subroutine nc_diag_read_id_get_var_1d_byte(file_ncdr_id, var_name, var_stor)
subroutine nc_diag_read_noid_get_var_1d_double(var_name, var_stor)
subroutine ncdr_nc_check(status)
subroutine nc_diag_read_id_get_var_1d_short(file_ncdr_id, var_name, var_stor)
subroutine nc_diag_read_noid_get_var_2d_short(var_name, var_stor)
subroutine nc_diag_read_id_get_var_1d_float(file_ncdr_id, var_name, var_stor)
integer(i_long) current_ncdr_id
type(ncdr_file), dimension(:), allocatable ncdr_files
subroutine nc_diag_read_noid_get_var_2d_double(var_name, var_stor)
subroutine nc_diag_read_noid_get_var_1d_string(var_name, var_stor)
subroutine ncdr_check_current_ncdr_id
subroutine nc_diag_read_noid_get_var_2d_string(var_name, var_stor)
subroutine ncdr_check_ncid(file_ncid)
subroutine nc_diag_read_noid_get_var_2d_long(var_name, var_stor)
subroutine nc_diag_read_id_get_var_1d_double(file_ncdr_id, var_name, var_stor)
integer(i_long) function nc_diag_read_id_assert_var(file_ncdr_id, var_name)
subroutine nc_diag_read_noid_get_var_1d_long(var_name, var_stor)
subroutine nc_diag_read_id_get_var_2d_short(file_ncdr_id, var_name, var_stor)
subroutine ncdr_check_ncdr_id(file_ncdr_id)
subroutine nc_diag_read_noid_get_var_2d_float(var_name, var_stor)
subroutine nc_diag_read_id_get_var_2d_double(file_ncdr_id, var_name, var_stor)
integer, parameter, public i_short
subroutine nc_diag_read_id_get_var_2d_long(file_ncdr_id, var_name, var_stor)
subroutine nc_diag_read_id_get_var_1d_string(file_ncdr_id, var_name, var_stor)
subroutine nc_diag_read_id_get_var_2d_string(file_ncdr_id, var_name, var_stor)
subroutine nc_diag_read_id_get_var_2d_byte(file_ncdr_id, var_name, var_stor)
integer, parameter, public r_double
subroutine nc_diag_read_noid_get_var_1d_short(var_name, var_stor)
integer, parameter, public r_single
subroutine nc_diag_read_id_get_var_2d_float(file_ncdr_id, var_name, var_stor)
subroutine nc_diag_read_assert_var_type(var_type, correct_var_type)
subroutine nc_diag_read_assert_var_ndims(var_ndims, correct_var_ndims)