diff --git a/pystencils/field.py b/pystencils/field.py index 507be0c2cad932eed64419b70e1b55783cff4273..911ae827de1f7e386458f90e69599561712cf853 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):