186 class(Mesh2dDisvExportType),
intent(inout) :: this
187 class(ExportPackageType),
pointer,
intent(in) :: export_pkg
188 type(InputParamDefinitionType),
pointer :: idt
189 integer(I4B),
dimension(:),
pointer,
contiguous :: int1d
190 real(DP),
dimension(:),
pointer,
contiguous :: dbl1d, nodes
191 real(DP),
dimension(:, :),
pointer,
contiguous :: dbl2d
192 character(len=LINELENGTH) :: nc_tag
193 integer(I4B) :: iaux, iparam, nvals
195 integer(I4B),
pointer :: nbound
201 do iparam = 1, export_pkg%nparam
203 if (export_pkg%param_reads(iparam)%invar < 1) cycle
208 export_pkg%mf6_input%component_type, &
209 export_pkg%mf6_input%subcomponent_type, &
210 'PERIOD', export_pkg%param_names(iparam),
'')
213 nc_tag = this%input_attribute(export_pkg%mf6_input%subcomponent_name, &
217 select case (idt%datatype)
219 call mem_setptr(int1d, idt%mf6varname, export_pkg%mf6_input%mempath)
220 this%var_ids%export(1) = export_pkg%varids_param(iparam, 1)
221 call nc_export_int1d(int1d, this%ncid, this%dim_ids, this%var_ids, &
222 this%disv, idt, export_pkg%mf6_input%mempath, &
223 nc_tag, export_pkg%mf6_input%subcomponent_name, &
224 this%gridmap_name, this%deflate, this%shuffle, &
225 this%chunk_face,
kper, this%nc_fname)
227 call mem_setptr(dbl1d, idt%mf6varname, export_pkg%mf6_input%mempath)
228 select case (idt%shape)
230 this%var_ids%export(1) = export_pkg%varids_param(iparam, 1)
231 call nc_export_dbl1d(dbl1d, this%ncid, this%dim_ids, this%var_ids, &
232 this%disv, idt, export_pkg%mf6_input%mempath, &
233 nc_tag, export_pkg%mf6_input%subcomponent_name, &
234 this%gridmap_name, this%deflate, this%shuffle, &
235 this%chunk_face,
kper, iaux, this%nc_fname)
237 nvals = this%disv%nodesuser
238 allocate (nodes(nvals))
240 do k = 1, this%disv%nlay
241 this%var_ids%export(k) = export_pkg%varids_param(iparam, k)
243 call mem_setptr(dbl1d, idt%mf6varname, export_pkg%mf6_input%mempath)
244 call mem_setptr(int1d,
'NODEULIST', export_pkg%mf6_input%mempath)
245 call mem_setptr(nbound,
'NBOUND', export_pkg%mf6_input%mempath)
247 nodes(int1d(n)) = dbl1d(n)
249 call nc_export_dbl1d(nodes, this%ncid, this%dim_ids, this%var_ids, &
250 this%disv, idt, export_pkg%mf6_input%mempath, &
251 nc_tag, export_pkg%mf6_input%subcomponent_name, &
252 this%gridmap_name, this%deflate, this%shuffle, &
253 this%chunk_face,
kper, iaux, this%nc_fname)
258 call mem_setptr(dbl2d, idt%mf6varname, export_pkg%mf6_input%mempath)
259 select case (idt%shape)
261 nvals = this%disv%ncpl
262 allocate (nodes(nvals))
263 do iaux = 1,
size(dbl2d, dim=1)
264 this%var_ids%export(1) = export_pkg%varids_aux(iaux, 1)
266 nodes(n) = dbl2d(iaux, n)
268 call nc_export_dbl1d(dbl1d, this%ncid, this%dim_ids, this%var_ids, &
269 this%disv, idt, export_pkg%mf6_input%mempath, &
270 nc_tag, export_pkg%mf6_input%subcomponent_name, &
271 this%gridmap_name, this%deflate, this%shuffle, &
272 this%chunk_face,
kper, iaux, this%nc_fname)
276 nvals = this%disv%nodesuser
277 allocate (nodes(nvals))
278 call mem_setptr(int1d,
'NODEULIST', export_pkg%mf6_input%mempath)
279 call mem_setptr(nbound,
'NBOUND', export_pkg%mf6_input%mempath)
280 do iaux = 1,
size(dbl2d, dim=1)
282 do k = 1, this%disv%nlay
283 this%var_ids%export(k) = export_pkg%varids_aux(iaux, k)
286 nodes(int1d(n)) = dbl2d(iaux, n)
288 call nc_export_dbl1d(nodes, this%ncid, this%dim_ids, this%var_ids, &
289 this%disv, idt, export_pkg%mf6_input%mempath, &
290 nc_tag, export_pkg%mf6_input%subcomponent_name, &
291 this%gridmap_name, this%deflate, this%shuffle, &
292 this%chunk_face,
kper, iaux, this%nc_fname)
303 call nf_verify(nf90_sync(this%ncid), this%nc_fname)
This module contains the DefinitionSelectModule.
type(inputparamdefinitiontype) function, pointer, public get_param_definition_type(input_definition_types, component_type, subcomponent_type, blockname, tagname, filename)
Return parameter definition.
This module contains the NCModelExportModule.
integer(i4b), pointer, public kper
current stress period number