diff --git a/hog/operator_generation/kernel_types.py b/hog/operator_generation/kernel_types.py index a50795fd51e9fa51741531d20f92307ca9159a95..efbda634701d937cd04d0a0866b6de0165fc1fbe 100644 --- a/hog/operator_generation/kernel_types.py +++ b/hog/operator_generation/kernel_types.py @@ -614,12 +614,17 @@ class AssembleDiagonalWrapper(KernelWrapperType): type_descriptor: HOGType, dst_field: str | None = None, dims: List[int] = [2, 3], + fnc_name: str | None = None, + name: str | None = None, invert: bool = True ): - if invert: - self.name = "computeInverseDiagonalOperatorValues" - else: - self.name = "computeDiagonalOperatorValues" + if name is None: + if invert: + name = "computeInverseDiagonalOperatorValues" + else: + name = "computeDiagonalOperatorValues" + + self.name = name if dst_field is None: if invert: @@ -668,10 +673,11 @@ class AssembleDiagonalWrapper(KernelWrapperType): else: return 'WALBERLA_ABORT( "Not implemented." );' - if invert: - fnc_name = "inverse diagonal entries" - else: - fnc_name = "diagonal entries" + if fnc_name is None: + if invert: + fnc_name = "inverse diagonal entries" + else: + fnc_name = "diagonal entries" template_str =( f'this->startTiming( "{self.name}" );\n' @@ -904,8 +910,7 @@ class LumpWrapper(AssembleDiagonalWrapper): def __init__(self, fe_space: FunctionSpace, type_descriptor: HOGType, dst_field: str = "lumpedDiag_", dims: List[int] = [2, 3]): - super().__init__(fe_space, type_descriptor, dst_field, dims, False) - self.name = "computeLumpedDiagonalValues" + super().__init__(fe_space, type_descriptor, dst_field, dims, "lumped diagonal entries", "computeLumpedDiagonalValues", False) @property def kernel_type(self) -> KernelType: