- id_nameExisting extra integer ID names that is used to generate a new extra integer ID by finding unique combinations of their values
C++ Type:std::vector<ExtraElementIDName>
Unit:(no unit assumed)
Controllable:No
Description:Existing extra integer ID names that is used to generate a new extra integer ID by finding unique combinations of their values
- inputName of an existing mesh generator to which we assign extra element IDs
C++ Type:MeshGeneratorName
Unit:(no unit assumed)
Controllable:No
Description:Name of an existing mesh generator to which we assign extra element IDs
- new_id_nameNew extra integer ID name
C++ Type:ExtraElementIDName
Unit:(no unit assumed)
Controllable:No
Description:New extra integer ID name
UniqueExtraIDMeshGenerator
Add a new extra element integer ID by finding unique combinations of the existing extra element integer ID values
Overview
UniqueExtraIDMeshGenerator
object applies a new set of extra IDs determined by parsing existing extra IDs. First, the existing extra IDs of each element are parsed to find a set of unique combinations of their ID values. Then, a new ID value are determined to individual unique combination and assign it to the corresponding element. The new ID is embedded in all the existing IDs, i.e. elements with a unique new ID value have a unique value for all existing IDs.
The UniqueExtraIDMeshGenerator
requires the following parameters:
"id_name": list of existing extra ID names.
"new_id_name": name of the new extra ID name.
Optionally, users can control how the new ID values are determined by using "new_id_rule", which is a vector of unsigned integers. If "new_id_rule" is provided, new ID values are determined by multiplying the provided integers to the corresponding existing ID values and then summing the resulting values as: new_id_value = new_id_rule[0] * extra_id_value[0] + ... + new_id_rule[n] * extra_id_value[n].
Example Syntax
[Mesh]
[fmg]
type = FileMeshGenerator
file = unique_id.e
exodus_extra_element_integers = 'id1 id0'
[]
[parse_id]
type = UniqueExtraIDMeshGenerator
input = fmg
id_name = 'id1 id0'
new_id_name = 'parsed_id'
[]
[]
(moose/test/tests/meshgenerators/unique_extra_id_mesh_generator/unique_id.i)Input Parameters
- new_id_ruleVector of unsigned integers to determine new integer ID values by multiplying the provided integers to the corresponding existing ID values and then summing the resulting values
C++ Type:std::vector<unsigned int>
Unit:(no unit assumed)
Controllable:No
Description:Vector of unsigned integers to determine new integer ID values by multiplying the provided integers to the corresponding existing ID values and then summing the resulting values
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Set the enabled status of the MooseObject.
- save_with_nameKeep the mesh from this mesh generator in memory with the name specified
C++ Type:std::string
Unit:(no unit assumed)
Controllable:No
Description:Keep the mesh from this mesh generator in memory with the name specified
Advanced Parameters
- nemesisFalseWhether or not to output the mesh file in the nemesisformat (only if output = true)
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Whether or not to output the mesh file in the nemesisformat (only if output = true)
- outputFalseWhether or not to output the mesh file after generating the mesh
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Whether or not to output the mesh file after generating the mesh
- show_infoFalseWhether or not to show mesh info after generating the mesh (bounding box, element types, sidesets, nodesets, subdomains, etc)
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Whether or not to show mesh info after generating the mesh (bounding box, element types, sidesets, nodesets, subdomains, etc)