Interface for objects that need to use functions. More...
#include <FunctionInterface.h>
Public Member Functions | |
| FunctionInterface (const MooseObject *moose_object) | |
| FunctionInterface (const FunctionInterface &object, const Moose::Kokkos::FunctorCopy &key) | |
| Special constructor used for Kokkos functor copy during parallel dispatch. More... | |
| const Function & | getFunction (const std::string &name) const |
| Get a function with a given name. More... | |
| const Function & | getFunctionByName (const FunctionName &name) const |
| Get a function with a given name. More... | |
| bool | hasFunction (const std::string ¶m_name) const |
| Determine if the function exists. More... | |
| bool | hasFunctionByName (const FunctionName &name) const |
| Determine if the function exists. More... | |
| Moose::Kokkos::Function | getKokkosFunction (const std::string &name) const |
| Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU. More... | |
| Moose::Kokkos::Function | getKokkosFunctionByName (const FunctionName &name) const |
| Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU. More... | |
| template<typename T > | |
| const T & | getKokkosFunction (const std::string &name) const |
| Get a Kokkos function of a concrete type with a given name. More... | |
| template<typename T > | |
| const T & | getKokkosFunctionByName (const FunctionName &name) const |
| Get a Kokkos function of a concrete type with a given name. More... | |
| bool | hasKokkosFunction (const std::string ¶m_name) const |
| Determine if the Kokkos function exists. More... | |
| bool | hasKokkosFunctionByName (const FunctionName &name) const |
| Determine if the Kokkos function exists. More... | |
Static Public Member Functions | |
| static InputParameters | validParams () |
Private Member Functions | |
| const Moose::FunctionBase * | getKokkosFunctionByNameHelper (const FunctionName &name) const |
| Helper function to retrieve a Kokkos function. More... | |
Private Attributes | |
| const MooseObject & | _fni_object |
| Reference to the object. More... | |
| const InputParameters & | _fni_params |
| Parameters of the object with this interface. More... | |
| FEProblemBase & | _fni_feproblem |
| Reference to FEProblemBase instance. More... | |
| const THREAD_ID | _fni_tid |
| Thread ID. More... | |
Interface for objects that need to use functions.
Inherit from this class at a very low level to make the getFunction method available.
Definition at line 46 of file FunctionInterface.h.
| FunctionInterface::FunctionInterface | ( | const MooseObject * | moose_object | ) |
Definition at line 22 of file FunctionInterface.C.
| FunctionInterface::FunctionInterface | ( | const FunctionInterface & | object, |
| const Moose::Kokkos::FunctorCopy & | key | ||
| ) |
Special constructor used for Kokkos functor copy during parallel dispatch.
| const Function & FunctionInterface::getFunction | ( | const std::string & | name | ) | const |
Get a function with a given name.
| name | The name of the parameter key of the function to retrieve |
Definition at line 34 of file FunctionInterface.C.
Referenced by FunctionDT::FunctionDT(), and Output::Output().
| const Function & FunctionInterface::getFunctionByName | ( | const FunctionName & | name | ) | const |
Get a function with a given name.
| name | The name of the function to retrieve |
Definition at line 40 of file FunctionInterface.C.
Referenced by ArrayBodyForce::ArrayBodyForce(), ArrayFunctionIC::ArrayFunctionIC(), CompositeFunction::CompositeFunction(), FunctionArrayAux::FunctionArrayAux(), FunctionScalarAux::FunctionScalarAux(), FunctionScalarIC::FunctionScalarIC(), GenericFunctionMaterialTempl< is_ad >::GenericFunctionMaterialTempl(), GenericFunctionRankTwoTensorTempl< is_ad >::GenericFunctionRankTwoTensorTempl(), GenericFunctionVectorMaterialTempl< is_ad >::GenericFunctionVectorMaterialTempl(), getFunction(), LinearCombinationFunction::LinearCombinationFunction(), LineFunctionSampler::LineFunctionSampler(), and PiecewiseFunction::PiecewiseFunction().
| Moose::Kokkos::Function FunctionInterface::getKokkosFunction | ( | const std::string & | name | ) | const |
Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU.
| name | The name of the parameter key of the Kokkos function to retrieve |
| const T & FunctionInterface::getKokkosFunction | ( | const std::string & | name | ) | const |
Get a Kokkos function of a concrete type with a given name.
| T | The Kokkos function type |
| name | The name of the parameter key of the Kokkos function to retrieve |
Definition at line 165 of file FunctionInterface.h.
| Moose::Kokkos::Function FunctionInterface::getKokkosFunctionByName | ( | const FunctionName & | name | ) | const |
Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU.
| name | The name of the Kokkos function to retrieve |
| const T & FunctionInterface::getKokkosFunctionByName | ( | const FunctionName & | name | ) | const |
Get a Kokkos function of a concrete type with a given name.
| T | The Kokkos function type |
| name | The name of the Kokkos function to retrieve |
Definition at line 172 of file FunctionInterface.h.
|
private |
Helper function to retrieve a Kokkos function.
Referenced by getKokkosFunctionByName().
| bool FunctionInterface::hasFunction | ( | const std::string & | param_name | ) | const |
Determine if the function exists.
| param_name | The name of the function parameter |
| index | The index of the function |
Definition at line 46 of file FunctionInterface.C.
| bool FunctionInterface::hasFunctionByName | ( | const FunctionName & | name | ) | const |
Determine if the function exists.
| name | The name of the function |
Definition at line 52 of file FunctionInterface.C.
Referenced by hasFunction().
| bool FunctionInterface::hasKokkosFunction | ( | const std::string & | param_name | ) | const |
Determine if the Kokkos function exists.
| param_name | The name of the Kokkos function parameter |
| index | The index of the Kokkos function |
| bool FunctionInterface::hasKokkosFunctionByName | ( | const FunctionName & | name | ) | const |
Determine if the Kokkos function exists.
| name | The name of the Kokkos function |
|
static |
Definition at line 17 of file FunctionInterface.C.
Referenced by MFEMObject::validParams(), Control::validParams(), and FVInterfaceKernel::validParams().
|
private |
Reference to FEProblemBase instance.
Definition at line 156 of file FunctionInterface.h.
Referenced by getFunctionByName(), and hasFunctionByName().
|
private |
Reference to the object.
Definition at line 149 of file FunctionInterface.h.
Referenced by getKokkosFunctionByName().
|
private |
Parameters of the object with this interface.
Definition at line 153 of file FunctionInterface.h.
Referenced by getFunction(), getKokkosFunction(), and hasFunction().
|
private |
Thread ID.
Definition at line 159 of file FunctionInterface.h.
Referenced by getFunctionByName(), and hasFunctionByName().
1.8.14