https://mooseframework.inl.gov
Loading...
Searching...
No Matches
ComputeNodalAuxVarsThread.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// MOOSE includes
13#include "ThreadedNodeLoop.h"
14
15#include "libmesh/node_range.h"
16
17// Forward declarations
18class AuxiliarySystem;
19class FEProblemBase;
20template <typename T>
22
23template <typename AuxKernelType>
25 : public ThreadedNodeLoop<ConstNodeRange, ConstNodeRange::const_iterator>
26{
27public:
30
31 // Splitting Constructor
33
34 void onNode(ConstNodeRange::const_iterator & nd) override;
35
36 void join(const ComputeNodalAuxVarsThread & /*y*/);
37
38 void subdomainChanged();
39
40 void post() override;
41
42protected:
44 void printGeneralExecutionInformation() const override;
45
47
50
51 std::set<SubdomainID> _block_ids;
52
54};
A system that holds auxiliary variables.
const MooseObjectWarehouse< AuxKernelType > & _storage
Storage object containing active AuxKernel objects.
std::set< SubdomainID > _block_ids
void printGeneralExecutionInformation() const override
Print information about the loop, mostly order of execution of objects.
void join(const ComputeNodalAuxVarsThread &)
static Threads::spin_mutex writable_variable_mutex
void onNode(ConstNodeRange::const_iterator &nd) override
void post() override
Called after the node range loop.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
A storage container for MooseObjects that inherit from SetupInterface.