www.mooseframework.org
ComputeNodalKernelsThread.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 COMPUTENODALKERNELSTHREAD_H
16 #define COMPUTENODALKERNELSTHREAD_H
17 
18 #include "ThreadedNodeLoop.h"
19 
20 #include "libmesh/node_range.h"
21 
22 // Forward declarations
23 class FEProblemBase;
24 class AuxiliarySystem;
25 class NodalKernel;
26 
28  : public ThreadedNodeLoop<ConstNodeRange, ConstNodeRange::const_iterator>
29 {
30 public:
32  const MooseObjectWarehouse<NodalKernel> & nodal_kernels);
33 
34  // Splitting Constructor
35  ComputeNodalKernelsThread(ComputeNodalKernelsThread & x, Threads::split split);
36 
37  virtual void pre() override;
38 
39  virtual void onNode(ConstNodeRange::const_iterator & node_it) override;
40 
41  void join(const ComputeNodalKernelsThread & /*y*/);
42 
43 protected:
45 
47 
49  unsigned int _num_cached;
50 };
51 
52 #endif // COMPUTENODALKERNELSTHREAD_H
const MooseObjectWarehouse< NodalKernel > & _nodal_kernels
void join(const ComputeNodalKernelsThread &)
virtual void onNode(ConstNodeRange::const_iterator &node_it) override
Called for each node.
ComputeNodalKernelsThread(FEProblemBase &fe_problem, const MooseObjectWarehouse< NodalKernel > &nodal_kernels)
static PetscErrorCode Vec x
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
virtual void pre() override
Called before the node range loop.
unsigned int _num_cached
Number of contributions cached up.
Base class for creating new types of boundary conditions.
Definition: NodalKernel.h:50
A system that holds auxiliary variables.