getRatingPoints: Calculate discharge according to the Strickler formula

Description Usage Arguments Details Value Note Author(s) References Examples

View source: R/getRatingPoints.R

Description

For a given open channel profile defined by z in the vertical, x in the horizontal, slope m, and Strickler value k, streamflow velocity is calculated for the water levels l according to the Strickler formula

v = k*R^(2/3)*m^(1/2)

with hydraulic radius R = area/radius.

Usage

1
getRatingPoints(z, x, k, m, l, plot = FALSE)

Arguments

z

numeric vector. Altitude [m] with respect to e.g. sea level or any other reference point.

x

numeric vector. Points along the channel profile where z was measured [m].

k

real number or numeric vector. Defines the Strickler value(s) [m^(1/3)/s]. In case of a vector, k should have the same length as z and x and gets linearly interpolated.

m

real number. Slope of the river bed perpendicular to the channel profile, m = tan(α).

l

numeric vector. Positive water levels [m] for which the corresponding discharge should be calculated.

plot

logical. Plot the channel profile?

Details

The reference point for water levels l is defined as the point in x where z reaches its minimum.

Value

Numeric matrix with columns water 'level' [m], profile 'area' below the water table [m^2], wet profile 'radius' [m], interpolated 'k', streamflow 'velocity' [m/s], and 'discharge' [m^3/s].

Note

The Strickler formula is also known as Manning or Gauckler formula.

Author(s)

Original code provided by Alain B.

References

Strickler, A. (1924). "Beitraege zur Frage der Geschwindigkeitsformel und der Rauigkeitszahlen fuer Stroeme, Kanaele und geschlossene Leitungen". Schweizerische Bauzeitung, Heft 23.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
## quadratic profile
z <- c(10,0,0,10)
x <- c(0,0,10,10)
k <- sample(0:100,size=length(z))
m <- 0.03
l <- 1:10
pq <- getRatingPoints(z=z,x=x,k=k,m=m,l=l,plot=TRUE)
print(pq)
plot(x=pq[,'level'],y=pq[,'discharge'])

## trapezoid
z <- c(2,0,0,2)
x <- c(1,3,4,6)
k <- 30
m <- 0.1
l <- seq(0,1.5,by=0.2)
pq <- getRatingPoints(z=z,x=x,k=k,m=m,l=l,plot=TRUE)
print(pq)
plot(x=pq[,'level'],y=pq[,'discharge'])

## 'natural' channel
z <- c(9,9,9,10,9,8,7,6,7,8,7,6,5,4,3,4,5,6,5,4,1,4,5,6,7,8,9,8,7,8,8)
x <- c(1:25,23:28)
k <- sample(0:100,size=length(z))
m <- 0.03
l <- 1:13
pq <- getRatingPoints(z=z,x=x,k=k,m=m,l=l,plot=TRUE)
print(pq)
plot(x=pq[,'level'],y=pq[,'discharge'])

hydro-giub/hydroBE documentation built on Sept. 20, 2019, 9:27 a.m.