www.mooseframework.org
NearestNodeThread.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 "NearestNodeLocator.h"
13 
15 {
16 public:
18  std::map<dof_id_type, std::vector<dof_id_type>> & neighbor_nodes);
19 
20  // Splitting Constructor
21  NearestNodeThread(NearestNodeThread & x, Threads::split split);
22 
23  void operator()(const NodeIdRange & range);
24 
25  void join(const NearestNodeThread & other);
26 
27  // This is the info map we're actually filling here
28  std::map<dof_id_type, NearestNodeLocator::NearestNodeInfo> _nearest_node_info;
29 
30  // The furthest percentage through the patch that had to be searched (indicative of needing to
31  // rebuild the patch)
33 
34 protected:
35  // The Mesh
36  const MooseMesh & _mesh;
37 
38  // The neighborhood nodes associated with each node
39  std::map<dof_id_type, std::vector<dof_id_type>> & _neighbor_nodes;
40 };
std::map< dof_id_type, std::vector< dof_id_type > > & _neighbor_nodes
StoredRange< std::vector< dof_id_type >::iterator, dof_id_type > NodeIdRange
Definition: MooseTypes.h:205
MeshBase & mesh
std::map< dof_id_type, NearestNodeLocator::NearestNodeInfo > _nearest_node_info
void join(const NearestNodeThread &other)
const MooseMesh & _mesh
NearestNodeThread(const MooseMesh &mesh, std::map< dof_id_type, std::vector< dof_id_type >> &neighbor_nodes)
void operator()(const NodeIdRange &range)
Save a patch of nodes that are close to each of the secondary nodes to speed the search algorithm TOD...
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition: MooseMesh.h:88
tbb::split split
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
uint8_t dof_id_type