openSTARS (version 1.0.0)

calc_prediction_sites: Calculate prediction sites for 'SSN' object.

Description

A vector (points) map of prediction sites is created and several attributes are assigned.

Usage

calc_prediction_sites(predictions, dist = NULL, nsites = 10,
  netIDs = NULL)

Arguments

predictions

string giving the name for the prediction sites map.

dist

number giving the distance between the points to create in map units.

nsites

integer giving the approximate number of sites to create

netIDs

integer (optional): create prediction sites only on streams with these netID(s).

Details

Either dist or nsites must be provided. If dist is NULL, it is estimated by dividing the total stream length in the map by nsites; the number of sites actually derived might therefore be a bit smaller than nsites.

Steps include:

  • Place points on edges with given distance form each other

  • Assign unique identifiers (needed by the 'SSN' package) 'pid' and 'locID'.

  • Get 'rid' and 'netID' of the stream segment the site intersects with (from map 'edges').

  • Calculate upstream distance for each point ('upDist').

  • Calculate distance ratio ('distRatio') between position of the site on the edge (= distance traveled from lower end of the edge to the site) and the total length of the edge.

'pid' and 'locID' are identical, unique numbers. 'upDist' is calculated using r.stream.distance. Points are created using v.segment.

Examples

Run this code
# NOT RUN {
# Initiate GRASS session
if(.Platform$OS.type == "windows"){
  gisbase = "c:/Program Files/GRASS GIS 7.2.0"
  } else {
  gisbase = "/usr/lib/grass72/"
  }
initGRASS(gisBase = gisbase,
    home = tempdir(),
    override = TRUE)

# Load files into GRASS
dem_path <- system.file("extdata", "nc", "elev_ned_30m.tif", package = "openSTARS")
sites_path <- system.file("extdata", "nc", "sites_nc.shp", package = "openSTARS")
setup_grass_environment(dem = dem_path, sites = sites_path)
import_data(dem = dem_path, sites = sites_path)
gmeta()

# Derive streams from DEM
derive_streams(burn = 0, accum_threshold = 700, condition = TRUE, clean = TRUE)

calc_edges()
calc_sites()
calc_prediction_sites(predictions = "preds", dist = 2500)

dem <- readRAST('dem', ignore.stderr = TRUE)
sites <- readVECT('sites', ignore.stderr = TRUE)
preds <- readVECT('preds', ignore.stderr = TRUE)
edges <- readVECT('edges', ignore.stderr = TRUE)
plot(dem, col = terrain.colors(20))
lines(edges, col = 'blue', lwd = 2)
points(sites, pch = 4)
points(preds, pch = 19, col = "steelblue")
# }

Run the code above in your browser using DataCamp Workspace