www.mooseframework.org
BoundaryCondition.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 BOUNDARYCONDITION_H
16 #define BOUNDARYCONDITION_H
17 
18 // MOOSE
19 #include "MooseObject.h"
20 #include "SetupInterface.h"
21 #include "ParallelUniqueId.h"
22 #include "FunctionInterface.h"
23 #include "DistributionInterface.h"
24 #include "UserObjectInterface.h"
25 #include "TransientInterface.h"
26 #include "PostprocessorInterface.h"
30 #include "Restartable.h"
31 #include "ZeroInterface.h"
32 #include "MeshChangedInterface.h"
33 
34 // Forward declerations
35 class MooseVariable;
36 class MooseMesh;
37 class Problem;
38 class SubProblem;
39 class SystemBase;
40 class BoundaryCondition;
41 class Assembly;
42 
43 template <>
45 
51  public SetupInterface,
52  public FunctionInterface,
53  public DistributionInterface,
54  public UserObjectInterface,
55  public TransientInterface,
59  public Restartable,
60  public ZeroInterface,
62 {
63 public:
69  BoundaryCondition(const InputParameters & parameters, bool nodal);
70 
76 
82 
94  virtual bool shouldApply();
95 
96 protected:
99 
102 
105 
108 
111 
114 
117 };
118 
119 #endif /* BOUNDARYCONDITION_H */
SubProblem & _subproblem
Reference to SubProblem.
A class for requiring an object to be boundary restricted.
SubProblem & subProblem()
Get a reference to the subproblem.
A class for creating restricted objects.
Definition: Restartable.h:31
virtual bool shouldApply()
Hook for turning the boundary condition on and off.
Keeps track of stuff related to assembling.
Definition: Assembly.h:63
Class for stuff related to variables.
Definition: MooseVariable.h:43
FEProblemBase & _fe_problem
Reference to FEProblemBase.
Class that hold the whole problem being solved.
Definition: Problem.h:29
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
MooseVariable & variable()
Gets the variable this BC is active on.
Base class for a system (of equations)
Definition: SystemBase.h:91
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Interface for objects that needs transient capabilities.
MooseVariable & _var
variable this BC works on
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
Interface for objects that need to use distributions.
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition: MooseMesh.h:74
Assembly & _assembly
Reference to assembly.
Interface for objects that need to use UserObjects.
Base class for creating new types of boundary conditions.
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:53
Interface to bring zero values inside objects.
Definition: ZeroInterface.h:35
SystemBase & _sys
Reference to SystemBase.
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:53
Interface for objects that need to use functions.
THREAD_ID _tid
Thread id.
InputParameters validParams< BoundaryCondition >()
Interface class for classes which interact with Postprocessors.
unsigned int THREAD_ID
Definition: MooseTypes.h:79
MooseMesh & _mesh
Mesh this BC is defined on.
BoundaryCondition(const InputParameters &parameters, bool nodal)
Class constructor.