https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Indicator.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
12#include "MooseObject.h"
13#include "BlockRestrictable.h"
14#include "SetupInterface.h"
15#include "FunctionInterface.h"
16#include "UserObjectInterface.h"
18#include "Restartable.h"
19#include "OutputInterface.h"
21
22class MooseMesh;
23class SubProblem;
24class Assembly;
25class SystemBase;
26
27class Indicator : public MooseObject,
28 public BlockRestrictable,
29 public SetupInterface,
30 public FunctionInterface,
33 public Restartable,
34 public OutputInterface,
36{
37public:
39
41
42 virtual ~Indicator() {}
43
51 virtual void computeIndicator() = 0;
52
58 virtual void finalize() {}
59
61
62 // TODO: Fixme
63 bool isActive() const { return true; }
64
65protected:
71 NumericVector<Number> & _solution;
72
74
76
78};
unsigned int THREAD_ID
Definition MooseTypes.h:237
Keeps track of stuff related to assembling.
Definition Assembly.h:110
An interface that restricts an object to subdomains via the 'blocks' input parameter.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Interface for objects that need to use functions.
static InputParameters validParams()
Definition Indicator.C:21
THREAD_ID _tid
Definition Indicator.h:73
const bool _use_displaced_mesh
Whether to use the displaced mesh.
Definition Indicator.h:67
bool isActive() const
Definition Indicator.h:63
virtual void finalize()
Can be overridden to do a final postprocessing of the indicator field.
Definition Indicator.h:58
SubProblem & subProblem()
Definition Indicator.h:60
SubProblem & _subproblem
Definition Indicator.h:68
virtual ~Indicator()
Definition Indicator.h:42
Assembly & _assembly
Definition Indicator.h:75
virtual void computeIndicator()=0
Pure virtual that must be overridden.
NumericVector< Number > & _solution
Definition Indicator.h:71
MooseMesh & _mesh
Definition Indicator.h:77
SystemBase & _sys
Definition Indicator.h:70
FEProblemBase & _fe_problem
Definition Indicator.h:69
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
An interface for accessing Materials.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition MooseMesh.h:95
Every object that can be built by the factory should be derived from this class.
Definition MooseObject.h:31
A class to provide an common interface to objects requiring "outputs" option.
A class for creating restricted objects.
Definition Restartable.h:29
Generic class for solving transient nonlinear problems.
Definition SubProblem.h:79
Base class for a system (of equations)
Definition SystemBase.h:87
Interface for objects that need to use UserObjects.