https://mooseframework.inl.gov
Loading...
Searching...
No Matches
SBMSurfaceMeshBuilder.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 "BoundaryMeshBuilder.h"
13#include "KDTree.h"
14
21{
22public:
25
26 virtual void initialSetup() override;
27
33 KDTree & getKDTree() const;
34
36 bool hasKDTree() const { return _kd_tree != nullptr; }
37
38protected:
40 std::unique_ptr<KDTree> _kd_tree;
41
43 const int _leaf_max_size;
44
46 const bool _build_kd_tree;
47};
const InputParameters & parameters() const
BoundaryMeshBuilder specialization that additionally builds a centroid KD-tree over the whole-mesh Su...
virtual void initialSetup() override
KDTree & getKDTree() const
Returns a mutable reference because KDTree::neighborSearch is non-const (nanoflann's knnSearch thread...
bool hasKDTree() const
Whether the centroid KDTree was built and is available for use.
const bool _build_kd_tree
Whether to build the centroid KD-tree.
static InputParameters validParams()
std::unique_ptr< KDTree > _kd_tree
The KDTree is constructed using the centroids of the elements in the boundary mesh.
const int _leaf_max_size
Configures KDTree leaf node size for performance tuning.