From 8aa4fe9f08a13a59202820da23731515cba75bec Mon Sep 17 00:00:00 2001 From: Stephan Seitz <stephan.seitz@fau.de> Date: Fri, 3 Jan 2020 15:21:30 +0100 Subject: [PATCH] Allow functions for Field.coordinate_transform --- pystencils/field.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pystencils/field.py b/pystencils/field.py index 507be0c2c..911ae827d 100644 --- a/pystencils/field.py +++ b/pystencils/field.py @@ -15,7 +15,8 @@ import pystencils from pystencils.alignedarray import aligned_empty from pystencils.data_types import StructType, TypedSymbol, create_type from pystencils.kernelparameters import FieldShapeSymbol, FieldStrideSymbol -from pystencils.stencil import direction_string_to_offset, offset_to_direction_string, inverse_direction +from pystencils.stencil import ( + direction_string_to_offset, inverse_direction, offset_to_direction_string) from pystencils.sympyextensions import is_integer_sequence __all__ = ['Field', 'fields', 'FieldType', 'AbstractField'] @@ -613,7 +614,10 @@ class Field(AbstractField): @property def physical_coordinates(self): - return self.coordinate_transform @ (self.coordinate_origin + pystencils.x_vector(self.spatial_dimensions)) + if hasattr(self.coordinate_transform, '__call__'): + return self.coordinate_transform(self.coordinate_origin + pystencils.x_vector(self.spatial_dimensions)) + else: + return self.coordinate_transform @ (self.coordinate_origin + pystencils.x_vector(self.spatial_dimensions)) @property def physical_coordinates_staggered(self): -- GitLab