www.mooseframework.org
FunctionSideIntegral.C
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 #include "FunctionSideIntegral.h"
11 #include "Function.h"
12 
14 
17 {
19  params.addClassDescription("Computes the integral of a function over a boundary.");
20  params.addParam<FunctionName>(
21  "function",
22  1.0,
23  "This postprocessor will return the integral of this function over the boundary");
24  return params;
25 }
26 
28  : SideIntegralPostprocessor(parameters), _func(getFunction("function"))
29 {
30 }
31 
32 void
34 {
35  const auto & pps = static_cast<const FunctionSideIntegral &>(y);
36  _integral_value += pps._integral_value;
37 }
38 
39 Real
41 {
42  return _func.value(_t, _q_point[_qp]);
43 }
virtual void threadJoin(const UserObject &y) override
Must override.
registerMooseObject("MooseApp", FunctionSideIntegral)
static InputParameters validParams()
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
const MooseArray< Point > & _q_point
unsigned int _qp
The local quadrature point index when computing an integral over quadrature points.
virtual Real computeQpIntegral() override
static InputParameters validParams()
FunctionSideIntegral(const InputParameters &parameters)
const Function & _func
The function.
This postprocessor computes a surface integral of the specified variable on a sideset on the boundary...
This postprocessor computes the integral of a function over a specified boundary. ...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
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...
void addParam(const std::string &name, const S &value, const std::string &doc_string)
These methods add an option parameter and a documentation string to the InputParameters object...
virtual Real value(Real t, const Point &p) const
Override this to evaluate the scalar function at point (t,x,y,z), by default this returns zero...
Definition: Function.C:41
Real _integral_value
Holds the postprocessor result, the integral.
Base class for user-specific data.
Definition: UserObject.h:39