HOMEIMPRESSUMuhydro

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
hydro:brooks-corey [2017/06/16 23:58]
ckuells
hydro:brooks-corey [2018/08/12 23:37] (aktuell)
ckuells angelegt
Zeile 1: Zeile 1:
-~~NOTRANS~~+
 ====== Brooks-Corey Funktion ====== ====== Brooks-Corey Funktion ======
  
 Die Brooks Corey Funktion stellt eine Beziehung zwischen Bodenfeuchte oder Sättigung einerseits und der Saugspannung andererseits her: Die Brooks Corey Funktion stellt eine Beziehung zwischen Bodenfeuchte oder Sättigung einerseits und der Saugspannung andererseits her:
  
-$$ +$$ \frac{\theta-\theta_r}{\theta_s-\theta_r} = {\left[\frac{\psi_0}{\psi}\right]}^\lambda$$
-\frac{\theta-\theta_r}{\theta_s-\theta_r} = {\left[\frac{\psi_0}{\psi}\right]}^\lambda+
  
-mit den Parametern+mit den Parametern ​$\thetaBodenfeuchte, $\theta_sSättigungs-Bodenfeuchte, $\theta_rRest-Bodenfeuchte, $\psi_0Lufteintrittspunkt, $\psiSaugspannung,​ Kapillarspannung.
- +
-\begin{tabular}{ll} +
-  ​\theta ​Bodenfeuchte ​\\ +
-  ​\theta_s ​Sättigungs-Bodenfeuchte ​\\ +
-  ​\theta_r ​Rest-Bodenfeuchte ​\\ +
-  ​\psi_0 ​Lufteintrittspunkt ​\\ +
-  ​\psi Saugspannung,​ Kapillarspannung ​\\ +
-\end{tabular} +
-$$+
  
 Die ungesättigte Leitfähigkeit wird nach Brooks-Corey durch folgende Beziehung dargestellt:​ Die ungesättigte Leitfähigkeit wird nach Brooks-Corey durch folgende Beziehung dargestellt:​
  
-$$ +$$ \frac{K({\theta})}{K_s} = {\left[{\frac{\theta-\theta_r}{\theta_s-\theta_r}}\right]}^{3+2*\lambda}$$
-\frac{K({\theta})}{K_s} = {\left[{\frac{\theta-\theta_r}{\theta_s-\theta_r}}\right]}^{3+2*\lambda} +
- +
-mit den Parametern:+
  
-\begin{tabular}{ll} +mit den Parametern $K_\thetaungesättigte Bodenfeuchte, $K_sgesättigte Bodenfeuchte, $\lambdaPorengrößenindex.
-  ​K_\theta ​ungesättigte Bodenfeuchte ​\\ +
-  ​K_s gesättigte Bodenfeuchte ​\\ +
-  ​\lambda ​Porengrößenindex ​\\ +
-\end{tabular} +
-$$+
  
 <code S+ | Brooks-Corey.R>​ <code S+ | Brooks-Corey.R>​
  
 # Brooks-Corey (1966) # Brooks-Corey (1966)
-th <- seq(0.05,​0.4,​0.005) ​# Bodenfeuchte +brookscorey <- function(theta,​tred,​tmax,​ksat,​pi){ 
-tr <- 0.05            # Restfeuchte +# Standard values 
-tm <- 0.40            ​# maximale Feuchte +ths <- seq(0.05,​0.4,​0.005) 
-Ks <- 1E-5            # hydraul. Leitfähigkeit in m/s +trs <- 0.035 
-ip <- 0.1           # pore size index+tms <- 0.45                ​# maximale Feuchte 
 +kss <- 1E-5                # hydraul. Leitfähigkeit in m/s 
 +ips <- 0.2                 # pore size index 
 +# Define values 
 +if (is.null(theta)) { 
 +        theta <- ths       # Default Bodenfeuchte 
 +  } 
 +if (is.null(tred)) ​ { 
 +        tred <- trs        # Default Restfeuchte 
 +  } 
 +if (is.null(tmax)) ​ { 
 +        tmax <- tms        # Default max. Feuchte 
 +  } 
 +if (is.null(ksat)) ​ { 
 +        ksat <- kss        # Default Durchlaessigkeit 
 +  } 
 +if (is.null(pi)) ​   { 
 +        pi <- ips          # Default Porenindex 
 +  } 
 +# Calculate unsaturated hydraulic conductivity 
 +Se <- (theta-tred)/​(tmax-tred) ​  
 +if ((Se < 0) || (Se > 1)) { 
 +       ​result <- "Error in the definition of moisture."​ 
 +       } 
 +else{ 
 +  kunsat <- Se^(2+3*pi) 
 +  if (is.null(kunsat)) { 
 +     
 +                result <- "Error in calculation of unsaturated conductivity."​ 
 +            } 
 +  else{ 
 +    ratio  <- Se^(2+3*pi) 
 +    kunsat <- ratio * ksat 
 +    result <- list(Se,​ratio,​kunsat)} 
 +  } 
 +return(result) ​    
 +}
  
-Se <- (th-tr)/(tm-tr)+#Test 
 +unsat <- brookscorey(0.25,​0.05,​0.4,​1E-4,0.1)
  
-ps0<- 0.015            ​Lufteintrittspunkt:​ cm +Values 
-psa<- seq(0.015,1E+4)# Saugspannung ​in cm+ths <- seq(0.05,0.4,0.005) 
 +trs <- 0.045 
 +tms <- 0.45                ​maximale Feuchte 
 +kss <- 1E-5                # hydraul. Leitfähigkeit ​in m/s 
 +ips <- 0.2                 # pore size index
  
-S  ​<- (ps0/psa)^ip+unsat <- brookscorey(ths,​trs,​tms,​kss,​ips) 
 +Se <- unsat[[1]] 
 +ku <- unsat[[3]]
  
-plot(S,psa)+plot(Se,ku)
  
 </​code>​ </​code>​