https://mooseframework.inl.gov
DeleteElementsNearMeshGenerator.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 
14 class KDTree;
15 
20 {
21 public:
23 
25 
26  virtual std::unique_ptr<MeshBase> generate() override;
27 
28 protected:
29  virtual bool shouldDelete(const Elem * elem) override;
30 
31 private:
33  std::unique_ptr<MeshBase> & _proximity_mesh;
35  std::unique_ptr<libMesh::PointLocatorBase> _pl;
37  std::shared_ptr<KDTree> _kd_tree;
39  const Real _distance;
40 };
std::shared_ptr< KDTree > _kd_tree
KD Tree to find the nearest side Qp in the proximity mesh.
Definition: KDTree.h:28
This class deletes elements from the mesh data structure after it has been generated or read but befo...
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseBase.h:131
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
const Real _distance
Distance for deletion criterion.
virtual bool shouldDelete(const Elem *elem) override
Method that returns a Boolean indicating whether an element should be removed from the mesh...
virtual std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
DeleteElementsNearMeshGenerator(const InputParameters &parameters)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::unique_ptr< MeshBase > & _proximity_mesh
Mesh used to define the proximity deletion criterion.
Deletes elements close to another mesh.
std::unique_ptr< libMesh::PointLocatorBase > _pl
Point locator to weed out elements inside the proximity mesh.