https://mooseframework.inl.gov
ConcentricCircleMeshGenerator.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 "MooseEnum.h"
14 
19 {
20 public:
22 
24 
25  std::unique_ptr<MeshBase> generate() override;
26 
27 protected:
29  unsigned int _num_sectors;
30 
32  std::vector<Real> _radii;
33 
35  std::vector<unsigned int> _rings;
36 
40 
43 
45  unsigned int _smoothing_max_it;
46 
49 };
unsigned int _smoothing_max_it
Iteration number for Laplace smoothing.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
bool _preserve_volumes
Volume preserving function is optional.
std::vector< Real > _radii
Radii of concentric circles.
Generates a mesh based on concentric circles, given all the parameters.
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
std::vector< unsigned int > _rings
Number of rings in each circle or in the enclosing square.
bool _has_outer_square
Adding the enclosing square is optional.
MooseEnum _portion
Control of which portion of mesh will be developed.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition: MooseEnum.h:33
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
ConcentricCircleMeshGenerator(const InputParameters &parameters)
const InputParameters & parameters() const
Get the parameters of the object.
unsigned int _num_sectors
Number of sectors in one quadrant.
MeshGenerators are objects that can modify or add to an existing mesh.
Definition: MeshGenerator.h:32