www.mooseframework.org
AuxScalarKernel.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* DO NOT MODIFY THIS HEADER */
3 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
4 /* */
5 /* (c) 2010 Battelle Energy Alliance, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by Battelle Energy Alliance, LLC */
9 /* Under Contract No. DE-AC07-05ID14517 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* See COPYRIGHT for full restrictions */
13 /****************************************************************/
14 
15 #ifndef AUXSCALARKERNEL_H
16 #define AUXSCALARKERNEL_H
17 
18 #include "MooseObject.h"
19 #include "ScalarCoupleable.h"
20 #include "SetupInterface.h"
21 #include "FunctionInterface.h"
22 #include "UserObjectInterface.h"
23 #include "PostprocessorInterface.h"
25 #include "TransientInterface.h"
26 #include "MooseVariableScalar.h"
27 #include "ZeroInterface.h"
28 #include "MeshChangedInterface.h"
29 
30 // Forward declarations
31 class MooseMesh;
32 class SubProblem;
33 class Assembly;
34 class AuxScalarKernel;
35 
36 template <>
38 
43  public ScalarCoupleable,
44  public SetupInterface,
45  public FunctionInterface,
46  public UserObjectInterface,
49  public TransientInterface,
50  public ZeroInterface,
52 {
53 public:
55 
56  virtual ~AuxScalarKernel();
57 
61  virtual void compute();
62 
67 
69 
70  virtual const std::set<std::string> & getRequestedItems() override;
71 
72  virtual const std::set<std::string> & getSuppliedItems() override;
73 
78  virtual bool isActive();
79 
80 protected:
83 
85 
89 
90  unsigned int _i;
91 
94 
96  std::set<std::string> _depend_vars;
97  std::set<std::string> _supplied_vars;
98 
105  virtual Real computeValue() = 0;
106 };
107 
108 #endif /* AUXSCALARKERNEL_H */
MooseMesh & _mesh
MooseVariableScalar & _var
VariableValue & _u_old
Keeps track of stuff related to assembling.
Definition: Assembly.h:63
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
SubProblem & _subproblem
Base class for a system (of equations)
Definition: SystemBase.h:91
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.
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:36
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:74
Interface for objects that need to use UserObjects.
VariableValue & _u
virtual Real computeValue()=0
Compute the value of this kernel.
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:53
Interface to bring zero values inside objects.
Definition: ZeroInterface.h:35
std::set< std::string > _depend_vars
Depend AuxKernels.
Class for scalar variables (they are different).
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:53
Interface for sorting dependent vectors of objects.
Interface for objects that needs scalar coupling capabilities.
unsigned int _i
AuxScalarKernel(const InputParameters &parameters)
SubProblem & subProblem()
InputParameters validParams< AuxScalarKernel >()
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:79