43 std::vector<JacobianBlock *> & blocks,
44 const std::set<TagID> & tags);
54 virtual void postElement(
const Elem * elem)
override;
56 virtual void postInternalSide(
const Elem * elem,
unsigned int side)
override;
Helper class for holding the preconditioning blocks to fill.
virtual void postElement(const Elem *elem) override
Called after the element assembly is done (including surface assembling)
ComputeJacobianBlocksThread(FEProblemBase &fe_problem, std::vector< JacobianBlock *> &blocks, const std::set< TagID > &tags)
SparseMatrix< Number > & _jacobian
virtual void postInternalSide(const Elem *elem, unsigned int side) override
Called after evaluations on an element internal side.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Specialization for filling multiple "small" preconditioning matrices simulatenously.
libMesh::System & _precond_system
JacobianBlock(libMesh::System &precond_system, SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar)
virtual ~ComputeJacobianBlocksThread()
std::vector< dof_id_type > _dof_indices
std::vector< JacobianBlock * > _blocks
std::vector< dof_id_type > _dof_neighbor_indices
void join(const ComputeJacobianThread &)