https://mooseframework.inl.gov
Loading...
Searching...
No Matches
UniqueExtraIDMeshGenerator.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
12#include "MeshGenerator.h"
17{
18public:
21
22 virtual std::unique_ptr<MeshBase> generate() override;
23
24protected:
26 std::unique_ptr<MeshBase> & _input;
28 const std::vector<ExtraElementIDName> _extra_ids;
30 const bool _use_new_id_rule;
32 const bool _has_restriction;
33};
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
MeshGenerators are objects that can modify or add to an existing mesh.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
Add a new extra ID by finding unique combinations of existing extra ID values.
virtual std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
const bool _has_restriction
Whether or not we add the new extra ID for elements in certain subdomains.
static InputParameters validParams()
const bool _use_new_id_rule
lag to indicate if new_id_rule is defined
std::unique_ptr< MeshBase > & _input
input mesh for adding element IDs
const std::vector< ExtraElementIDName > _extra_ids
existing extra ID names to be used for adding a new extra ID