17 #include "libmesh/elem_range.h" 18 #include "libmesh/threads.h" 41 const unsigned int linear_system_num,
42 const std::set<TagID> & vector_tags,
43 const std::set<TagID> & matrix_tags);
51 using ElemInfoRange = StoredRange<MooseMesh::const_elem_info_iterator, const ElemInfo *>;
FEProblemBase & _fe_problem
Reference to the problem.
const std::set< TagID > & _matrix_tags
The matrix tags this thread contributes to.
SubdomainID _old_subdomain
The subdomain for the last element.
void printBlockExecutionInformation() const
Print ordering of objects executed on each block.
void operator()(const ElemInfoRange &range)
Operator which is used to execute the thread over a certain iterator range.
void join(const ComputeLinearFVElementalThread &)
Join threads at the end of the execution.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
const unsigned int _system_number
The number of the linear system we are contributing to.
StoredRange< MooseMesh::const_elem_info_iterator, const ElemInfo * > ElemInfoRange
SubdomainID _subdomain
The subdomain for the current element.
Finite volume kernel that contributes approximations of volumetric integral terms to the matrix and r...
Adds contributions from volumetric terms discretized using the finite volume method to the matrix and...
void setupSystemContributionObjects()
Setup the contribution objects before we start the loop.
const std::set< TagID > & _vector_tags
The vector tags this thread contributes to.
bool _system_contrib_objects_ready
Boolean that is used to check if the kernels are ready to start contributing to the system...
void fetchBlockSystemContributionObjects()
Fetch contribution objects that belong to a specific spatial subdomain.
ComputeLinearFVElementalThread(FEProblemBase &fe_problem, const unsigned int linear_system_num, const std::set< TagID > &vector_tags, const std::set< TagID > &matrix_tags)
Class constructor.
void printGeneralExecutionInformation() const
Print list of object types executed and in which order.
std::vector< LinearFVElementalKernel * > _fv_kernels
The set of cached elemental kernels which will be executed on a given element.