www.mooseframework.org
FunctionScalarAux.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 "FunctionScalarAux.h"
11 #include "Function.h"
12 
14 
16 
19 {
21  params.addRequiredParam<std::vector<FunctionName>>(
22  "function", "The functions to set the scalar variable components.");
23 
24  return params;
25 }
26 
28  : AuxScalarKernel(parameters)
29 {
30  std::vector<FunctionName> funcs = getParam<std::vector<FunctionName>>("function");
31  if (funcs.size() != _var.order())
32  mooseError("number of functions is not equal to the number of scalar variable components");
33 
34  for (const auto & func : funcs)
35  _functions.push_back(&getFunctionByName(func));
36 }
37 
38 Real
40 {
41  return _functions[_i]->value(_t, _point_zero);
42 }
MooseObject::mooseError
void mooseError(Args &&... args) const
Definition: MooseObject.h:141
ScalarCoupleable::_point_zero
const Point & _point_zero
Zero point.
Definition: ScalarCoupleable.h:232
FunctionInterface::getFunctionByName
const Function & getFunctionByName(const FunctionName &name) const
Get a function with a given name.
Definition: FunctionInterface.C:37
FunctionScalarAux::validParams
static InputParameters validParams()
Definition: FunctionScalarAux.C:18
AuxScalarKernel::_i
unsigned int _i
Definition: AuxScalarKernel.h:84
AuxScalarKernel
Base class for making kernels that work on auxiliary scalar variables.
Definition: AuxScalarKernel.h:35
AuxScalarKernel::validParams
static InputParameters validParams()
Definition: AuxScalarKernel.C:20
FunctionScalarAux.h
InputParameters
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Definition: InputParameters.h:53
defineLegacyParams
defineLegacyParams(FunctionScalarAux)
TransientInterface::_t
Real & _t
Time.
Definition: TransientInterface.h:58
MooseVariableBase::order
Order order() const
Get the order of this variable Note: Order enum can be implicitly converted to unsigned int.
Definition: MooseVariableBase.C:123
FunctionScalarAux
Sets a value of a scalar variable based on the function.
Definition: FunctionScalarAux.h:23
FunctionScalarAux::FunctionScalarAux
FunctionScalarAux(const InputParameters &parameters)
Definition: FunctionScalarAux.C:27
FunctionScalarAux::computeValue
virtual Real computeValue() override
Compute the value of this kernel.
Definition: FunctionScalarAux.C:39
registerMooseObject
registerMooseObject("MooseApp", FunctionScalarAux)
Function.h
FunctionScalarAux::_functions
std::vector< const Function * > _functions
Definition: FunctionScalarAux.h:33
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:1176
AuxScalarKernel::_var
MooseVariableScalar & _var
Definition: AuxScalarKernel.h:81