10 #ifdef MOOSE_MFEM_ENABLED 21 params.
addClassDescription(
"Declares material scalar properties based on names and coefficients " 22 "prescribed by input parameters.");
24 "prop_names",
"The names of the properties this material will have");
27 "The corresponding names of coefficients associated with the named properties");
34 _prop_names(getParam<
std::vector<
std::string>>(
"prop_names")),
35 _prop_values(getParam<
std::vector<MFEMScalarCoefficientName>>(
"prop_values"))
38 paramError(
"prop_names",
"Must match the size of prop_values");
Moose::MFEM::CoefficientManager & _properties
mfem::Coefficient & declareScalarProperty(const std::string &name, const std::vector< std::string > &blocks, const std::string &existing_or_literal)
Use an existing scalar coefficient for a property on some blocks of the mesh.
void paramError(const std::string ¶m, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
const std::vector< MFEMScalarCoefficientName > & _prop_values
virtual ~MFEMGenericFunctorMaterial()
const std::vector< std::string > & _prop_names
static InputParameters validParams()
std::vector< std::string > subdomainsToStrings(const std::vector< SubdomainName > &subdomain_names)
std::vector< SubdomainName > _subdomain_names
Stores the names of the subdomains.
registerMooseObject("MooseApp", MFEMGenericFunctorMaterial)
Declares material properties based on names and functions prescribed by input parameters.
auto index_range(const T &sizable)
static InputParameters validParams()
MFEMGenericFunctorMaterial(const InputParameters ¶meters)