www.mooseframework.org
RichardsPPenalty.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
8 #ifndef RICHARDSPPENALTY
9 #define RICHARDSPPENALTY
10 
11 #include "Kernel.h"
12 
13 // Forward Declarations
14 class RichardsPPenalty;
15 
16 template <>
17 InputParameters validParams<RichardsPPenalty>();
18 
23 class RichardsPPenalty : public Kernel
24 {
25 public:
26  RichardsPPenalty(const InputParameters & parameters);
27 
28 protected:
29  virtual Real computeQpResidual();
30  virtual Real computeQpJacobian();
31  virtual Real computeQpOffDiagJacobian(unsigned int jvar);
32 
33 private:
35  Real _a;
36 
38  const VariableValue & _lower;
39 
41  unsigned int _lower_var_num;
42 };
43 
44 #endif // RICHARDSPPENALTY
virtual Real computeQpResidual()
InputParameters validParams< RichardsPPenalty >()
Real _a
Kernel = a*(_lower - variable) for variable<lower and zero otherwise.
const VariableValue & _lower
Kernel = a*(_lower - variable) for variable<lower and zero otherwise.
RichardsPPenalty(const InputParameters &parameters)
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
unsigned int _lower_var_num
moose variable number of the _lower variable (needed for OffDiagJacobian)
virtual Real computeQpJacobian()
Kernel = a*(lower - variable) for variable<lower, and zero otherwise This is an attempt to enforce va...