www.mooseframework.org
ADKernelStabilized.h
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 
10 #pragma once
11 
12 #include "ADKernel.h"
13 
14 #define usingTemplKernelStabilizedMembers(type) usingTemplKernelMembers(type)
15 #define usingKernelStabilizedMembers usingTemplKernelStabilizedMembers(Real)
16 #define usingVectorKernelStabilizedMembers usingTemplKernelStabilizedMembers(RealVectorValue)
17 
18 template <typename, ComputeStage>
20 
21 template <ComputeStage compute_stage>
23 template <ComputeStage compute_stage>
25 
28 
29 template <typename T, ComputeStage compute_stage>
30 class ADKernelStabilizedTempl : public ADKernelTempl<T, compute_stage>
31 {
32 public:
34 
36 
37  virtual void computeResidual() override;
38  virtual void computeJacobian() override;
39  virtual void computeADOffDiagJacobian() override;
40 
41 protected:
47 
48  virtual ADRealVectorValue computeQpStabilization() = 0;
49 
50  virtual ADReal computeQpResidual() override final;
51 
53 };
54 
ADKernelStabilizedTempl::ADKernelStabilizedTempl
ADKernelStabilizedTempl(const InputParameters &parameters)
Definition: ADKernelStabilized.C:29
ADKernelStabilizedTempl::validParams
static InputParameters validParams()
Definition: ADKernelStabilized.C:23
ADKernelStabilizedTempl::precomputeQpStrongResidual
virtual OutputTools< typename Moose::ValueType< T, compute_stage >::type >::OutputValue precomputeQpStrongResidual()=0
Called before forming the residual for an element.
MooseObject::parameters
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:76
ADKernelStabilizedTempl::usingTemplKernelMembers
usingTemplKernelMembers(T)
ADKernelStabilizedTempl::computeQpStabilization
virtual ADRealVectorValue computeQpStabilization()=0
ADKernelStabilizedTempl::computeQpResidual
virtual ADReal computeQpResidual() override final
Compute this Kernel's contribution to the residual at the current quadrature point.
Definition: ADKernelStabilized.C:208
InputParameters
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Definition: InputParameters.h:53
ADKernelStabilizedTempl::computeJacobian
virtual void computeJacobian() override
Compute this Kernel's contribution to the diagonal Jacobian entries.
Definition: ADKernelStabilized.C:83
ADKernelStabilizedTempl
Definition: ADKernelStabilized.h:19
declareADValidParams
declareADValidParams(ADKernelStabilized)
ADKernelStabilizedTempl::computeResidual
virtual void computeResidual() override
Compute this Kernel's contribution to the residual.
Definition: ADKernelStabilized.C:37
ADKernelStabilizedTempl::computeADOffDiagJacobian
virtual void computeADOffDiagJacobian() override
Definition: ADKernelStabilized.C:145
ADKernel.h
ADKernelTempl
Definition: ADKernel.h:66
OutputTools
Definition: MooseTypes.h:264