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