Index: /issm/trunk-jpl/test/NightlyRun/test236.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test236.m	(revision 19242)
+++ /issm/trunk-jpl/test/NightlyRun/test236.m	(revision 19243)
@@ -70,8 +70,10 @@
 
 %Fields and tolerances to track changes
-field_names     ={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3'};
-field_tolerances={1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
-	1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
-	1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13};
+field_names     ={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMonthlytemperatures1','SurfaceforcingsMassBalance1',...
+	   'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMonthlytemperatures2','SurfaceforcingsMassBalance2',...
+	   'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMonthlytemperatures3','SurfaceforcingsMassBalance3'};
+field_tolerances={1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13};
 field_values={...
 	(md.results.TransientSolution(1).Vx),...
Index: /issm/trunk-jpl/test/NightlyRun/test237.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test237.m	(revision 19242)
+++ /issm/trunk-jpl/test/NightlyRun/test237.m	(revision 19243)
@@ -75,11 +75,11 @@
 
 %Fields and tolerances to track changes
-field_names     ={'Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Temperature1','BasalforcingsGroundediceMeltingRate1', ...
-						'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Temperature2','BasalforcingsGroundediceMeltingRate2', ...
-						'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','Temperature3','BasalforcingsGroundediceMeltingRate3'};
+field_names     ={'Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Temperature1','BasalforcingsGroundediceMeltingRate1','SurfaceforcingsMonthlytemperatures1','SurfaceforcingsMassBalance1',...
+						'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Temperature2','BasalforcingsGroundediceMeltingRate2','SurfaceforcingsMonthlytemperatures2','SurfaceforcingsMassBalance2',...
+						'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','Temperature3','BasalforcingsGroundediceMeltingRate3','SurfaceforcingsMonthlytemperatures3','SurfaceforcingsMassBalance3'};
 field_tolerances={...
-	1e-13,1e-13,1e-13,1e-13,1e-13,1e-8,1e-8,1e-8,1e-13,1e-8,...
-	1e-13,1e-13,1e-13,1e-13,1e-13,1e-8,1e-8,1e-8,1e-13,1e-8,...
-	1e-13,1e-13,1e-08,1e-13,1e-13,1e-8,1e-8,1e-8,1e-13,1e-8};
+	1e-13,1e-13,1e-13,1e-13,1e-13,1e-8,1e-8,1e-8,1e-13,1e-8,1e-13,1e-13,...
+	1e-13,1e-13,1e-13,1e-13,1e-13,1e-8,1e-8,1e-8,1e-13,1e-8,1e-13,1e-13,...
+	1e-13,1e-13,1e-08,1e-13,1e-13,1e-8,1e-8,1e-8,1e-13,1e-8,1e-13,1e-13};
 field_values={...
 	(md.results.TransientSolution(1).Vx),...
Index: /issm/trunk-jpl/test/NightlyRun/test238.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test238.m	(revision 19242)
+++ /issm/trunk-jpl/test/NightlyRun/test238.m	(revision 19243)
@@ -1,33 +1,60 @@
-%Test Name: SquareShelfTranForceNoInterp2d
+%Test Name: SquareShelfTranIspddIsdeltaO18pdSSA2d
 md=triangle(model(),'../Exp/Square.exp',150000.);
 md=setmask(md,'all','');
 md=parameterize(md,'../Par/SquareShelf.par');
+
+%md.verbose=verbose('all');
+
+% Use of ispdd and isdelta18o methods
+md.surfaceforcings = SMBd18opdd();
+md.surfaceforcings.isd18opd=1;
+%md.surfaceforcings.precipitation(1:md.mesh.numberofvertices,1:12)=0;
+%md.surfaceforcings.monthlytemperatures(1:md.mesh.numberofvertices,1:12)=273;
+
+% Add temperature, precipitation and delta18o needed to measure the surface mass balance
+%  creating delta18o
+load '../Data/delta18o.data'
+md.surfaceforcings.delta18o=delta18o;
+
+% creating Present day  temperatures
+% Same temperature over the all region:
+tmonth(1:12)=238.15+20.;
+for imonth=0:11
+    md.surfaceforcings.temperatures_presentday(1:md.mesh.numberofvertices,imonth+1)=tmonth(imonth+1);
+    % Time for the last line:
+    md.surfaceforcings.temperatures_presentday(md.mesh.numberofvertices+1,imonth+1)=((imonth+1)/12);
+end
+
+% creating initialization and spc temperatures initialization and
+% spc
+md.thermal.spctemperature=mean(md.surfaceforcings.temperatures_presentday(1:md.mesh.numberofvertices,1:12),2)-10; %-10*ones(md.mesh.numberofvertices,1);
+
+md.initialization.temperature=md.thermal.spctemperature; %md.surfaceforcings.temperatures_presentday(1:md.mesh.numberofvertices,1);
+
+% creating precipitation
+for imonth=0:11
+    md.surfaceforcings.precipitations_presentday(1:md.mesh.numberofvertices,imonth+1)=-0.4*10^(-6)*md.mesh.y+0.5;
+    % Time for the last line:
+    md.surfaceforcings.precipitations_presentday(md.mesh.numberofvertices+1,imonth+1)=((imonth+1)/12);
+end
+
+% time steps and resolution
+md.timestepping.time_step=20;
+md.settings.output_frequency=1;
+md.timestepping.final_time=60;
+
+% 
+md.transient.requested_outputs={'default','SurfaceforcingsMonthlytemperatures'};
 md=setflowequation(md,'SSA','all');
-md.cluster=generic('name',oshostname(),'np',3);
-
-md.timestepping.time_step=1.;
-md.settings.output_frequency=1;
-md.timestepping.final_time=4.;
-md.timestepping.interp_forcings=0;
-
-%Set up transient
-smb=ones(md.mesh.numberofvertices,1)*3.6;
-smb=[ smb smb*-1. ];
-
-md.surfaceforcings.mass_balance=smb;
-md.surfaceforcings.mass_balance(end+1,:)=[1.5 3.];
-md.transient.isthermal=0;
-
+md.cluster=generic('name',oshostname(),'np',1); % 3 for the cluster
 md=solve(md,TransientSolutionEnum());
 
 %Fields and tolerances to track changes
-field_names={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMassBalance1', ...
-	'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMassBalance2', ...
-	'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMassBalance3', ...
-	'Vx4','Vy4','Vel4','Pressure4','Bed4','Surface4','Thickness4','SurfaceforcingsMassBalance4'};
-field_tolerances={1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,...
-	1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,...
-	1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,...
-	1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10};
+field_names     ={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMonthlytemperatures1','SurfaceforcingsMassBalance1',...
+	      'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMonthlytemperatures2','SurfaceforcingsMassBalance2',...
+	      'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMonthlytemperatures3','SurfaceforcingsMassBalance3'};
+field_tolerances={1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	   1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	   1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13};
 field_values={...
 	(md.results.TransientSolution(1).Vx),...
@@ -38,4 +65,5 @@
 	(md.results.TransientSolution(1).Surface),...
 	(md.results.TransientSolution(1).Thickness),...
+	(md.results.TransientSolution(1).SurfaceforcingsMonthlytemperatures),...
 	(md.results.TransientSolution(1).SurfaceforcingsMassBalance),...
 	(md.results.TransientSolution(2).Vx),...
@@ -46,4 +74,5 @@
 	(md.results.TransientSolution(2).Surface),...
 	(md.results.TransientSolution(2).Thickness),...
+	(md.results.TransientSolution(2).SurfaceforcingsMonthlytemperatures),...
 	(md.results.TransientSolution(2).SurfaceforcingsMassBalance),...
 	(md.results.TransientSolution(3).Vx),...
@@ -54,12 +83,5 @@
 	(md.results.TransientSolution(3).Surface),...
 	(md.results.TransientSolution(3).Thickness),...
+	(md.results.TransientSolution(3).SurfaceforcingsMonthlytemperatures),...
 	(md.results.TransientSolution(3).SurfaceforcingsMassBalance),...
-	(md.results.TransientSolution(4).Vx),...
-	(md.results.TransientSolution(4).Vy),...
-	(md.results.TransientSolution(4).Vel),...
-	(md.results.TransientSolution(4).Pressure),...
-	(md.results.TransientSolution(4).Base),...
-	(md.results.TransientSolution(4).Surface),...
-	(md.results.TransientSolution(4).Thickness),...
-	(md.results.TransientSolution(4).SurfaceforcingsMassBalance),...
 	};
Index: /issm/trunk-jpl/test/NightlyRun/test239.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test239.m	(revision 19242)
+++ /issm/trunk-jpl/test/NightlyRun/test239.m	(revision 19243)
@@ -1,39 +1,63 @@
-%Test Name: SquareShelfTranForceNoInterp3d
-md=triangle(model(),'../Exp/Square.exp',350000.);
+%Test Name: SquareShelfTranIspddIsdeltaO18pdInterpSSA2d
+md=triangle(model(),'../Exp/Square.exp',150000.);
 md=setmask(md,'all','');
 md=parameterize(md,'../Par/SquareShelf.par');
-md=extrude(md,3,1.);
-md=setflowequation(md,'HO','all');
-md.cluster=generic('name',oshostname(),'np',3);
 
-md.timestepping.time_step=1;
+%md.verbose=verbose('all');
+
+% Use of ispdd and isdelta18o methods
+md.surfaceforcings = SMBd18opdd();
+md.surfaceforcings.isd18opd=1;
+%md.surfaceforcings.precipitation(1:md.mesh.numberofvertices,1:12)=0;
+%md.surfaceforcings.monthlytemperatures(1:md.mesh.numberofvertices,1:12)=273;
+
+% Add temperature, precipitation and delta18o needed to measure the surface mass balance
+%  creating delta18o
+load '../Data/delta18o.data'
+md.surfaceforcings.delta18o=delta18o;
+
+% creating Present day  temperatures
+% Same temperature over the all region:
+tmonth(1:12)=238.15+20.;
+for imonth=0:11
+    md.surfaceforcings.temperatures_presentday(1:md.mesh.numberofvertices,imonth+1)=tmonth(imonth+1);
+    % Time for the last line:
+    md.surfaceforcings.temperatures_presentday(md.mesh.numberofvertices+1,imonth+1)=((imonth+1)/12);
+end
+
+% creating initialization and spc temperatures initialization and
+% spc
+md.thermal.spctemperature=mean(md.surfaceforcings.temperatures_presentday(1:md.mesh.numberofvertices,1:12),2)-10; %-10*ones(md.mesh.numberofvertices,1);
+
+md.initialization.temperature=md.thermal.spctemperature; %md.surfaceforcings.temperatures_presentday(1:md.mesh.numberofvertices,1);
+
+% creating precipitation
+for imonth=0:11
+    md.surfaceforcings.precipitations_presentday(1:md.mesh.numberofvertices,imonth+1)=-0.4*10^(-6)*md.mesh.y+0.5;
+    % Time for the last line:
+    md.surfaceforcings.precipitations_presentday(md.mesh.numberofvertices+1,imonth+1)=((imonth+1)/12);
+end
+
+% time steps and resolution
+md.timestepping.time_step=0.5;
 md.settings.output_frequency=1;
-md.timestepping.final_time=4;
-md.timestepping.interp_forcings=0;
+md.timestepping.final_time=2;
 
-%Set up transient
-smb=ones(md.mesh.numberofvertices,1)*3.6;
-smb=[ smb smb*-1. ];
-
-md.surfaceforcings.mass_balance=smb;
-md.surfaceforcings.mass_balance(end+1,:)=[1.5 3.];
-md.transient.isthermal=0;
-
+% 
+md.transient.requested_outputs={'default','SurfaceforcingsMonthlytemperatures'};
+md=setflowequation(md,'SSA','all');
+md.cluster=generic('name',oshostname(),'np',1); % 3 for the cluster
 md=solve(md,TransientSolutionEnum());
 
 %Fields and tolerances to track changes
-field_names     ={'Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMassBalance1', ...
-	'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMassBalance2', ...
-	'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMassBalance3', ...
-	'Vx4','Vy4','Vz4','Vel4','Pressure4','Bed4','Surface4','Thickness4','SurfaceforcingsMassbalance4'};
-field_tolerances={...
-	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13,...
-	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13,...
-	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13,...
-	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13};
+field_names     ={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMonthlytemperatures1','SurfaceforcingsMassBalance1',...
+	      'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMonthlytemperatures2','SurfaceforcingsMassBalance2',...
+	      'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMonthlytemperatures3','SurfaceforcingsMassBalance3'};
+field_tolerances={1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	   1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	   1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13};
 field_values={...
 	(md.results.TransientSolution(1).Vx),...
 	(md.results.TransientSolution(1).Vy),...
-	(md.results.TransientSolution(1).Vz),...
 	(md.results.TransientSolution(1).Vel),...
 	(md.results.TransientSolution(1).Pressure),...
@@ -41,8 +65,8 @@
 	(md.results.TransientSolution(1).Surface),...
 	(md.results.TransientSolution(1).Thickness),...
+	(md.results.TransientSolution(1).SurfaceforcingsMonthlytemperatures),...
 	(md.results.TransientSolution(1).SurfaceforcingsMassBalance),...
 	(md.results.TransientSolution(2).Vx),...
 	(md.results.TransientSolution(2).Vy),...
-	(md.results.TransientSolution(2).Vz),...
 	(md.results.TransientSolution(2).Vel),...
 	(md.results.TransientSolution(2).Pressure),...
@@ -50,8 +74,8 @@
 	(md.results.TransientSolution(2).Surface),...
 	(md.results.TransientSolution(2).Thickness),...
+	(md.results.TransientSolution(2).SurfaceforcingsMonthlytemperatures),...
 	(md.results.TransientSolution(2).SurfaceforcingsMassBalance),...
 	(md.results.TransientSolution(3).Vx),...
 	(md.results.TransientSolution(3).Vy),...
-	(md.results.TransientSolution(3).Vz),...
 	(md.results.TransientSolution(3).Vel),...
 	(md.results.TransientSolution(3).Pressure),...
@@ -59,13 +83,5 @@
 	(md.results.TransientSolution(3).Surface),...
 	(md.results.TransientSolution(3).Thickness),...
+	(md.results.TransientSolution(3).SurfaceforcingsMonthlytemperatures),...
 	(md.results.TransientSolution(3).SurfaceforcingsMassBalance),...
-	(md.results.TransientSolution(4).Vx),...
-	(md.results.TransientSolution(4).Vy),...
-	(md.results.TransientSolution(4).Vz),...
-	(md.results.TransientSolution(4).Vel),...
-	(md.results.TransientSolution(4).Pressure),...
-	(md.results.TransientSolution(4).Base),...
-	(md.results.TransientSolution(4).Surface),...
-	(md.results.TransientSolution(4).Thickness),...
-	(md.results.TransientSolution(4).SurfaceforcingsMassBalance),...
 	};
Index: /issm/trunk-jpl/test/NightlyRun/test240.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test240.m	(revision 19242)
+++ /issm/trunk-jpl/test/NightlyRun/test240.m	(revision 19243)
@@ -1,3 +1,3 @@
-%Test Name: SquareShelfTranIspddIsdeltaO18pdSSA2d
+%Test Name: SquareShelfTranIspddIsdeltaO18pdNoInterpSSA2d
 md=triangle(model(),'../Exp/Square.exp',150000.);
 md=setmask(md,'all','');
@@ -40,7 +40,8 @@
 
 % time steps and resolution
-md.timestepping.time_step=20;
+md.timestepping.time_step=0.5;
 md.settings.output_frequency=1;
-md.timestepping.final_time=60;
+md.timestepping.final_time=2;
+md.timestepping.interp_forcings=0;
 
 % 
@@ -51,8 +52,10 @@
 
 %Fields and tolerances to track changes
-field_names     ={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3'};
-field_tolerances={1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
-	1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
-	1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13};
+field_names     ={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMonthlytemperatures1','SurfaceforcingsMassBalance1',...
+	      'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMonthlytemperatures2','SurfaceforcingsMassBalance2',...
+	      'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMonthlytemperatures3','SurfaceforcingsMassBalance3'};
+field_tolerances={1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	   1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,...
+	   1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13};
 field_values={...
 	(md.results.TransientSolution(1).Vx),...
Index: /issm/trunk-jpl/test/NightlyRun/test241.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test241.m	(revision 19243)
+++ /issm/trunk-jpl/test/NightlyRun/test241.m	(revision 19243)
@@ -0,0 +1,65 @@
+%Test Name: SquareShelfTranForceNoInterp2d
+md=triangle(model(),'../Exp/Square.exp',150000.);
+md=setmask(md,'all','');
+md=parameterize(md,'../Par/SquareShelf.par');
+md=setflowequation(md,'SSA','all');
+md.cluster=generic('name',oshostname(),'np',3);
+
+md.timestepping.time_step=1.;
+md.settings.output_frequency=1;
+md.timestepping.final_time=4.;
+md.timestepping.interp_forcings=0;
+
+%Set up transient
+smb=ones(md.mesh.numberofvertices,1)*3.6;
+smb=[ smb smb*-1. ];
+
+md.surfaceforcings.mass_balance=smb;
+md.surfaceforcings.mass_balance(end+1,:)=[1.5 3.];
+md.transient.isthermal=0;
+
+md=solve(md,TransientSolutionEnum());
+
+%Fields and tolerances to track changes
+field_names={'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMassBalance1', ...
+	'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMassBalance2', ...
+	'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMassBalance3', ...
+	'Vx4','Vy4','Vel4','Pressure4','Bed4','Surface4','Thickness4','SurfaceforcingsMassBalance4'};
+field_tolerances={1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,...
+	1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,...
+	1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,...
+	1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10};
+field_values={...
+	(md.results.TransientSolution(1).Vx),...
+	(md.results.TransientSolution(1).Vy),...
+	(md.results.TransientSolution(1).Vel),...
+	(md.results.TransientSolution(1).Pressure),...
+	(md.results.TransientSolution(1).Base),...
+	(md.results.TransientSolution(1).Surface),...
+	(md.results.TransientSolution(1).Thickness),...
+	(md.results.TransientSolution(1).SurfaceforcingsMassBalance),...
+	(md.results.TransientSolution(2).Vx),...
+	(md.results.TransientSolution(2).Vy),...
+	(md.results.TransientSolution(2).Vel),...
+	(md.results.TransientSolution(2).Pressure),...
+	(md.results.TransientSolution(2).Base),...
+	(md.results.TransientSolution(2).Surface),...
+	(md.results.TransientSolution(2).Thickness),...
+	(md.results.TransientSolution(2).SurfaceforcingsMassBalance),...
+	(md.results.TransientSolution(3).Vx),...
+	(md.results.TransientSolution(3).Vy),...
+	(md.results.TransientSolution(3).Vel),...
+	(md.results.TransientSolution(3).Pressure),...
+	(md.results.TransientSolution(3).Base),...
+	(md.results.TransientSolution(3).Surface),...
+	(md.results.TransientSolution(3).Thickness),...
+	(md.results.TransientSolution(3).SurfaceforcingsMassBalance),...
+	(md.results.TransientSolution(4).Vx),...
+	(md.results.TransientSolution(4).Vy),...
+	(md.results.TransientSolution(4).Vel),...
+	(md.results.TransientSolution(4).Pressure),...
+	(md.results.TransientSolution(4).Base),...
+	(md.results.TransientSolution(4).Surface),...
+	(md.results.TransientSolution(4).Thickness),...
+	(md.results.TransientSolution(4).SurfaceforcingsMassBalance),...
+	};
Index: /issm/trunk-jpl/test/NightlyRun/test242.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test242.m	(revision 19243)
+++ /issm/trunk-jpl/test/NightlyRun/test242.m	(revision 19243)
@@ -0,0 +1,71 @@
+%Test Name: SquareShelfTranForceNoInterp3d
+md=triangle(model(),'../Exp/Square.exp',350000.);
+md=setmask(md,'all','');
+md=parameterize(md,'../Par/SquareShelf.par');
+md=extrude(md,3,1.);
+md=setflowequation(md,'HO','all');
+md.cluster=generic('name',oshostname(),'np',3);
+
+md.timestepping.time_step=1;
+md.settings.output_frequency=1;
+md.timestepping.final_time=4;
+md.timestepping.interp_forcings=0;
+
+%Set up transient
+smb=ones(md.mesh.numberofvertices,1)*3.6;
+smb=[ smb smb*-1. ];
+
+md.surfaceforcings.mass_balance=smb;
+md.surfaceforcings.mass_balance(end+1,:)=[1.5 3.];
+md.transient.isthermal=0;
+
+md=solve(md,TransientSolutionEnum());
+
+%Fields and tolerances to track changes
+field_names     ={'Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','SurfaceforcingsMassBalance1', ...
+	'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','SurfaceforcingsMassBalance2', ...
+	'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','SurfaceforcingsMassBalance3', ...
+	'Vx4','Vy4','Vz4','Vel4','Pressure4','Bed4','Surface4','Thickness4','SurfaceforcingsMassbalance4'};
+field_tolerances={...
+	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13,...
+	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13,...
+	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13,...
+	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-13};
+field_values={...
+	(md.results.TransientSolution(1).Vx),...
+	(md.results.TransientSolution(1).Vy),...
+	(md.results.TransientSolution(1).Vz),...
+	(md.results.TransientSolution(1).Vel),...
+	(md.results.TransientSolution(1).Pressure),...
+	(md.results.TransientSolution(1).Base),...
+	(md.results.TransientSolution(1).Surface),...
+	(md.results.TransientSolution(1).Thickness),...
+	(md.results.TransientSolution(1).SurfaceforcingsMassBalance),...
+	(md.results.TransientSolution(2).Vx),...
+	(md.results.TransientSolution(2).Vy),...
+	(md.results.TransientSolution(2).Vz),...
+	(md.results.TransientSolution(2).Vel),...
+	(md.results.TransientSolution(2).Pressure),...
+	(md.results.TransientSolution(2).Base),...
+	(md.results.TransientSolution(2).Surface),...
+	(md.results.TransientSolution(2).Thickness),...
+	(md.results.TransientSolution(2).SurfaceforcingsMassBalance),...
+	(md.results.TransientSolution(3).Vx),...
+	(md.results.TransientSolution(3).Vy),...
+	(md.results.TransientSolution(3).Vz),...
+	(md.results.TransientSolution(3).Vel),...
+	(md.results.TransientSolution(3).Pressure),...
+	(md.results.TransientSolution(3).Base),...
+	(md.results.TransientSolution(3).Surface),...
+	(md.results.TransientSolution(3).Thickness),...
+	(md.results.TransientSolution(3).SurfaceforcingsMassBalance),...
+	(md.results.TransientSolution(4).Vx),...
+	(md.results.TransientSolution(4).Vy),...
+	(md.results.TransientSolution(4).Vz),...
+	(md.results.TransientSolution(4).Vel),...
+	(md.results.TransientSolution(4).Pressure),...
+	(md.results.TransientSolution(4).Base),...
+	(md.results.TransientSolution(4).Surface),...
+	(md.results.TransientSolution(4).Thickness),...
+	(md.results.TransientSolution(4).SurfaceforcingsMassBalance),...
+	};
