https://mooseframework.inl.gov
FVScalarLagrangeMultiplierConstraint.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 "FVElementalKernel.h"
13 
19 {
20 public:
22 
24 
25  const MooseVariableScalar & lambdaVariable() const { return _lambda_var; }
26 
27 protected:
30 
31 private:
32  void computeResidual() override final;
33  void computeJacobian() override final;
35  void computeOffDiagJacobian() override final;
36  void computeResidualAndJacobian() override final;
37  ADReal computeQpResidual() override = 0;
38 
41 
44 };
ADReal computeQpResidual() override=0
This is the primary function that must be implemented for flux kernel terms.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
Base class for implementing constraints on finite volume variable elemental values using scalar Lagra...
DualNumber< Real, DNDerivativeType, true > ADReal
Definition: ADRealForward.h:47
void computeJacobian() override final
Compute this object&#39;s contribution to the diagonal Jacobian entries.
const ADVariableValue & _lambda
The Lagrange Multiplier value.
void computeResidualAndJacobian() override final
Compute this object&#39;s contribution to the residual and Jacobian simultaneously.
FVElemental is used for calculating residual contributions from volume integral terms of a PDE where ...
Real PostprocessorValue
various MOOSE typedefs
Definition: MooseTypes.h:202
const MooseVariableScalar & lambdaVariable() const
void computeResidual() override final
Usually you should not override these functions - they have some tricky stuff in them that you don&#39;t ...
forward declarations
const MooseVariableScalar & _lambda_var
The Lagrange Multiplier variable.
Class for scalar variables (they are different).
const InputParameters & parameters() const
Get the parameters of the object.
FVScalarLagrangeMultiplierConstraint(const InputParameters &parameters)
const PostprocessorValue & _phi0
The value that we want the average of the primal variable to be equal to.