https://mooseframework.inl.gov
Loading...
Searching...
No Matches
PatternedMeshGenerator.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"
13#include "libmesh/replicated_mesh.h"
14
26{
27public:
29
31
32 std::unique_ptr<MeshBase> generate() override;
33
34protected:
40 std::unique_ptr<MeshBase> generate(std::vector<std::unique_ptr<ReplicatedMesh>> * input_meshes);
41
43 const std::vector<MeshGeneratorName> & _input_names;
44
46 const std::vector<std::unique_ptr<MeshBase> *> _mesh_ptrs;
47
49 const std::vector<std::vector<unsigned int>> & _pattern;
50
58 void
59 mergeSubdomainNameMaps(std::map<subdomain_id_type, std::string> & main_subdomain_map,
60 const std::map<subdomain_id_type, std::string> & increment_subdomain_map);
61
65};
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
Reads one or more 2D mesh files and stitches them together based on a provided two-dimensional patter...
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
const std::vector< std::unique_ptr< MeshBase > * > _mesh_ptrs
Holds pointers to the meshes before they are generated.
const std::vector< std::vector< unsigned int > > & _pattern
The pattern, starting with the upper left corner.
static InputParameters validParams()
void mergeSubdomainNameMaps(std::map< subdomain_id_type, std::string > &main_subdomain_map, const std::map< subdomain_id_type, std::string > &increment_subdomain_map)
Merges the subdomain name maps between two meshes, throws an error if input maps contain shared subdo...
const std::vector< MeshGeneratorName > & _input_names
The mesh generators to read.