www.mooseframework.org
RichardsSeff1BWsmall.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "RichardsSeff.h"
13 
15 
16 template <>
17 InputParameters validParams<RichardsSeff1BWsmall>();
18 
27 {
28 public:
29  RichardsSeff1BWsmall(const InputParameters & parameters);
30 
35  Real LambertW(const double z) const;
36 
43  Real seff(std::vector<const VariableValue *> p, unsigned int qp) const;
44 
52  void
53  dseff(std::vector<const VariableValue *> p, unsigned int qp, std::vector<Real> & result) const;
54 
62  void d2seff(std::vector<const VariableValue *> p,
63  unsigned int qp,
64  std::vector<std::vector<Real>> & result) const;
65 
66 protected:
68  Real _sn;
69 
71  Real _ss;
72 
74  Real _c;
75 
77  Real _las;
78 };
79 
RichardsSeff1BWsmall::RichardsSeff1BWsmall
RichardsSeff1BWsmall(const InputParameters &parameters)
Definition: RichardsSeff1BWsmall.C:53
RichardsSeff1BWsmall::LambertW
Real LambertW(const double z) const
LambertW function, returned value satisfies W(z)*exp(W(z))=z.
Definition: RichardsSeff1BWsmall.C:69
RichardsSeff
Base class for effective saturation as a function of porepressure(s) The functions seff,...
Definition: RichardsSeff.h:23
RichardsSeff1BWsmall::_las
Real _las
BW's lambda_s parameter multiplied by (fluiddensity*gravity)
Definition: RichardsSeff1BWsmall.h:77
RichardsSeff1BWsmall::seff
Real seff(std::vector< const VariableValue * > p, unsigned int qp) const
effective saturation as a function of porepressure
Definition: RichardsSeff1BWsmall.C:148
validParams< RichardsSeff1BWsmall >
InputParameters validParams< RichardsSeff1BWsmall >()
Definition: RichardsSeff1BWsmall.C:21
RichardsSeff1BWsmall::dseff
void dseff(std::vector< const VariableValue * > p, unsigned int qp, std::vector< Real > &result) const
derivative of effective saturation as a function of porepressure
Definition: RichardsSeff1BWsmall.C:160
RichardsSeff.h
RichardsSeff1BWsmall::d2seff
void d2seff(std::vector< const VariableValue * > p, unsigned int qp, std::vector< std::vector< Real >> &result) const
second derivative of effective saturation as a function of porepressure
Definition: RichardsSeff1BWsmall.C:176
RichardsSeff1BWsmall::_c
Real _c
BW's C parameter.
Definition: RichardsSeff1BWsmall.h:74
RichardsSeff1BWsmall
"Broadbridge-White" form of effective saturation for Kn small as a function of porepressure (not capi...
Definition: RichardsSeff1BWsmall.h:26
RichardsSeff1BWsmall::_sn
Real _sn
BW's initial effective saturation.
Definition: RichardsSeff1BWsmall.h:68
RichardsSeff1BWsmall::_ss
Real _ss
Effective saturation where porepressure = 0.
Definition: RichardsSeff1BWsmall.h:71