www.mooseframework.org
PenaltyDirichletOldValuePD.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<NodalKernel>();
19  params.addClassDescription("Enforces a Dirichlet boundary condition "
20  "in a weak sense by penalizing differences between the current "
21  "solution and the old solution for transient problems.");
22 
23  params.addRequiredParam<Real>("penalty", "Penalty scalar");
24 
25  return params;
26 }
27 
28 PenaltyDirichletOldValuePD::PenaltyDirichletOldValuePD(const InputParameters & parameters)
29  : NodalKernel(parameters), _p(getParam<Real>("penalty")), _u_old(_var.dofValuesOld())
30 {
31 }
32 
33 Real
35 {
36  return _p * (-_u_old[_qp] + _u[_qp]);
37 }
38 
39 Real
41 {
42  return _p;
43 }
PenaltyDirichletOldValuePD::computeQpJacobian
virtual Real computeQpJacobian() override
Definition: PenaltyDirichletOldValuePD.C:40
PenaltyDirichletOldValuePD::_u_old
const VariableValue & _u_old
Definition: PenaltyDirichletOldValuePD.h:31
PenaltyDirichletOldValuePD.h
PenaltyDirichletOldValuePD
Definition: PenaltyDirichletOldValuePD.h:20
validParams< PenaltyDirichletOldValuePD >
InputParameters validParams< PenaltyDirichletOldValuePD >()
Definition: PenaltyDirichletOldValuePD.C:16
registerMooseObject
registerMooseObject("PeridynamicsApp", PenaltyDirichletOldValuePD)
PenaltyDirichletOldValuePD::_p
const Real & _p
Definition: PenaltyDirichletOldValuePD.h:30
PenaltyDirichletOldValuePD::PenaltyDirichletOldValuePD
PenaltyDirichletOldValuePD(const InputParameters &parameters)
Definition: PenaltyDirichletOldValuePD.C:28
PenaltyDirichletOldValuePD::computeQpResidual
virtual Real computeQpResidual() override
Definition: PenaltyDirichletOldValuePD.C:34