MoReFEM
|
Intermediate traits class that provide the type for a parameter defined at dof. More...
#include <ParameterAtDof.hpp>
Public Types | |
using | type |
Alias which provides the parameter type. | |
Private Types | |
template<ParameterNS::Type TypeTT, TIME_MANAGER_TEMPLATE_KEYWORD TimeManagerTT> | |
using | intermediate_policy_type = ::MoReFEM::ParameterNS::Policy::AtDof<TypeTT, TimeManagerTT, NfeltSpaceT> |
Alias which the proper prototype for ParameterInstance. | |
Intermediate traits class that provide the type for a parameter defined at dof.
TypeT | ParameterNS::Type might be scalar or vectorial. |
NfeltSpaceT | If 1, only one FEltSpace is expected; of any dimension. If 2, two are expected: one that deals with LocalFEltSpace the same dimension of the mesh, the other for this dimension minus 1. 3 is possible as well, going up to dimension minus 2. |
A Parameter is first and foremost a spatial-dependent data: its main purpose is to describe the value of a physical parameter at a given local position. However, we might also want to apply a decoupled time dependency, i.e. consider value of the parameter might be determined by:
P(x, t) = f(x) * g(t)
In this case, g(t) is stored as a function and is recomputed at each Parameter::TimeUpdate() calls (such calls should therefore be located in Model::InitializeStep() where the time update actually occur).
You shouldn't have to deal with this class directly; it's just a bridge to deal with the fact ParameterNS::Policy::ParameterAtDof gets an additional template parameter (namely the number of FEltSpace).
|
private |
Alias which the proper prototype for ParameterInstance.
ParameterNS::Policy::AtDof does not work directly, as there are 2 template arguments whereas template template argument of ParameterInstance expects only one.
using MoReFEM::Internal::ParameterNS::ParameterAtDofImpl< TypeT, TimeManagerT, TimeDependencyT, NfeltSpaceT >::type |
Alias which provides the parameter type.