www.mooseframework.org
SpatialUserObjectAux.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 "SpatialUserObjectAux.h"
11 #include "UserObject.h"
12 
14 
15 template <>
18 {
20  params.addRequiredParam<UserObjectName>(
21  "user_object",
22  "The UserObject UserObject to get values from. Note that the UserObject "
23  "_must_ implement the spatialValue() virtual function!");
24  return params;
25 }
26 
28  : AuxKernel(parameters), _user_object(getUserObjectBase("user_object"))
29 {
30 }
31 
32 Real
34 {
35  if (isNodal())
37  else
38  return _user_object.spatialValue(_current_elem->centroid());
39 }
const Node *const & _current_node
Current node (valid only for nodal kernels)
Definition: AuxKernel.h:213
Function auxiliary value.
InputParameters validParams< SpatialUserObjectAux >()
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
const UserObject & _user_object
UserObject to be queried for a value.
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...
virtual Real computeValue() override
Compute and return the value of the aux variable.
InputParameters validParams< AuxKernel >()
Definition: AuxKernel.C:25
registerMooseObject("MooseApp", SpatialUserObjectAux)
bool isNodal()
Nodal or elemental kernel?
Definition: AuxKernel.h:84
virtual Real spatialValue(const Point &) const
Optional interface function for "evaluating" a UserObject at a spatial position.
Definition: UserObject.h:83
SpatialUserObjectAux(const InputParameters &parameters)
Factory constructor, takes parameters so that all derived classes can be built using the same constru...
const Elem *const & _current_elem
Current element (valid only for elemental kernels)
Definition: AuxKernel.h:203
Base class for creating new auxiliary kernels and auxiliary boundary conditions.
Definition: AuxKernel.h:33