https://mooseframework.inl.gov
Loading...
Searching...
No Matches
src
postprocessors
TagVectorSum.C
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
#include "
TagVectorSum.h
"
11
12
// MOOSE includes
13
#include "
NonlinearSystemBase.h
"
14
#include "
FEProblemBase.h
"
15
16
// libMesh includes
17
#include "libmesh/numeric_vector.h"
18
19
registerMooseObject
(
"MooseApp"
,
TagVectorSum
);
20
21
InputParameters
22
TagVectorSum::validParams
()
23
{
24
InputParameters
params =
GeneralPostprocessor::validParams
();
25
params.
addRequiredParam
<TagName>(
"vector"
,
"The name of the vector to compute the sum for"
);
26
params.
addClassDescription
(
"Computes the sum of components of the requested tagged vector"
);
27
return
params;
28
}
29
30
TagVectorSum::TagVectorSum
(
const
InputParameters
& parameters)
31
:
GeneralPostprocessor
(parameters),
32
_vec(_fe_problem.getNonlinearSystemBase(_sys.number())
33
.getVector(_fe_problem.getVectorTagID(getParam<TagName>(
"vector"
))))
34
{
35
}
36
37
void
38
TagVectorSum::initialize
()
39
{
40
}
41
42
void
43
TagVectorSum::execute
()
44
{
45
_sum
=
_vec
.
sum
();
46
}
47
48
PostprocessorValue
49
TagVectorSum::getValue
()
const
50
{
51
return
_sum
;
52
}
FEProblemBase.h
PostprocessorValue
Real PostprocessorValue
various MOOSE typedefs
Definition
MooseTypes.h:230
NonlinearSystemBase.h
registerMooseObject
registerMooseObject("MooseApp", TagVectorSum)
TagVectorSum.h
GeneralPostprocessor
This class is here to combine the Postprocessor interface and the base class Postprocessor object alo...
Definition
GeneralPostprocessor.h:22
GeneralPostprocessor::validParams
static InputParameters validParams()
Definition
GeneralPostprocessor.C:13
InputParameters
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Definition
InputParameters.h:68
InputParameters::addRequiredParam
void addRequiredParam(const std::string &name, const std::string &doc_string)
This method adds a parameter and documentation string to the InputParameters object that will be extr...
Definition
InputParameters.h:1806
InputParameters::addClassDescription
void addClassDescription(const std::string &doc_string)
This method adds a description of the class that will be displayed in the input file syntax dump.
Definition
InputParameters.C:81
TagVectorSum
Computes the sum of components of the requested tagged vector.
Definition
TagVectorSum.h:24
TagVectorSum::_sum
Number _sum
The vector sum.
Definition
TagVectorSum.h:40
TagVectorSum::validParams
static InputParameters validParams()
Definition
TagVectorSum.C:22
TagVectorSum::getValue
virtual PostprocessorValue getValue() const override
This will get called to actually grab the final value the postprocessor has calculated.
Definition
TagVectorSum.C:49
TagVectorSum::TagVectorSum
TagVectorSum(const InputParameters ¶meters)
Definition
TagVectorSum.C:30
TagVectorSum::_vec
const NumericVector< Number > & _vec
The vector we will take the sum of.
Definition
TagVectorSum.h:38
TagVectorSum::execute
virtual void execute() override
Execute method.
Definition
TagVectorSum.C:43
TagVectorSum::initialize
virtual void initialize() override
Called before execute() is ever called so that data can be cleared.
Definition
TagVectorSum.C:38
libMesh::NumericVector::sum
virtual T sum() const=0
Generated on Mon Aug 24 2026 19:02:13 for https://mooseframework.inl.gov by
1.9.8