1331 real(DP),
dimension(:),
pointer,
contiguous,
intent(in) :: p_mem
1332 integer(I4B),
intent(in) :: ncid
1333 type(StructuredNCDimIdType),
intent(inout) :: dim_ids
1334 type(StructuredNCVarIdType),
intent(inout) :: var_ids
1335 type(DisType),
pointer,
intent(in) :: dis
1336 type(InputParamDefinitionType),
pointer,
intent(in) :: idt
1337 character(len=*),
intent(in) :: mempath
1338 character(len=*),
intent(in) :: nc_tag
1339 character(len=*),
intent(in) :: pkgname
1340 character(len=*),
intent(in) :: gridmap_name
1341 logical(LGP),
intent(in) :: latlon
1342 integer(I4B),
intent(in) :: deflate
1343 integer(I4B),
intent(in) :: shuffle
1344 integer(I4B),
intent(in) :: chunk_z
1345 integer(I4B),
intent(in) :: chunk_y
1346 integer(I4B),
intent(in) :: chunk_x
1347 integer(I4B),
intent(in) :: iper
1348 integer(I4B),
intent(in) :: iaux
1349 character(len=*),
intent(in) :: nc_fname
1350 integer(I4B) :: var_id, axis_sz, istp
1351 character(len=LINELENGTH) :: varname, longname
1353 if (idt%shape ==
'NROW' .or. &
1354 idt%shape ==
'NCOL' .or. &
1355 idt%shape ==
'NCPL' .or. &
1356 idt%shape ==
'NAUX NCPL')
then
1359 select case (idt%shape)
1366 varname = export_varname(pkgname, idt%tagname, mempath)
1367 longname = export_longname(idt%longname, pkgname, idt%tagname, mempath, &
1371 call nf_verify(nf90_redef(ncid), nc_fname)
1372 call nf_verify(nf90_def_var(ncid, varname, nf90_double, &
1373 (/axis_sz/), var_id), &
1377 call ncvar_deflate(ncid, var_id, deflate, shuffle, nc_fname)
1380 call nf_verify(nf90_put_att(ncid, var_id,
'_FillValue', &
1381 (/nf90_fill_double/)), nc_fname)
1382 call nf_verify(nf90_put_att(ncid, var_id,
'long_name', &
1383 longname), nc_fname)
1386 call ncvar_mf6attr(ncid, var_id, iaux, nc_tag, nc_fname)
1389 call nf_verify(nf90_enddef(ncid), nc_fname)
1390 call nf_verify(nf90_put_var(ncid, var_id, p_mem), &
1395 call nf_verify(nf90_put_var(ncid, &
1396 var_ids%export, p_mem, &
1397 start=(/1, istp/), &
1398 count=(/dis%ncol, dis%nrow, 1/)), nc_fname)
1404 varname = export_varname(pkgname, idt%tagname, mempath, iaux=iaux)
1405 longname = export_longname(idt%longname, pkgname, idt%tagname, mempath, &
1409 call nf_verify(nf90_redef(ncid), nc_fname)
1410 call nf_verify(nf90_def_var(ncid, varname, nf90_double, &
1411 (/dim_ids%x, dim_ids%y, dim_ids%z/), &
1415 call ncvar_chunk3d(ncid, var_id, chunk_x, chunk_y, chunk_z, nc_fname)
1417 call ncvar_deflate(ncid, var_id, deflate, shuffle, nc_fname)
1420 call nf_verify(nf90_put_att(ncid, var_id,
'_FillValue', &
1421 (/nf90_fill_double/)), nc_fname)
1422 call nf_verify(nf90_put_att(ncid, var_id,
'long_name', &
1423 longname), nc_fname)
1426 call ncvar_gridmap(ncid, var_id, gridmap_name, latlon, nc_fname)
1427 call ncvar_mf6attr(ncid, var_id, iaux, nc_tag, nc_fname)
1430 call nf_verify(nf90_enddef(ncid), nc_fname)
1431 call nf_verify(nf90_put_var(ncid, var_id, p_mem, start=(/1, 1, 1/), &
1432 count=(/dis%ncol, dis%nrow, dis%nlay/)), &
1437 call nf_verify(nf90_put_var(ncid, &
1438 var_ids%export, p_mem, &
1439 start=(/1, 1, 1, istp/), &
1440 count=(/dis%ncol, dis%nrow, dis%nlay, 1/)), &
This module contains the NetCDFCommonModule.
integer(i4b) function, public ixstp()
step index for timeseries data