rmf_create_lpf creates an RMODFLOW lpf object.

rmf_create_lpf(
  dis,
  ilpfcb = 0,
  hdry = -888,
  storagecoefficient = FALSE,
  constantcv = FALSE,
  thickstrt = FALSE,
  nocvcorrection = FALSE,
  novfc = FALSE,
  noparcheck = FALSE,
  laytyp = rmfi_ifelse0(dis$nlay == 1, 1, c(1, rep(0, dis$nlay - 1))),
  layavg = rep(0, dis$nlay),
  chani = rep(1, dis$nlay),
  layvka = rep(0, dis$nlay),
  laywet = rep(0, dis$nlay),
  wetfct = 0.1,
  iwetit = 1,
  ihdwet = 0,
  parameters = NULL,
  hk = rmf_create_array(1e-04, dim = c(dis$nrow, dis$ncol, dis$nlay)),
  hani = rmfi_ifelse0(all(chani <= 0), hk * 0 + 1, NULL),
  vka = rmfi_ifelse0(all(layvka == 0), hk, NULL),
  ss = rmfi_ifelse0("TR" %in% dis$sstr, hk * 0 + 1e-05, NULL),
  sy = rmfi_ifelse0("TR" %in% dis$sstr && any(laytyp > 0), hk * 0 + 0.15, NULL),
  vkcb = NULL,
  wetdry = NULL
)

Arguments

dis

RMODFLOW dis object

ilpfcb

flag and unit number for writing cell-by-cell flow terms; defaults to 0

hdry

head assigned to cells that are converted to dry cells; defaults to -888

storagecoefficient

logical; should STORAGECOEFFICIENT keyword be included?; defaults to FALSE

constantcv

logical; should CONSTANTCV keyword be included?; defaults to FALSE

thickstrt

logical; should THICKSTRT keyword be included?; defaults to FALSE

nocvcorrection

logical; should NOCVCORRECTION keyword be included?; defaults to FALSE

novfc

logical; should NOVFC keyword be included?; defaults to FALSE

noparcheck

logical; should NOPARCHECK keyword be included?; defaults to FALSE

laytyp

vector of flags for each layer, specifying layer type; defaults to all confined (0) except the first layer (1)

layavg

vector of flags for each layer, specifying interblock transmissivity calculation method; defaults to 0 for each layer

chani

vector of flags or horizontal anisotropies for each layer; defaults to 1 for each layer

layvka

vector of flags for each layer, indicating whether vka is the vertical hydraulic conductivity or the ratio of horizontal to vertical; defaults to 0 for each layer

laywet

vector of flags for each layer, indicating if wetting is active; defaults to 0 for each layer

wetfct

is a factor that is included in the calculation of the head that is initially established at a cell when it is converted from dry to wet; defaults to 0.1

iwetit

is the iteration interval for attempting to wet cells; defaults to 1

ihdwet

is a flag that determines which equation is used to define the initial head at cells that become wet; defaults to 0

parameters

list of rmf_parameter as created by rmf_create_parameter. See details; defaults to NULL

hk

3d array with hydraulic conductivity along rows; defaults to 1. If not read for a specific layer, set all values in that layer to NA.

hani

3d array with the ratio of hydraulic conductivity along columns to that along rows; defaults to 1. If not read for a specific layer, set all values in that layer to NA.

vka

3d array with vertical hydraulic conductivity or the ratio of horizontal to vertical; defaults to hk. If not read for a specific layer, set all values in that layer to NA.

ss

3d array with specific storage; only required when there are transient stress periods; defaults to 1E-5. If not read for a specific layer, set all values in that layer to NA.

sy

3d array with specific yield; only required when there are transient stress periods; defaults to 0.15. If not read for a specific layer, set all values in that layer to NA.

vkcb

3d array with vertical hydraulic conductivity of quasi-three-dimensional confining beds; defaults to NULL. If not read for a specific layer, set all values in that layer to NA.

wetdry

3d array with a wetting threshold and flag indicating which neighboring cells can cause a cell to become wet; defaults to NULL. If not read for a specific layer, set all values in that layer to NA.

Value

Object of class lpf

Details

Flow variables are any of HK, HANI, VK, VANI, SS, SY and VKCB. A single variable can be specified either through the use of parameters or by using direct array input. When a flow variable for a specific layer is specified using parameters, all flow variables of the type must be specified by parameters. E.g. if a flow parameter defines HK for layer 1, HK must be defined for all layers using flow parameters instead of direct array input.

See also