Index: /issm/trunk/src/m/solutions/adjoint_core.m
===================================================================
--- /issm/trunk/src/m/solutions/adjoint_core.m	(revision 4686)
+++ /issm/trunk/src/m/solutions/adjoint_core.m	(revision 4687)
@@ -38,5 +38,5 @@
 	end
 
-	femmodel.elements=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,adjoint_g);
+	[femmodel.elements,femmodel.materials]=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,adjoint_g);
 
 	displaystring(verbose,'\n%s',['      saving results...']);
Index: /issm/trunk/src/m/solvers/solver_diagnostic_nonlinear.m
===================================================================
--- /issm/trunk/src/m/solvers/solver_diagnostic_nonlinear.m	(revision 4686)
+++ /issm/trunk/src/m/solvers/solver_diagnostic_nonlinear.m	(revision 4687)
@@ -21,5 +21,5 @@
 
 	%Update the solution to make sure that vx and vxold are similar
-	femmodel.elements=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,loads,femmodel.materials,femmodel.parameters,ug);
+	[femmodel.elements,femmodel.materials]=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,loads,femmodel.materials,femmodel.parameters,ug);
 
 	while(~converged),
@@ -48,5 +48,5 @@
 
 		%Update inputs using new solution
-		femmodel.elements=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,loads,femmodel.materials,femmodel.parameters,ug);
+		[femmodel.elements,femmodel.materials]=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,loads,femmodel.materials,femmodel.parameters,ug);
 		
 		displaystring(femmodel.parameters.Verbose,'%s','   penalty constraints');
Index: /issm/trunk/src/m/solvers/solver_linear.m
===================================================================
--- /issm/trunk/src/m/solvers/solver_linear.m	(revision 4686)
+++ /issm/trunk/src/m/solvers/solver_linear.m	(revision 4687)
@@ -26,4 +26,4 @@
 
 	%Update inputs using new solution
-	femmodel.elements=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,u_g);
+	[femmodel.elements,femmodel.materials]=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,u_g);
 
Index: /issm/trunk/src/m/solvers/solver_thermal_nonlinear.m
===================================================================
--- /issm/trunk/src/m/solvers/solver_thermal_nonlinear.m	(revision 4686)
+++ /issm/trunk/src/m/solvers/solver_thermal_nonlinear.m	(revision 4687)
@@ -40,5 +40,5 @@
 
 		displaystring(femmodel.parameters.Verbose,'%s',['   updating inputs']);
-		femmodel.elements=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,t_g);
+		[femmodel.elements,femmodel.materials]=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,t_g);
 	
 		%penalty constraints
