Index: /issm/trunk-jpl/src/m/classes/model.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.py	(revision 27518)
+++ /issm/trunk-jpl/src/m/classes/model.py	(revision 27519)
@@ -907,4 +907,10 @@
         md.materials.rheology_n = project2d(md, md.materials.rheology_n, 1)
 
+        # dsl
+        if np.size(md.dsl.sea_surface_height_above_geoid) > 1:
+            md.dsl.sea_surface_height_above_geoid = project2d(md, md.dsl.sea_surface_height_above_geoid, 1)
+        if np.size(md.dsl.sea_water_pressure_at_sea_floor) > 1:
+            md.dsl.sea_water_pressure_at_sea_floor = project2d(md, md.dsl.sea_water_pressure_at_sea_floor, 1)
+
         # Damage
         if md.damage.isdamage:
Index: /issm/trunk-jpl/src/m/extrusion/project2d.py
===================================================================
--- /issm/trunk-jpl/src/m/extrusion/project2d.py	(revision 27518)
+++ /issm/trunk-jpl/src/m/extrusion/project2d.py	(revision 27519)
@@ -40,5 +40,8 @@
         projection_value = value[(layer - 1) * md3d.mesh.numberofvertices2d:layer * md3d.mesh.numberofvertices2d]
     elif value.shape[0] == md3d.mesh.numberofvertices + 1:
-        projection_value = np.vstack((value[(layer - 1) * md3d.mesh.numberofvertices2d:layer * md3d.mesh.numberofvertices2d], value[-1]))
+        if np.ndim(value) == 1:
+            projection_value = np.hstack((value[(layer - 1) * md3d.mesh.numberofvertices2d:layer * md3d.mesh.numberofvertices2d], value[-1]))
+        else:
+            projection_value = np.vstack((value[(layer - 1) * md3d.mesh.numberofvertices2d:layer * md3d.mesh.numberofvertices2d], value[-1]))
     else:
         projection_value = value[(layer - 1) * md3d.mesh.numberofelements2d:layer * md3d.mesh.numberofelements2d]
