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