www.mooseframework.org
AllNodesSendListThread.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* DO NOT MODIFY THIS HEADER */
3 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
4 /* */
5 /* (c) 2010 Battelle Energy Alliance, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by Battelle Energy Alliance, LLC */
9 /* Under Contract No. DE-AC07-05ID14517 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* See COPYRIGHT for full restrictions */
13 /****************************************************************/
14 
15 #ifndef ALLNODESSENDLISTTHREAD_H
16 #define ALLNODESSENDLISTTHREAD_H
17 
18 // MOOSE includes
19 #include "MooseMesh.h"
20 #include "ThreadedNodeLoop.h"
21 
22 // libMesh forward declarations
23 namespace libMesh
24 {
25 template <typename T>
27 }
28 
30  : public ThreadedNodeLoop<ConstNodeRange, ConstNodeRange::const_iterator>
31 {
32 public:
34  const MooseMesh & mesh,
35  const std::vector<unsigned int> & var_nums,
36  const System & system);
37 
38  AllNodesSendListThread(AllNodesSendListThread & x, Threads::split split);
39 
40  virtual void onNode(ConstNodeRange::const_iterator & nd) override;
41 
42  void join(const AllNodesSendListThread & y);
43 
44  // Make the list sorted and ensure each entry is unique
45  void unique();
46 
47  // Return the send_list
48  const std::vector<dof_id_type> & send_list() const;
49 
50 protected:
52 
53 private:
54  std::vector<unsigned int> _var_nums;
55 
56  const System & _system;
57 
58  const unsigned int _system_number;
59 
60  const dof_id_type _first_dof, _end_dof;
61 
62  std::vector<dof_id_type> _send_list;
63 };
64 
65 #endif /* ALLNODESSENDLISTTHREAD_H */
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
static PetscErrorCode Vec x
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
nl system()
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition: MooseMesh.h:74
std::vector< unsigned int > _var_nums
const unsigned int _system_number
std::vector< dof_id_type > _send_list