Index: /issm/trunk-jpl/src/m/classes/model.js
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.js	(revision 22323)
+++ /issm/trunk-jpl/src/m/classes/model.js	(revision 22324)
@@ -207,4 +207,5 @@
 			md.mesh.long                        = mesh2d.long;
 			md.mesh.epsg                        = mesh2d.epsg;
+			md.mesh.scale_factor                = mesh2d.scale_factor;
 
 			md.mesh.vertexonboundary            = mesh2d.vertexonboundary;
@@ -305,4 +306,5 @@
 			md.mesh.lat=project3d(md,'vector',md.mesh.lat,'type','node');
 			md.mesh.long=project3d(md,'vector',md.mesh.long,'type','node');
+			md.mesh.scale_factor=project3d(md,'vector',md.mesh.scale_factor,'type','node');
 
 			md.geometry=md.geometry.extrude(md);
@@ -529,4 +531,6 @@
 			if (numel(md.mesh.long) === md.mesh.numberofvertices)
 				md.mesh.long=project2d(md,md.mesh.long,1);
+			if (numel(md.mesh.scale_factor) === md.mesh.numberofvertices)
+				md.mesh.scale_factor=project2d(md,md.mesh.scale_factor,1);
 
 			// Initialize with the 2d mesh
Index: /issm/trunk-jpl/src/m/classes/model.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.m	(revision 22323)
+++ /issm/trunk-jpl/src/m/classes/model.m	(revision 22324)
@@ -352,4 +352,5 @@
 			if numel(md.mesh.long)==md.mesh.numberofvertices,	mesh.long=project2d(md,md.mesh.long,1); end
 			mesh.epsg=md.mesh.epsg;
+			if numel(md.mesh.scale_factor)==md.mesh.numberofvertices,	mesh.scale_factor=project2d(md,md.mesh.scale_factor,1); end
 			if ~isnan(md.mesh.vertexonboundary), mesh.vertexonboundary=project2d(md,md.mesh.vertexonboundary,1); end
 			if ~isnan(md.mesh.elementconnectivity), mesh.elementconnectivity=project2d(md,md.mesh.elementconnectivity,1); end
@@ -737,4 +738,5 @@
 			md.mesh.long                        = mesh2d.long;
 			md.mesh.epsg                        = mesh2d.epsg;
+			md.mesh.scale_factor                = mesh2d.scale_factor;
 
 			md.mesh.vertexonboundary            = mesh2d.vertexonboundary;
@@ -810,4 +812,5 @@
 			md.mesh.lat=project3d(md,'vector',md.mesh.lat,'type','node');
 			md.mesh.long=project3d(md,'vector',md.mesh.long,'type','node');
+			md.mesh.scale_factor=project3d(md,'vector',md.mesh.scale_factor,'type','node');
 
 			md.geometry=extrude(md.geometry,md);
@@ -964,4 +967,5 @@
 			if isfield(structmd,'lat'), md.mesh.lat=structmd.lat; end
 			if isfield(structmd,'long'), md.mesh.long=structmd.long; end
+			if isfield(structmd,'scale_factor'), md.mesh.scale_factor=structmd.scale_factor; end
 			if isfield(structmd,'segments'), md.mesh.segments=structmd.segments; end
 			if isfield(structmd,'segmentmarkers'), md.mesh.segmentmarkers=structmd.segmentmarkers; end
Index: /issm/trunk-jpl/src/m/classes/model.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.py	(revision 22323)
+++ /issm/trunk-jpl/src/m/classes/model.py	(revision 22324)
@@ -572,4 +572,5 @@
 		md.mesh.long                        = mesh2d.long
 		md.mesh.epsg                        = mesh2d.epsg
+		md.mesh.scale_factor                = mesh2d.scale_factor
 
 		md.mesh.vertexonboundary            = mesh2d.vertexonboundary
@@ -643,4 +644,5 @@
 		md.mesh.lat=project3d(md,'vector',md.mesh.lat,'type','node')
 		md.mesh.long=project3d(md,'vector',md.mesh.long,'type','node')
+		md.mesh.scale_factor=project3d(md,'vector',md.mesh.scale_factor,'type','node')
 
 		md.geometry.extrude(md)
@@ -857,4 +859,7 @@
 				md.mesh.long=project2d(md,md.mesh.long,1) 
 		mesh.epsg=md.mesh.epsg
+		if isinstance(md.mesh.scale_factor,np.ndarray):
+			if md.mesh.scale_factor.size==md.mesh.numberofvertices: 
+				md.mesh.scale_factor=project2d(md,md.mesh.scale_factor,1) 
 		md.mesh=mesh
 		md.mesh.vertexconnectivity=NodeConnectivity(md.mesh.elements,md.mesh.numberofvertices)[0]
