www.mooseframework.org
SplineFunction.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 #include "SplineInterpolation.h"
14 
18 class SplineFunction : public Function
19 {
20 public:
22 
24 
25  using Function::value;
26  virtual Real value(Real t, const Point & p) const override;
27  virtual ADReal value(const ADReal & t, const ADPoint & p) const override;
28 
29  virtual RealGradient gradient(Real t, const Point & p) const override;
30 
31  virtual Real derivative(const Point & p) const;
32  virtual Real secondDerivative(const Point & p) const;
33 
34 protected:
36 
39 };
Base class for function objects.
Definition: Function.h:37
SplineFunction(const InputParameters &parameters)
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
SplineInterpolation _ipol
virtual RealGradient gradient(Real t, const Point &p) const override
Function objects can optionally provide a gradient at a point.
virtual Real value(Real t, const Point &p) const override
Override this to evaluate the scalar function at point (t,x,y,z), by default this returns zero...
DualReal ADReal
Definition: ADRealForward.h:14
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real secondDerivative(const Point &p) const
virtual Real derivative(const Point &p) const
static InputParameters validParams()
const InputParameters & parameters() const
Get the parameters of the object.
int _component
Desired component.
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
Function that uses spline interpolation.
This class interpolates tabulated functions with cubic splines.