diff --git a/python/dune/perftool/pdelab/localoperator.py b/python/dune/perftool/pdelab/localoperator.py index 7fe95bbe858be0aa74df2c313ad6bd96a7507e68..549cd30cbf2fce97e3f071bf428f14bd4e447e31 100644 --- a/python/dune/perftool/pdelab/localoperator.py +++ b/python/dune/perftool/pdelab/localoperator.py @@ -1026,13 +1026,19 @@ def generate_localoperator_kernels(operator): def generate_localoperator_file(kernels, filename): + logger = logging.getLogger(__name__) + operator_methods = [] for k in kernels.values(): operator_methods.extend(k) # Generate all the realizations of sum factorization kernel objects needed in this operator + sfkernels = [sf for sf in retrieve_cache_items("kernelimpl")] + if sfkernels: + logger.info("generate_localoperator_kernels: Create {} sumfact kernel realizations".format(len(sfkernels))) + from dune.perftool.sumfact.realization import realize_sumfact_kernel_function - for sf, qp in retrieve_cache_items("kernelimpl"): + for sf, qp in sfkernels: from dune.perftool.sumfact.tabulation import set_quadrature_points set_quadrature_points(qp) operator_methods.append(realize_sumfact_kernel_function(sf))