www.mooseframework.org
INSCompressibilityPenalty.C
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 
11 
13 
14 template <>
15 InputParameters
17 {
18  InputParameters params = validParams<Kernel>();
19 
20  params.addClassDescription("The penalty term may be used when Dirichlet boundary condition is "
21  "applied to the entire boundary.");
22  params.addParam<Real>("penalty", 1e-4, "Penalty value is used to relax the incompressibility");
23 
24  return params;
25 }
26 
27 INSCompressibilityPenalty::INSCompressibilityPenalty(const InputParameters & parameters)
28  : Kernel(parameters),
29  // penalty value
30  _penalty(getParam<Real>("penalty"))
31 
32 {
33 }
34 
35 Real
37 {
38  // penalty*p*q
39  return _penalty * _u[_qp] * _test[_i][_qp];
40 }
41 
42 Real
44 {
45  // does not couple any variables
46  return 0;
47 }
48 
49 Real
51 {
52  // Derivative wrt to p
53  return _penalty * _phi[_j][_qp] * _test[_i][_qp];
54 }
INSCompressibilityPenalty::INSCompressibilityPenalty
INSCompressibilityPenalty(const InputParameters &parameters)
Definition: INSCompressibilityPenalty.C:27
INSCompressibilityPenalty::_penalty
Real _penalty
Definition: INSCompressibilityPenalty.h:38
INSCompressibilityPenalty::computeQpResidual
virtual Real computeQpResidual()
Definition: INSCompressibilityPenalty.C:36
INSCompressibilityPenalty.h
INSCompressibilityPenalty
The penalty term may be used when Dirichlet boundary condition is applied to the entire boundary.
Definition: INSCompressibilityPenalty.h:23
validParams< INSCompressibilityPenalty >
InputParameters validParams< INSCompressibilityPenalty >()
Definition: INSCompressibilityPenalty.C:16
INSCompressibilityPenalty::computeQpOffDiagJacobian
virtual Real computeQpOffDiagJacobian(unsigned jvar)
Definition: INSCompressibilityPenalty.C:43
registerMooseObject
registerMooseObject("NavierStokesApp", INSCompressibilityPenalty)
INSCompressibilityPenalty::computeQpJacobian
virtual Real computeQpJacobian()
Definition: INSCompressibilityPenalty.C:50