From 801b000bee94da72405961b8c9407aba9e327d6f Mon Sep 17 00:00:00 2001 From: Frederik Hennig <frederik.hennig@fau.de> Date: Mon, 28 Oct 2024 13:22:37 +0100 Subject: [PATCH] fix usage of kernel parameter API in boundary handling --- src/pystencils/backend/kernelfunction.py | 2 +- src/pystencils/boundaries/boundaryhandling.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pystencils/backend/kernelfunction.py b/src/pystencils/backend/kernelfunction.py index 9275c55ec..886817930 100644 --- a/src/pystencils/backend/kernelfunction.py +++ b/src/pystencils/backend/kernelfunction.py @@ -90,7 +90,7 @@ class KernelParameter: return TypedSymbol(self.name, self.dtype) @property - def fields(self) -> tuple[Field, ...]: + def fields(self) -> Sequence[Field]: """Set of fields associated with this parameter.""" return self._fields diff --git a/src/pystencils/boundaries/boundaryhandling.py b/src/pystencils/boundaries/boundaryhandling.py index 52ded8ab2..d46cc7a8e 100644 --- a/src/pystencils/boundaries/boundaryhandling.py +++ b/src/pystencils/boundaries/boundaryhandling.py @@ -244,9 +244,9 @@ class BoundaryHandling: for b_obj, idx_arr in b[self._index_array_name].boundary_object_to_index_list.items(): kwargs[self._field_name] = b[self._field_name] kwargs['indexField'] = idx_arr - data_used_in_kernel = (p.fields.pop().name + data_used_in_kernel = (p.fields[0].name for p in self._boundary_object_to_boundary_info[b_obj].kernel.parameters - if bool(p.get_properties(FieldBasePtr)) and p.fields.pop().name not in kwargs) + if bool(p.get_properties(FieldBasePtr)) and p.fields[0].name not in kwargs) kwargs.update({name: b[name] for name in data_used_in_kernel}) self._boundary_object_to_boundary_info[b_obj].kernel(**kwargs) @@ -260,9 +260,9 @@ class BoundaryHandling: arguments = kwargs.copy() arguments[self._field_name] = b[self._field_name] arguments['indexField'] = idx_arr - data_used_in_kernel = (p.fields.pop().name + data_used_in_kernel = (p.fields[0].name for p in self._boundary_object_to_boundary_info[b_obj].kernel.parameters - if bool(p.get_properties(FieldBasePtr)) and p.fields.pop().name not in arguments) + if bool(p.get_properties(FieldBasePtr)) and p.fields[0].name not in arguments) arguments.update({name: b[name] for name in data_used_in_kernel if name not in arguments}) kernel = self._boundary_object_to_boundary_info[b_obj].kernel -- GitLab