https://mooseframework.inl.gov
Loading...
Searching...
No Matches
XYTriangleBoundaryLayerGenerator.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
19{
20public:
22
24
25 std::unique_ptr<MeshBase> generate() override;
26
27protected:
29 std::unique_ptr<MeshBase> & _input;
30
32 const Real _thickness;
33
35 const unsigned int _num_layers;
36
38 const Real _layer_bias;
39
42
44 const std::vector<BoundaryName> _boundary_names;
45
47 const BoundaryName _interface_name;
48
50 const BoundaryName _surface_name;
51
53 const SubdomainName _subdomain_name;
54
57
60
62 const bool _keep_input;
63};
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
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition MooseEnum.h:55
Generate a 2D layered mesh that represents a conformal boundary layer along the boundary of an input ...
BoundaryLayerDirection
Whether the boundary layer is grown outward or inward with respect to the input boundary.
const bool _keep_input
Whether to keep the input mesh in the final output (stitched to the boundary layer)
const std::vector< BoundaryName > _boundary_names
Optional subset of boundary names on the input mesh that define the seed boundary.
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
const BoundaryName _interface_name
Optional boundary name for the interface between the generated boundary layer and the input mesh.
std::unique_ptr< MeshBase > & _input
Input mesh defining the boundary on which to grow the boundary layer.
const unsigned int _num_layers
Number of element layers in the boundary layer.
const SubdomainID _output_subdomain_id
Optional subdomain id for the generated boundary layer.
const MooseEnum _tri_elem_type
Triangular element type for the boundary layer.
const BoundaryName _surface_name
Optional boundary name for the outer surface of the generated boundary layer.
const Real _thickness
The total thickness of the boundary layer to be created.
enum XYTriangleBoundaryLayerGenerator::BoundaryLayerDirection _boundary_layer_direction
const Real _layer_bias
Bias factor for the thickness of each layer.
const SubdomainName _subdomain_name
Optional subdomain name for the generated boundary layer.