1263 integer(I4B),
intent(in) :: ncid
1264 type(StructuredNCDimIdType),
intent(inout) :: dim_ids
1265 type(StructuredNCVarIdType),
intent(inout) :: var_ids
1266 type(DisType),
pointer,
intent(in) :: dis
1267 real(DP),
dimension(:),
pointer,
contiguous,
intent(in) :: p_mem
1268 character(len=*),
intent(in) :: nc_varname
1269 character(len=*),
intent(in) :: pkgname
1270 character(len=*),
intent(in) :: tagname
1271 character(len=*),
intent(in) :: shapestr
1272 character(len=*),
intent(in) :: longname
1273 character(len=*),
intent(in) :: nc_tag
1274 character(len=*),
intent(in) :: gridmap_name
1275 logical(LGP),
intent(in) :: latlon
1276 integer(I4B),
intent(in) :: deflate
1277 integer(I4B),
intent(in) :: shuffle
1278 integer(I4B),
intent(in) :: chunk_z
1279 integer(I4B),
intent(in) :: chunk_y
1280 integer(I4B),
intent(in) :: chunk_x
1281 integer(I4B),
intent(in) :: iper
1282 character(len=*),
intent(in) :: nc_fname
1283 integer(I4B) :: var_id, axis_sz
1284 real(DP) :: fill_value
1285 character(len=LINELENGTH) :: longname_l
1287 if (shapestr ==
'NROW' .or. &
1288 shapestr ==
'NCOL' .or. &
1289 shapestr ==
'NCPL')
then
1291 select case (shapestr)
1297 axis_sz = dim_ids%ncpl
1301 call nf_verify(nf90_redef(ncid), nc_fname)
1302 call nf_verify(nf90_def_var(ncid, nc_varname, nf90_double, &
1303 (/axis_sz/), var_id), &
1307 call ncvar_deflate(ncid, var_id, deflate, shuffle, nc_fname)
1310 call nf_verify(nf90_put_att(ncid, var_id,
'_FillValue', &
1311 (/nf90_fill_double/)), nc_fname)
1312 call nf_verify(nf90_put_att(ncid, var_id,
'long_name', &
1313 longname), nc_fname)
1316 call ncvar_mf6attr(ncid, var_id, 0, 0, nc_tag, nc_fname)
1319 call nf_verify(nf90_enddef(ncid), nc_fname)
1320 call nf_verify(nf90_put_var(ncid, var_id, p_mem), &
1327 fill_value = nf90_fill_double
1330 longname_l = export_longname(longname, pkgname, tagname, layer=0, iper=iper)
1333 call nf_verify(nf90_redef(ncid), nc_fname)
1334 call nf_verify(nf90_def_var(ncid, nc_varname, nf90_double, &
1335 (/dim_ids%x, dim_ids%y, dim_ids%z/), var_id), &
1339 call ncvar_chunk3d(ncid, var_id, chunk_x, chunk_y, chunk_z, nc_fname)
1341 call ncvar_deflate(ncid, var_id, deflate, shuffle, nc_fname)
1344 call nf_verify(nf90_put_att(ncid, var_id,
'_FillValue', &
1345 (/fill_value/)), nc_fname)
1346 call nf_verify(nf90_put_att(ncid, var_id,
'long_name', &
1347 longname_l), nc_fname)
1350 call ncvar_gridmap(ncid, var_id, gridmap_name, latlon, nc_fname)
1351 call ncvar_mf6attr(ncid, var_id, iper, 0, nc_tag, nc_fname)
1354 call nf_verify(nf90_enddef(ncid), nc_fname)
1355 call nf_verify(nf90_put_var(ncid, var_id, p_mem, start=(/1, 1, 1/), &
1356 count=(/dis%ncol, dis%nrow, dis%nlay/)), &
This module contains simulation constants.
real(dp), parameter dnodata
real no data constant