www.mooseframework.org
AuxScalarKernel.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 "MooseObject.h"
13 #include "ScalarCoupleable.h"
14 #include "SetupInterface.h"
15 #include "FunctionInterface.h"
16 #include "UserObjectInterface.h"
17 #include "PostprocessorInterface.h"
19 #include "TransientInterface.h"
20 #include "MooseVariableScalar.h"
21 #include "MeshChangedInterface.h"
22 
23 // Forward declarations
24 class MooseMesh;
25 class SubProblem;
26 class Assembly;
31  public ScalarCoupleable,
32  public SetupInterface,
33  public FunctionInterface,
34  public UserObjectInterface,
37  public TransientInterface,
39 {
40 public:
42 
44 
45  virtual ~AuxScalarKernel();
46 
50  virtual void compute();
51 
56 
58 
59  virtual const std::set<std::string> & getRequestedItems() override;
60 
61  virtual const std::set<std::string> & getSuppliedItems() override;
62 
67  virtual bool isActive();
68 
69 protected:
75  const VariableValue & uOld() const;
76 
79 
81 
85 
86  unsigned int _i;
87 
88  const VariableValue & _u;
89 
91  std::set<std::string> _depend_vars;
92  std::set<std::string> _supplied_vars;
93 
100  virtual Real computeValue() = 0;
101 };
MooseMesh & _mesh
MooseVariableScalar & _var
Keeps track of stuff related to assembling.
Definition: Assembly.h:93
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
SubProblem & _subproblem
const VariableValue & _u
Base class for a system (of equations)
Definition: SystemBase.h:85
virtual bool isActive()
Use this to enable/disable the constraint.
MooseVariableScalar & variable()
The variable that this kernel operates on.
SystemBase & _sys
virtual const std::set< std::string > & getSuppliedItems() override
Return a set containing the names of items owned by the object.
const VariableValue & uOld() const
Retrieves the old value of the variable that this AuxScalarKernel operates on.
Interface for objects that needs transient capabilities.
virtual void compute()
Evaluate the kernel.
std::set< std::string > _supplied_vars
Interface for notifications that the mesh has changed.
Every object that can be built by the factory should be derived from this class.
Definition: MooseObject.h:33
Base class for making kernels that work on auxiliary scalar variables.
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition: MooseMesh.h:88
Interface for objects that need to use UserObjects.
OutputTools< Real >::VariableValue VariableValue
Definition: MooseTypes.h:302
forward declarations
Definition: MooseArray.h:17
virtual Real computeValue()=0
Compute the value of this kernel.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:75
std::set< std::string > _depend_vars
Depend AuxKernels.
static InputParameters validParams()
Class for scalar variables (they are different).
Interface for sorting dependent vectors of objects.
Interface for objects that needs scalar coupling capabilities.
const InputParameters & parameters() const
Get the parameters of the object.
unsigned int _i
AuxScalarKernel(const InputParameters &parameters)
SubProblem & subProblem()
virtual const std::set< std::string > & getRequestedItems() override
Return a set containing the names of items requested by the object.
Interface for objects that need to use functions.
Assembly & _assembly
virtual ~AuxScalarKernel()
Interface class for classes which interact with Postprocessors.
unsigned int THREAD_ID
Definition: MooseTypes.h:198