https://mooseframework.inl.gov
Loading...
Searching...
No Matches
ComputeNodalKernelsThread.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 "ThreadedNodeLoop.h"
14
15#include "libmesh/node_range.h"
16
17// Forward declarations
18class FEProblemBase;
19class AuxiliarySystem;
20class NodalKernelBase;
21
23 : public ThreadedNodeLoop<ConstNodeRange, ConstNodeRange::const_iterator>
24{
25public:
28 const std::set<TagID> & tags);
29
30 // Splitting Constructor
32
33 virtual void pre() override;
34
35 virtual void onNode(ConstNodeRange::const_iterator & node_it) override;
36
37 void join(const ComputeNodalKernelsThread & /*y*/);
38
39protected:
41 void printGeneralExecutionInformation() const override;
42
44
46
47 const std::set<TagID> & _tags;
48
50
52
54 unsigned int _num_cached;
55};
A system that holds auxiliary variables.
void printGeneralExecutionInformation() const override
Print execution order of object types in the loop.
unsigned int _num_cached
Number of contributions cached up.
const std::set< TagID > & _tags
MooseObjectWarehouse< NodalKernelBase > * _nkernel_warehouse
virtual void onNode(ConstNodeRange::const_iterator &node_it) override
virtual void pre() override
Called before the node range loop.
void join(const ComputeNodalKernelsThread &)
MooseObjectTagWarehouse< NodalKernelBase > & _nodal_kernels
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
A storage container for MooseObjects that inherit from SetupInterface.
A storage container for MooseObjects that inherit from SetupInterface.
Base class for creating new types of nodal kernels.