www.mooseframework.org
SolutionFunction.h
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 #pragma once
11 
12 #include "Function.h"
13 
14 class SolutionUserObject;
15 
21 class SolutionFunction : public Function
22 {
23 public:
27  static InputParameters validParams();
28 
30 
31  using Function::value;
38  virtual Real value(Real t, const Point & p) const override;
39 
46  virtual RealGradient gradient(Real t, const Point & p) const override;
47 
54  virtual void initialSetup() override;
55 
56 protected:
58  const SolutionUserObject * _solution_object_ptr;
59 
61  unsigned int _solution_object_var_index;
62 
64  const Real _scale_factor;
65 
67  const Real _add_factor;
68 
70  RealGradient _add_grad;
71 };
Base class for function objects.
Definition: Function.h:37
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
SolutionFunction()=default
Function for reading a solution from file Creates a function that extracts values from a solution rea...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const InputParameters & parameters() const
Get the parameters of the 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
User object that reads an existing solution from an input file and uses it in the current simulation...