17#include "libmesh/elem_range.h"
18#include "libmesh/threads.h"
41 const unsigned int linear_system_num,
43 const std::set<TagID> & vector_tags,
44 const std::set<TagID> & matrix_tags);
53 using FaceInfoRange = StoredRange<MooseMesh::const_face_info_iterator, const FaceInfo *>;
Adds contributions from face terms discretized using the finite volume method to the matrix and right...
const std::set< TagID > & _vector_tags
The vector tags this thread contributes to.
void join(const ComputeLinearFVFaceThread &)
Join threads at the end of the execution.
SubdomainID _neighbor_subdomain
The subdomain for the current neighbor.
SubdomainID _old_neighbor_subdomain
The subdomain for the last neighbor.
void operator()(const FaceInfoRange &range)
Operator which is used to execute the thread over a certain iterator range.
std::set< LinearFVFluxKernel * > _fv_flux_kernels
Combined LinearFVFluxKernels which will be used to contribute to a system.
const std::set< TagID > & _matrix_tags
The matrix tags this thread contributes to.
FEProblemBase & _fe_problem
Reference to the problem.
void printBlockExecutionInformation() const
Print ordering of objects executed on each block.
StoredRange< MooseMesh::const_face_info_iterator, const FaceInfo * > FaceInfoRange
std::vector< LinearFVFluxKernel * > _fv_flux_kernels_elem
Kernels which will only contribute to a matrix from the element-side of the face.
SubdomainID _subdomain
The subdomain for the current element.
std::vector< LinearFVFluxKernel * > _fv_flux_kernels_neighbor
Kernels which will only contribute to a matrix from the neighbor-side of the face.
void fetchBlockSystemContributionObjects()
Fetch LinearFVFluxKernels for a given block.
const Moose::FV::LinearFVComputationMode _mode
The mode in which this thread is operating.
void setupSystemContributionObjects()
Setup the contribution objects before we start the loop.
SubdomainID _old_subdomain
The subdomain for the last element.
const unsigned int _system_number
The number of the linear system we are contributing to.
bool _system_contrib_objects_ready
Boolean that is used to check if the kernels are ready to start contributing to the system.
void printGeneralExecutionInformation() const
Print list of executed object types together with the execution order.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Finite volume kernel that contributes approximations of discretized face flux terms to the matrix and...