dia: Wrapper function to perform the DIA analysis

View source: R/dia.R

diaR Documentation

Wrapper function to perform the DIA analysis

Description

The dia function is a wrapper that implements the overall Development Impacts Analysis (DIA) model (see Fullman et al. in press for details). The code below is designed to analyze the proposed development alternatives in BLM (2019a), as well as one community-generated proposal (see Fullman et al. in press). It can, however, be adapted to other development scenarios. Infrastructure simulation and species impact analyses can be run individually or jointly.

Usage

dia(
  wd.loc = getwd(),
  scenario,
  simulate.inf = TRUE,
  n.iter = 100,
  n.cpf = c(3, 7),
  d2cpf = 35000,
  maxd2sat = 56327,
  mind2sat = 6437.4,
  n.sat = c(4, 8),
  rd.exist.file = NULL,
  pad.exist.file = NULL,
  oil.av.file = NULL,
  cost.map.file = NULL,
  pad.res.files = NULL,
  road.res.files = NULL,
  alt.b.rd.stranded.res.file = NULL,
  alt.b.stranded.lease.file = NULL,
  alt.c.row.file = NULL,
  alt.d.north.file = NULL,
  npra.file = NULL,
  tch.raster = NULL,
  wah.raster = NULL,
  shorebird.raster = NULL,
  shorebird.threshold = NULL,
  brant.shp = NULL,
  zoi = 4000,
  land.dist = 2835.64,
  heli.disturb = 3570,
  proximity.effect = 100,
  proj.info = "EPSG:6393",
  path.in = "Input_Data",
  path.out = "Output_Data",
  caribou.out = FALSE,
  suppress.rgdal.proj4.warnings = TRUE,
  n.cores = parallel::detectCores(),
  debug.out = FALSE,
  completion.sound = NULL
)

Arguments

wd.loc

Character string identifying the base directory containing both input and output data folders. Defaults to the current working directory, identified by base::getwd.

scenario

vector of character strings identifying the names of the scenarios to be run.

simulate.inf

Logical indicator of whether infrastructure simulation should be conducted. Defaults to TRUE.

n.iter

Integer indicating the desired number of iterations to be run for each scenario. Defaults to 100.

n.cpf

Indicator of the desired number of central processing facilities (CPFs) to be generated. This can either be a single integer value, indicating a fixed number of CPFs to be used in all iterations, or a range, c(min,max), from which a random value will be drawn using a uniform distribution. Defaults to c(3,7) to reflect a reasonable range of potential variability, depending on the number and distribution of undiscovered oil deposits.

d2cpf

Numeric value indicating the minimum allowed distance (m) between two CPFs. Defaults to 35,000 m.

maxd2sat

Numeric value indicating the maximum allowed distance (m) from a CPF to an associated satellite production pad. Defaults to 56,327 m based on BLM (2019c) p.B-9.

mind2sat

Numeric value indicating the minimum allowed distance (m) between two satellite production pads, or a CPF and associated satellite production pad. Defaults to 6437.4 m, similar to what is seen in BLM (2019b).

n.sat

Desired number of satellite pads per CPF. This can either be fixed or a range, c(min,max), from which a random value will be drawn for each iteration using a uniform distribution. Defaults to c(4, 8) satellites per CPF.

rd.exist.file

Character string indicating the file name for the shapefile depicting existing roads as lines. Optional, allowing the code to be run without infrastructure generation. However, if infrastructure generation is desired (i.e., simulate.inf = TRUE), then this is required.

pad.exist.file

Character string indicating the file name for the shapefile depicting existing CPF and satellite pads as points. Optional, allowing the code to be run without infrastructure generation. However, if simulate.inf = TRUE, then this is required.

oil.av.file

Character string indicating the file name for the relative expected undiscovered oil raster. Optional, allowing the code to be run without infrastructure generation. However, if simulate.inf = TRUE, then this is required.

cost.map.file

Character string indicating the file name for the cost map raster, which depicts water areas coded as 0 and land as 1. Optional, allowing the code to be run without infrastructure generation. However, if simulate.inf = TRUE, then this is required.

pad.res.files

Character string indicating the file names for the rasters indicating scenario-specific restrictions for pad (i.e., CPF and satellite pad) placement. Values may consist of 0, 0.1, or 1. The length and order of this object must match that of scenario. Optional, allowing the code to be run without infrastructure generation. However, if simulate.inf = TRUE, then this is required.

road.res.files

Character string indicating the file names for the rasters indicating scenario-specific restrictions for road placement. Values may consist of 0, 0.1, or 1. The length and order of this object must match that of scenario. Optional, allowing the code to be run without infrastructure generation. However, if simulate.inf = TRUE, then this is required.

alt.b.rd.stranded.res.file

Character string indicating the file name for the road development restriction raster for stranded leases (i.e., those completely surrounded by areas closed to leasing) under Alternative B. Optional, allowing the code to be run without infrastructure generation or for scenarios other than Alternative B. However, if Alternative B is to be run this must be specified.

alt.b.stranded.lease.file

Character string indicating the file name for the raster identifying stranded leases under Alternative B. Optional, allowing the code to be run without infrastructure generation or for scenarios other than Alternative B. However, if Alternative B is to be run this must be specified.

alt.c.row.file

Character string indicating the file name for the raster identifying right-of-way (ROW) areas under Alternative C where infield roads are prohibited but connecting infrastructure is allowed (see BLM 2019a for details). Optional, allowing the code to be run without infrastructure generation or for scenarios other than Alternative C. However, if Alternative C is to be run this must be specified.

alt.d.north.file

Character string indicating the file name for the raster identifying discrete areas north of Teshekpuk Lake where roadless development is possible under Alternative D (see BLM 2019a for details). Optional, allowing the code to be run without infrastructure generation or for scenarios other than Alternative D. However, if Alternative D is to be run this must be specified.

npra.file

Character string indicating the file name of the NPR-A boundary shapefile. Used for calculating the infrastructure summary. Optional, allowing the code to be run without the impact analysis. However, if the impact analysis is desired this must be specified.

tch.raster

Character string indicating the Teshekpuk Caribou Herd (TCH) calving raster file name. Optional, allowing the analysis to be run without the TCH or without any impact analyses. Failure to specify this or wah.raster means the caribou impact analysis will not be run.

wah.raster

Vector of two character strings indicating Western Arctic Herd (WAH) raster file names. The first should specify the calving resource selection function (RSF) raster, the second the weighting raster. See Fullman et al. (in press) for details. Optional, allowing the analysis to be run without the WAH or without any impact analyses. Failure to specify this or tch.raster means the caribou impact analysis will not be run.

shorebird.raster

Vector of character strings indicating shorebird habitat suitability index (HSI) raster file names. Each should be for a different species. Optional, allowing the analysis to be run without shorebirds or without any impact analyses. Failure to specify this means the shorebird impact analysis will not be run.

shorebird.threshold

Vector of numeric values indicating species-specific thresholds defining what shorebird HSI values equate to suitable versus unsuitable habitat (Saalfeld et al 2013). Values should range between 0-1. Optional, only used if a vector is given for shorebird.raster. Order of threshold values must be the same as the order of species in shorebird.raster.

brant.shp

Character string indicating the name of the brant lakes shapefile, without file extension. Optional, allowing the analysis to be run without brant analyses or without any impact analyses. Failure to specify this means the brant impact analysis will not be run.

zoi

Numeric value indicating the zone of influence (m) for calculation of the surface disturbance buffer and caribou displacement. Defaults to 4000 m, following Cameron et al. (2005) and Wilson et al. (2013).

land.dist

Numeric value indicating the distance (m) from CPF or satellite pads at which helicopters are expected to be under 500 m altitude, based on a descent angle of 10 degrees following FAA guidelines. Used to determine helicopter impact areas around CPFs and satellite pads in the brant impact analysis. Defaults to 2835.64 m based on the assumption that a helicopter approaching a landing zone at a 10 degree descent angle reaches a 500 m altitude at 500m / tan(10 deg) = 2835.64 m out from the landing zone.

heli.disturb

Numeric value indicating the distance (m) from helicopters (under 500 m altitude) at which molting brant are expected to be disturbed. Defaults to 3570 m based on Jensen (1990) and Miller et al. (1994).

proximity.effect

Numeric value indicating the distance (m) at which birds are disturbed by infrastructure proximity effects (e.g., dust deposition). Defaults to 100 m as a conservative estimate.

proj.info

Desired projection string in EPSG code format ("EPSG:XXXX"), common to all spatial objects in the analysis.

path.in

Character string identifying the relative path from the base directory (wd.loc) to where input data are stored. Defaults to an "Input_Data" folder within the base folder.

path.out

Character string identifying the relative path from the base directory (wd.loc) to where output data will be saved. Defaults to an "Output_Data" folder within the base folder.

caribou.out

Logical indicator of whether the resulting discounted caribou RSF raster(s) should be written out. Defaults to FALSE.

suppress.rgdal.proj4.warnings

Logical indicator of whether rgdal warnings about discarded datums in coordinate reference system definitions should be suppressed. These are simply to warn developers about the switch from proj4string to WKT CRS specification, but generate many unnecessary warnings in the dia code. Defaults to TRUE, indicating that warnings will be suppressed.

n.cores

Integer value, indicating the number of cores to be used for parallel processing. Defaults to the total number of available cores, as determined by parallel::detectCores(). In situations where RAM is limiting, however, it may be helpful to reduce the number of cores used to run parallel iterations.

debug.out

Logical indicator of whether intermediate infrastructure .csv files should be written out for the purpose of debugging code. Defaults to FALSE.

completion.sound

Indication of whether the computer should make a sound when the model run is complete and, if so, which sound to play. Defaults to no sound (NULL). Valid inputs are integers corresponding to the sound argument options for beep.

Details

Prior to running dia the user must create a path.out/RData folder to contain output results. Failure to do this will result in an error.

dia is set up to address discrepancies in spatial object projection, but is not designed to deal with misaligned extent or cell size of Raster* input data. Prior to using dia, the user should perform initial preparation to ensure any raster files have the same extent and resolution. For tools to address such data preparation, see the raster package.

To speed up analyses, code is run in parallel. However, infrastructure simulation can be memory intensive, causing code to fail if all available cores are used in parallel processing and if simulate.inf = TRUE. If this occurs, it is advisable to reduce n.cores. In tests on our high performance modeling computer, we found modifying n.cores so that there were about 6.5 GB available RAM per core yielded a good compromise, though further testing is needed and this may vary widely across systems and configurations.

Value

Nothing is directly returned by dia. However, if simulate.inf = TRUE then .csv files, shapefiles, and an .RData file containing the results of the infrastructure simulation will be written to path.out. If any of the species impact analyses are run, a .csv file containing the infrastructure summary and species-specific impact results will be written to path.out. Regardless, the run times for each iteration are saved in an .RData file and the overall model run time is saved as a .csv file.

References

BLM [Bureau of Land Management] 2019a. National Petroleum Reserve in Alaska Draft Integrated Activity Plan and Environmental Impact Statement. Bureau of Land Management, U.S. Department of the Interior, Anchorage, AK, USA.

BLM 2019b. Willow Master Development Plan Draft Environmental Impact Statement. Bureau of Land Management, U.S. Department of the Interior. Anchorage, AK, USA.

BLM 2019c. Arctic National Wildlife Refuge Coastal Plain Oil and Gas Leasing Program Final Environmental Impact Statement. Bureau of Land Management, U.S. Department of the Interior, Anchorage, AK, USA.

Cameron RD, Smith WT, White RG, Griffith B. 2005. Central Arctic caribou and petroleum development: Distributional, nutritional, and reproductive implications. Arctic 58:1-9.

Fullman TJ, Sullender BK, Cameron MD, Joly K. in press. Simulation modeling accounts for uncertainty while quantifying ecological effects of development alternatives. Ecosphere.

Jensen KC. 1990. Responses of molting Pacific black brant to experimental aircraft disturbance in the Teshekpuk Lake Special Area, Alaska. Ph.D. Thesis, Texas A&M University. College Station, TX, USA.

Miller MW, Jensen KC, Grant WE, Weller MW. 1994. A simulation model of helicopter disturbance of molting Pacific black brant. Ecological Modelling 73:293-309.

Saalfeld ST, Lanctot RB, Brown SC, Saalfeld DT, Johnson JA, Andres BA, Bart JR. 2013. Predicting breeding shorebird distributions on the Arctic Coastal Plain of Alaska. Ecosphere 4:16.

Wilson RR, Liebezeit JR, Loya WM. 2013. Accounting for uncertainty in oil and gas development impacts to wildlife in Alaska. Conservation Letters 6:350-358.

Examples

## Not run: 
  dia(wd.loc="C:/DIA", scenario=c("Alt_Aplus", "Alt_A", "Alt_B", "Alt_C", "Alt_D"),
    rd.exist.file="NPRA_existing_roads", pad.exist.file="NPRA_existing_pads",
    oil.av.file="NPRA_oil_MMBO_Mean_per_pix.tif", cost.map.file="costmap_base.tif",
    pad.res.files=c("AltAplus_restrictions_pad.tif", "AltA_restrictions_pad.tif",
      "AltB_restrictions_pad.tif", "AltC_restrictions_pad.tif",
      "AltD_restrictions_pad.tif"),
    road.res.files=c("AltAplus_restrictions_road.tif", "AltA_restrictions_road.tif",
      "AltB_restrictions_road.tif", "AltC_restrictions_road.tif",
      "AltD_restrictions_road.tif"),
    npra.file="NPRA_Boundary", tch.raster="tch_calving.tif",
    wah.raster=c("WAH_calving.tif", "WAH_calving_overlap_weight.tif"),
    shorebird.raster=c("SESA_HSI_NPRA.tif", "AMGP_HSI_NPRA.tif", "BBPL_HSI_NPRA.tif",
      "DUNL_HSI_NPRA.tif", "LBDO_HSI_NPRA.tif", "PESA_HSI_NPRA.tif",
      "REPH_HSI_NPRA.tif", "RNPH_HSI_NPRA.tif"),
    shorebird.threshold=c(0.06, 0.56, 0.31, 0.05, 0.05, 0.13, 0.05, 0.62),
    brant.shp="Lakes_W_Data", n.cores = 30, completion.sound=4)

## End(Not run)

tfullman/dia documentation built on Oct. 17, 2023, 6:31 p.m.