https://mooseframework.inl.gov
Loading...
Searching...
No Matches
SurfaceSubdomainsFromAllNormalsGenerator.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
13
20{
21public:
23
25
26 std::unique_ptr<MeshBase> generate() override;
27
28protected:
29 void actOnElem(Elem * const elem,
30 const Point & normal,
31 const subdomain_id_type & sub_id,
32 MeshBase & mesh) override;
33
35 std::map<SubdomainID, RealVectorValue> _subdomain_to_normal_map;
37 std::map<SubdomainID, Elem *> _subdomain_to_starting_elem;
41};
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
This class will add subdomains to the entire mesh based on unique normals.
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
std::map< SubdomainID, RealVectorValue > _subdomain_to_normal_map
Map from subdomain IDs to the normals of the corresponding boundaries.
const bool _contiguous_assignments_only
Whether to only use the flood algorithm to group elements, without looking for the previously created...
std::map< SubdomainID, Elem * > _subdomain_to_starting_elem
Map from subdomain IDs to a pointer to the element where the subdomain-paiting started.
void actOnElem(Elem *const elem, const Point &normal, const subdomain_id_type &sub_id, MeshBase &mesh) override
Action to perform when flooding.
MeshBase & mesh