20 "combinatorial_geometry",
21 "Function expression encoding a combinatorial geometry");
23 "Subdomain id to set for inside of the combinatorial");
24 params.
addParam<SubdomainName>(
"block_name",
25 "Subdomain name to set for inside of the combinatorial");
27 "Uses a parsed expression (`combinatorial_geometry`) to determine if an "
28 "element (via its centroid) is inside the region defined by the expression and "
29 "assigns a new block ID.");
36 _block_id(parameters.get<subdomain_id_type>(
"block_id"))
59 mesh->set_subdomain_name(getParam<subdomain_id_type>(
"block_id"),
60 getParam<SubdomainName>(
"block_name"));
registerMooseObject("MooseApp", ParsedSubdomainMeshGenerator)
std::vector< GenericReal< is_ad > > _func_params
Array to stage the parameters passed to the functions when calling Eval.
GenericReal< is_ad > evaluate(SymFunctionPtr &, const std::string &object_name="")
Evaluate FParser object and check EvalError.
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
A base class for mesh generators that Use a parsed expression to assign new subdomain id(s)
static InputParameters validParams()
std::vector< unsigned int > _eeid_indices
Indices of the extra element ids used in the parsed expression.
std::vector< subdomain_id_type > _excluded_ids
A list of excluded subdomain ids that will not be changed even if they are in the combinatorial geome...
SymFunctionPtr _func_F
function parser object describing the combinatorial geometry
MeshGenerator for defining a Subdomain inside or outside of combinatorial geometry.
const subdomain_id_type _block_id
Block ID to assign to the region.
void setBlockName(std::unique_ptr< MeshBase > &mesh) override
Set block name for the block with new id if applicable.
static InputParameters validParams()
void assignElemSubdomainID(Elem *elem) override
Assign the subdomain id to the element based on the parsed expression.
ParsedSubdomainMeshGenerator(const InputParameters ¶meters)