diff --git a/pystencils/field.py b/pystencils/field.py
index 82ece20709f1b4b5f0114dbb409331b077541b1f..c1720654867fe5b86ad321e1a1c6b78ec9b328f6 100644
--- a/pystencils/field.py
+++ b/pystencils/field.py
@@ -292,7 +292,11 @@ class Field(AbstractField):
         self.latex_name = None  # type: Optional[str]
 
     def new_field_with_different_name(self, new_name):
-        return Field(new_name, self.field_type, self._dtype, self._layout, self.shape, self.strides)
+        if self.has_fixed_shape:
+            return Field(new_name, self.field_type, self._dtype, self._layout, self.shape, self.strides)
+        else:
+            return Field.create_generic(new_name, self.spatial_dimensions, self.dtype.numpy_dtype,
+                                        self.index_dimensions, self._layout, self.index_shape, self.field_type)
 
     @property
     def spatial_dimensions(self) -> int: