BicubicSplineFunction.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* DO NOT MODIFY THIS HEADER */
3 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
4 /* */
5 /* (c) 2010 Battelle Energy Alliance, LLC */
7 /* */
8 /* Prepared by Battelle Energy Alliance, LLC */
9 /* Under Contract No. DE-AC07-05ID14517 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* See COPYRIGHT for full restrictions */
13 /****************************************************************/
14
15 #ifndef BICUBICSPLINEFUNCTION_H
16 #define BICUBICSPLINEFUNCTION_H
17
18 #include "Function.h"
19 #include "FunctionInterface.h"
21
23
24 template <>
26
31 {
32 public:
34
35  virtual Real value(Real t, const Point & p) override;
36
37  virtual Real derivative(const Point & p, unsigned int deriv_var);
39  virtual Real secondDerivative(const Point & p, unsigned int deriv_var);
40
41 protected:
43
44  std::vector<Real> _x1;
45  std::vector<Real> _x2;
46  std::vector<Real> _yx11;
47  std::vector<Real> _yx1n;
48  std::vector<Real> _yx21;
49  std::vector<Real> _yx2n;
50
53 };
54
55 #endif /* BICUBICSPLINEFUNCTION_H */
Definition: Assembly.h:43
Base class for function objects.
Definition: Function.h:46
BicubicSplineInterpolation _ipol
virtual Real value(Real t, const Point &p) override
Override this to evaluate the scalar function at point (t,x,y,z), by default this returns zero...
BicubicSplineFunction(const InputParameters &parameters)
Function objects can optionally provide a gradient at a point.
std::vector< Real > _x1
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
std::vector< Real > _yx2n
std::vector< Real > _yx1n
virtual Real derivative(const Point &p, unsigned int deriv_var)
InputParameters validParams< BicubicSplineFunction >()
std::vector< Real > _x2
virtual Real secondDerivative(const Point &p, unsigned int deriv_var)
This class interpolates tabulated functions with a bi-cubic spline.
Function that uses spline interpolation.
std::vector< Real > _yx21
std::vector< Real > _yx11
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:53
Interface for objects that need to use functions.