Learn R Programming

boussinesq (version 1.0.3)

beq.lin: Analytic exact solution for One-Dimensional Boussinesq Equation in a two-bounded domain with two constant-value Dirichlet Condition

Description

Analytic exact solution for One-Dimensional Boussinesq Equation in a two-bounded domain with two constant-value Dirichlet Condition

Usage

beq.lin(t = 0, x = seq(from = 0, to = L, by = by), h1 = 1, h2 = 1, L = 100, ks = 0.01, s = 0.4, big = 10^7, by = L/100, p = 0.5)

Arguments

t
time coordinate.
x
spatial coordinate. Default is seq(from=0,to=L,by=by).
big
maximum level of Fourier series considered. Default is 10^7.
by
see seq
L
length of the domain.
h1
water surface level at x=0. Left Dirichlet Bounday Condition.
h2
water surface level at x=L. Right Dirichlet Bondary Condition.
ks
Hydraulic conductivity
s
drainable pororosity (assumed to be constant)
p
empirical coefficient to estimate hydraulic diffusivity $D=ks/(s *(p*h1+(1-p)*h2))$. It ranges between 0 and 1.

Value

Solutions for the indicated values of x and t.

See Also

beq.lin.dimensionless

Examples

Run this code
L <- 1000
x <- seq(from=0,to=L,by=L/100)
t <- 4 # 4 days
h_sol0 <- beq.lin(x=x,t=t*24*3600,h1=2,h2=1,ks=0.01,L=L,s=0.4,big=100,p=0.0)
h_solp <- beq.lin(x=x,t=t*24*3600,h1=2,h2=1,ks=0.01,L=L,s=0.4,big=100,p=0.5)
h_sol1 <- beq.lin(x=x,t=t*24*3600,h1=2,h2=1,ks=0.01,L=L,s=0.4,big=100,p=1.0)

plot(x,h_sol0,type="l",lty=1,main=paste("Water Surface Elevetion after",t,"days",sep=" "),xlab="x[m]",ylab="h[m]")
lines(x,h_solp,lty=2)
lines(x,h_sol1,lty=3)
legend("topright",lty=1:3,legend=c("p=0","p=0.5","p=1"))

Run the code above in your browser using DataLab