www.mooseframework.org
SpiralAnnularMesh.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 "MooseMesh.h"
13 
18 {
19 public:
21 
23  SpiralAnnularMesh(const SpiralAnnularMesh & /* other_mesh */) = default;
24 
25  // No copy
26  SpiralAnnularMesh & operator=(const SpiralAnnularMesh & other_mesh) = delete;
27 
28  virtual std::unique_ptr<MooseMesh> safeClone() const override;
29 
30  virtual void buildMesh() override;
31 
32 protected:
35 
38 
42 
44  const unsigned int _nodes_per_ring;
45 
47  const bool _use_tri6;
48 
53  unsigned int _num_rings;
54 
57 
58  // Width of the initial layer of elements around the cylinder.
59  // This number should be approximately 2 * pi * inner_radius / nodes_per_ring
60  // to ensure that the initial layer of elements is almost
61  // equilateral
63 };
virtual std::unique_ptr< MooseMesh > safeClone() const override
A safer version of the clone() method that hands back an allocated object wrapped in a smart pointer...
const Real _outer_radius
Radius of the outer circle. Logically, it&#39;s bigger that inner_radius.
const Real _inner_radius
Radius of the inner circle.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
Real _radial_bias
Factor to increase initial_delta_r for each ring.
const boundary_id_type _exterior_bid
unsigned int _num_rings
Number of rings.You can&#39;t specify both the number of rings and the radial bias if you want to match a...
int8_t boundary_id_type
SpiralAnnularMesh(const InputParameters &parameters)
SpiralAnnularMesh & operator=(const SpiralAnnularMesh &other_mesh)=delete
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition: MooseMesh.h:88
const Real _initial_delta_r
static InputParameters validParams()
virtual void buildMesh() override
Must be overridden by child classes.
const boundary_id_type _cylinder_bid
The boundary id to use for the cylinder.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Mesh generated from parameters.
const InputParameters & parameters() const
Get the parameters of the object.
const bool _use_tri6
Generate mesh of TRI6 elements instead of TRI3 elements.
const unsigned int _nodes_per_ring
Number of nodes on each ring.