https://mooseframework.inl.gov
PolyLineMeshFollowingNodeSetGenerator.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 
20 {
21 public:
23 
25 
26  std::unique_ptr<MeshBase> generate() override;
27 
28 protected:
29  // Input mesh with the nodeset
30  std::unique_ptr<MeshBase> & _input;
31 
33  const Point _starting_point;
35  const Point _starting_direction;
39  const bool _loop;
40 
42  const SubdomainName & _line_subdomain;
44  const BoundaryName &_start_boundary, &_end_boundary;
45 
47  const Real _dx;
49  const unsigned int _num_edges_between_points;
51  const bool _verbose;
52 };
const Point _starting_direction
Starting direction for the polyline.
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseBase.h:131
PolyLineMeshFollowingNodeSetGenerator(const InputParameters &parameters)
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
const bool _verbose
Whether to output to console the mesh generation process.
const Real _dx
Approximate spacing between nodes.
const bool _ignore_nodes_behind
Whether to only look in front of the polyline for nodes in the nodeset.
const bool _loop
Whether edges should form a closed loop. Will error if the nodeset does not loop back on itself...
const BoundaryName & _start_boundary
Boundary names to assign to (non-looped) polyline start and end.
Generates a polyline (open ended or looped) of Edge elements by marching along a nodeeset and trying ...
const unsigned int _num_edges_between_points
How many Edge elements to build between each point pair.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const Point _starting_point
Starting point of the polyline.
const SubdomainName & _line_subdomain
Subdomain name to assign to the polyline edge elements.
MeshGenerators are objects that can modify or add to an existing mesh.
Definition: MeshGenerator.h:33
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.