https://mooseframework.inl.gov
PiecewiseMultilinear.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 
13 
14 // Forward declarations
15 class GriddedData;
16 
25 {
26 public:
28 
30 
31  virtual RealGradient gradient(Real t, const Point & p) const override;
32  virtual Real timeDerivative(Real t, const Point & p) const override;
33 
34 protected:
35  virtual Real sample(const GridPoint & pt) const override;
36  virtual ADReal sample(const ADGridPoint & pt) const override;
37 
38  const Real _epsilon;
39 
40 private:
41  template <bool is_ad>
44 };
Moose::GenericType< Real, is_ad > sampleInternal(const Moose::GenericType< GridPoint, is_ad > pt) const
Container for holding a function defined on a grid of arbitrary dimension.
Definition: GriddedData.h:32
Uses GriddedData to define data on a grid, and does linear interpolation on that data to provide func...
static InputParameters validParams()
Uses GriddedData to define data on a grid, and does linear interpolation on that data to provide func...
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
DualNumber< Real, DNDerivativeType, true > ADReal
Definition: ADRealForward.h:46
typename std::conditional< is_ad, typename ADType< T >::type, T >::type GenericType
Definition: MooseTypes.h:644
Utility class template for a semidynamic vector with a maximum size N and a chosen dynamic size...
Definition: MooseUtils.h:1096
virtual RealGradient gradient(Real t, const Point &p) const override
Function objects can optionally provide a gradient at a point.
PiecewiseMultilinear(const InputParameters &parameters)
virtual Real timeDerivative(Real t, const Point &p) const override
Get the time derivative of the function.
virtual Real sample(const GridPoint &pt) const override
This does the core work.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const InputParameters & parameters() const
Get the parameters of the object.