en:hydro:nash
- en
- en
Nash-Cascade
The Nash cascade is a sequence of $N$ linear stores in series, each having a residence time of $K$ time units. The resulting mathematical form of the Nash-cascade is:
$$h(t) = (t/K)^{N-1}*exp\left(\frac{-t/K}{K*\Gamma(N)}\right)$$
where $h(t)$ is the unit hydrograph in terms of a unit discharge and $\Gamma$ is the gamma function $\gamma(N)=(N-1)!$ for integer values $N$. $N$ can also have rational values.
- |Nash.R
n <- 3 k <- 0.2 ks <- 0.1 kl <- 0.3 x <- seq(0.1,3,by=0.05) y <- 1/(k*gamma(n))*(x/k)^(n-1)*exp(-x/k) plot(x,y,col=2, xlab= " ", ylab="Q", xlim=range(0:3), ylim=range(0:3)) abline( h = seq( 5, 25, 5 ),lty = 2,col = colors()[440]) abline( v = seq( 1, 4, 1 ),lty = 2,col = colors()[440]) curve(1/(ks*gamma(n))*(x/ks)^(n-1)*exp(-x/ks), add = TRUE, col="blue") curve(1/(k *gamma(n))*(x/k )^(n-1)*exp(-x/k ), add = TRUE, col="red") curve(1/(kl*gamma(n))*(x/kl)^(n-1)*exp(-x/kl), add = TRUE, col="green")
- |Nash.py
from pylab import * from scipy import * from math import * from numpy import * N = 5 k = 0.5 t = arange(0.0, 100, 1) def Nash(t,N,k): h = (t/k)**(N-1)*exp((-t/k)/(k*gamma(N))) return h plot(t, Nash(t,N,k)) xtext = xlabel('time') ytext = ylabel('response') setp(xtext, size='medium', name='courier', weight='bold', color='g') setp(ytext, size='medium', name='helvetica', weight='light', color='b') show()
Model in R: Nash-Kaskade mit Shiny/R Studio in HTML
/usr/www/users/uhydro/doku/data/pages/en/hydro/nash.txt · Last modified: 2024/04/10 10:02 by 127.0.0.1