Index: /issm/trunk-jpl/src/m/classes/model.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.m	(revision 18377)
+++ /issm/trunk-jpl/src/m/classes/model.m	(revision 18378)
@@ -221,6 +221,10 @@
 
 			%special for thermal modeling:
-			md.basalforcings.groundedice_melting_rate=project2d(md,md.basalforcings.groundedice_melting_rate,1); 
-			md.basalforcings.floatingice_melting_rate=project2d(md,md.basalforcings.floatingice_melting_rate,1); 
+			if ~isnan(md.basalforcings.groundedice_melting_rate),
+				md.basalforcings.groundedice_melting_rate=project2d(md,md.basalforcings.groundedice_melting_rate,1); 
+			end
+			if ~isnan(md.basalforcings.floatingice_melting_rate),
+				md.basalforcings.floatingice_melting_rate=project2d(md,md.basalforcings.floatingice_melting_rate,1); 
+			end
 			md.basalforcings.geothermalflux=project2d(md,md.basalforcings.geothermalflux,1); %bedrock only gets geothermal flux
 
@@ -238,6 +242,10 @@
 			md.geometry.bed=project2d(md,md.geometry.bed,1);
 
-			md.mask.groundedice_levelset=project2d(md,md.mask.groundedice_levelset,1);
-			md.mask.ice_levelset=project2d(md,md.mask.ice_levelset,1);
+			if ~isnan(md.mask.groundedice_levelset),
+				md.mask.groundedice_levelset=project2d(md,md.mask.groundedice_levelset,1);
+			end
+			if ~isnan(md.mask.ice_levelset),
+				md.mask.ice_levelset=project2d(md,md.mask.ice_levelset,1);
+			end
 
 			%lat long
@@ -825,6 +833,7 @@
 			if isfield(structmd,'p'), md.friction.p=structmd.p; end
 			if isfield(structmd,'q'), md.friction.q=structmd.p; end
-			if isfield(structmd,'melting'), md.basalforcings.melting_rate=structmd.melting; end
+			if isfield(structmd,'melting'), md.basalforcings.floatingice_melting_rate=structmd.melting; end
 			if isfield(structmd,'melting_rate'), md.basalforcings.floatingice_melting_rate=structmd.melting_rate; end
+			if isfield(structmd,'melting_rate'), md.basalforcings.groundedice_melting_rate=structmd.melting_rate; end
 			if isfield(structmd,'accumulation'), md.surfaceforcings.mass_balance=structmd.accumulation; end
 			if isfield(structmd,'numberofgrids'), md.mesh.numberofvertices=structmd.numberofgrids; end
