Loading [MathJax]/extensions/tex2jax.js
https://mooseframework.inl.gov
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
FVPointValueConstraint.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 
13 
14 #include "libmesh/enum_point_locator_type.h"
15 
30 {
31 public:
33 
35  virtual void meshChanged() override { setMyElem(); }
36 
37 private:
38  void setMyElem();
39  ADReal computeQpResidual() override final;
40 
42  const Point _point;
43 
45  std::unique_ptr<libMesh::PointLocatorBase> _point_locator;
46 
48  const Elem * _my_elem;
49 };
ADReal computeQpResidual() override final
This is the primary function that must be implemented for flux kernel terms.
std::unique_ptr< libMesh::PointLocatorBase > _point_locator
We use a point locator in case the constraint is a point value.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
This Kernel implements the residuals that enforce the constraint.
Base class for implementing constraints on finite volume variable elemental values using scalar Lagra...
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
DualNumber< Real, DNDerivativeType, true > ADReal
Definition: ADRealForward.h:47
static InputParameters validParams()
virtual void meshChanged() override
Called on this object when the mesh changes.
const Elem * _my_elem
Pointer to the element in case we have a point constraint.
const Point _point
The point where the constraint should be enforced.
FVPointValueConstraint(const InputParameters &parameters)
const InputParameters & parameters() const
Get the parameters of the object.