diff --git a/python/dune/perftool/pdelab/localoperator.py b/python/dune/perftool/pdelab/localoperator.py index 9f196a654599cf5a48978f0606148c94c79cbaf4..7fad25e67d79af09578cecaa47215a2da24e99e2 100644 --- a/python/dune/perftool/pdelab/localoperator.py +++ b/python/dune/perftool/pdelab/localoperator.py @@ -819,6 +819,13 @@ def generate_jacobian_kernels(form, original_form): from dune.perftool.ufl.preprocess import preprocess_form jacform = preprocess_form(jacform).preprocessed_form + if get_form_option("block_preconditioner_diagonal"): + from dune.perftool.ufl.transformations.blockpreconditioner import diagonal_block_jacobian + jacform = diagonal_block_jacobian(jacform) + if get_form_option("block_preconditioner_offdiagonal"): + from dune.perftool.ufl.transformations.blockpreconditioner import offdiagonal_block_jacobian + jacform = offdiagonal_block_jacobian(jacform) + operator_kernels = {} with global_context(form_type="jacobian"): if get_form_option("generate_jacobians"):