Пример #1
0
def PlotProps(pars):
    import numpy as np
    import pylab as pl
    import vanGenuchten as vg
    psi = np.linspace(-10, 2, 200)
    pl.figure
    pl.subplot(3, 1, 1)
    pl.plot(psi, vg.thetaFun(psi, pars))
    pl.ylabel(r'$\theta(\psi) [-]$')
    pl.subplot(3, 1, 2)
    pl.plot(psi, vg.CFun(psi, pars))
    pl.ylabel(r'$C(\psi) [1/m]$')
    pl.subplot(3, 1, 3)
    pl.plot(psi, vg.KFun(psi, pars))
    pl.xlabel(r'$\psi [m]$')
    pl.ylabel(r'$K(\psi) [m/d]$')
Пример #2
0
def PlotProps(pars):
  import numpy as np
  import pylab as pl
  import vanGenuchten as vg
  psi=np.linspace(-10,2,200)
  pl.figure
  pl.subplot(3,1,1)
  pl.plot(psi,vg.thetaFun(psi,pars))
  pl.ylabel(r'$\theta(\psi) [-]$')
  pl.subplot(3,1,2)
  pl.plot(psi,vg.CFun(psi,pars))
  pl.ylabel(r'$C(\psi) [1/m]$')
  pl.subplot(3,1,3)
  pl.plot(psi,vg.KFun(psi,pars))
  pl.xlabel(r'$\psi [m]$')
  pl.ylabel(r'$K(\psi) [m/d]$')
Пример #3
0
    q[j] = -Kmid * ((psi[i + 1] - psi[i]) / dz + 1.0)
    if q[n] != 0:
        if q[n] < q[n - 1]:  # because here q is a negative value
            print('Water accumulated at the top, time = ', t / 60, 'min(s)')
            KTop = vg.KFun(psiTop, p)
            dhdz = (psiTop - psi[n - 1]) * 2 / dz + 1
            q[n] = -KTop * dhdz
    # Continuity
    i = np.arange(0, n)
    dpsidt = (-(q[i + 1] - q[i]) / dz) / C

    return dpsidt


psi = np.linspace(-10, 5)
theta = vg.thetaFun(psi, p)
C = vg.CFun(psi, p)
K = vg.KFun(psi, p)

pl.figure()
pl.rcParams['figure.figsize'] = (5.0, 10.0)
pl.subplot(311)
pl.plot(psi, theta)
pl.ylabel(r'$\theta$', fontsize=20)
pl.subplot(312)
pl.plot(psi, C)
pl.ylabel(r'$C$', fontsize=20)
pl.subplot(313)
pl.plot(psi, K)
pl.ylabel(r'$K$', fontsize=20)
pl.xlabel(r'$\psi$', fontsize=20)