https://mooseframework.inl.gov
Loading...
Searching...
No Matches
LowerBoundNodalKernel.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
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 "NodalKernel.h"
13
18{
19public:
21
23
24protected:
25 virtual Real computeQpResidual() override;
26 virtual Real computeQpJacobian() override;
27 virtual Real computeQpOffDiagJacobian(unsigned int jvar) override;
28
29private:
31 const unsigned int _v_var;
32
35
37 std::set<BoundaryID> _bnd_ids;
38
40 const Real _lower_bound;
41};
OutputTools< Real >::VariableValue VariableValue
Definition MooseTypes.h:348
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Class used to enforce a lower bound on a coupled variable.
std::set< BoundaryID > _bnd_ids
Boundaries on which we should not execute this object.
const VariableValue & _v
The value of the coupled variable.
const Real _lower_bound
The lower bound on the coupled variable.
virtual Real computeQpJacobian() override
The user can override this function to compute the "on-diagonal" Jacobian contribution.
static InputParameters validParams()
virtual Real computeQpResidual() override
The user can override this function to compute the residual at a node.
const unsigned int _v_var
The number of the coupled variable.
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
This is the virtual that derived classes should override for computing an off-diagonal jacobian compo...
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
Base class for creating nodal kernels with hand-coded Jacobians.
Definition NodalKernel.h:19