Index: /issm/trunk-jpl/src/m/classes/inversion.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/inversion.m	(revision 17778)
+++ /issm/trunk-jpl/src/m/classes/inversion.m	(revision 17779)
@@ -243,16 +243,16 @@
 			num_cost_functions=size(obj.cost_functions,2);
 			data=obj.cost_functions;
-			pos=find(data==101); data(pos)=SurfaceAbsVelMisfitEnum();
-			pos=find(data==102); data(pos)=SurfaceRelVelMisfitEnum();
-			pos=find(data==103); data(pos)=SurfaceLogVelMisfitEnum();
-			pos=find(data==104); data(pos)=SurfaceLogVxVyMisfitEnum();
-			pos=find(data==105); data(pos)=SurfaceAverageVelMisfitEnum();
-			pos=find(data==201); data(pos)=ThicknessAbsMisfitEnum();
-			pos=find(data==501); data(pos)=DragCoefficientAbsGradientEnum();
-			pos=find(data==502); data(pos)=RheologyBbarAbsGradientEnum();
-			pos=find(data==503); data(pos)=ThicknessAbsGradientEnum();
-			pos=find(data==504); data(pos)=ThicknessAlongGradientEnum();
-			pos=find(data==505); data(pos)=ThicknessAcrossGradientEnum();
-			pos=find(data==506); data(pos)=BalancethicknessMisfitEnum();
+			pos=find(obj.cost_functions==101); data(pos)=SurfaceAbsVelMisfitEnum();
+			pos=find(obj.cost_functions==102); data(pos)=SurfaceRelVelMisfitEnum();
+			pos=find(obj.cost_functions==103); data(pos)=SurfaceLogVelMisfitEnum();
+			pos=find(obj.cost_functions==104); data(pos)=SurfaceLogVxVyMisfitEnum();
+			pos=find(obj.cost_functions==105); data(pos)=SurfaceAverageVelMisfitEnum();
+			pos=find(obj.cost_functions==201); data(pos)=ThicknessAbsMisfitEnum();
+			pos=find(obj.cost_functions==501); data(pos)=DragCoefficientAbsGradientEnum();
+			pos=find(obj.cost_functions==502); data(pos)=RheologyBbarAbsGradientEnum();
+			pos=find(obj.cost_functions==503); data(pos)=ThicknessAbsGradientEnum();
+			pos=find(obj.cost_functions==504); data(pos)=ThicknessAlongGradientEnum();
+			pos=find(obj.cost_functions==505); data(pos)=ThicknessAcrossGradientEnum();
+			pos=find(obj.cost_functions==506); data(pos)=BalancethicknessMisfitEnum();
 			WriteData(fid,'data',data,'enum',InversionCostFunctionsEnum(),'format','DoubleMat','mattype',3);
 			WriteData(fid,'data',num_cost_functions,'enum',InversionNumCostFunctionsEnum(),'format','Integer');
Index: /issm/trunk-jpl/src/m/classes/inversion.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/inversion.py	(revision 17778)
+++ /issm/trunk-jpl/src/m/classes/inversion.py	(revision 17779)
@@ -173,15 +173,15 @@
 		num_cost_functions=numpy.size(self.cost_functions)
 		data=copy.deepcopy(self.cost_functions)
-		data=[SurfaceAbsVelMisfitEnum()        if x==101 else x for x in data]
-		data=[SurfaceRelVelMisfitEnum()        if x==102 else x for x in data]
-		data=[SurfaceLogVelMisfitEnum()        if x==103 else x for x in data]
-		data=[SurfaceLogVxVyMisfitEnum()       if x==104 else x for x in data]
-		data=[SurfaceAverageVelMisfitEnum()    if x==105 else x for x in data]
-		data=[ThicknessAbsMisfitEnum()         if x==201 else x for x in data]
-		data=[DragCoefficientAbsGradientEnum() if x==501 else x for x in data]
-		data=[RheologyBbarAbsGradientEnum()    if x==502 else x for x in data]
-		data=[ThicknessAbsGradientEnum()       if x==503 else x for x in data]
-		data=[ThicknessAlongGradientEnum()     if x==504 else x for x in data]
-		data=[ThicknessAcrossGradientEnum()    if x==505 else x for x in data]
+		data=[SurfaceAbsVelMisfitEnum()        if x==101 else x for x in self.cost_functions]
+		data=[SurfaceRelVelMisfitEnum()        if x==102 else x for x in self.cost_functions]
+		data=[SurfaceLogVelMisfitEnum()        if x==103 else x for x in self.cost_functions]
+		data=[SurfaceLogVxVyMisfitEnum()       if x==104 else x for x in self.cost_functions]
+		data=[SurfaceAverageVelMisfitEnum()    if x==105 else x for x in self.cost_functions]
+		data=[ThicknessAbsMisfitEnum()         if x==201 else x for x in self.cost_functions]
+		data=[DragCoefficientAbsGradientEnum() if x==501 else x for x in self.cost_functions]
+		data=[RheologyBbarAbsGradientEnum()    if x==502 else x for x in self.cost_functions]
+		data=[ThicknessAbsGradientEnum()       if x==503 else x for x in self.cost_functions]
+		data=[ThicknessAlongGradientEnum()     if x==504 else x for x in self.cost_functions]
+		data=[ThicknessAcrossGradientEnum()    if x==505 else x for x in self.cost_functions]
 		WriteData(fid,'data',numpy.array(data).reshape(1,-1),'enum',InversionCostFunctionsEnum(),'format','DoubleMat','mattype',3)
 		WriteData(fid,'data',num_cost_functions,'enum',InversionNumCostFunctionsEnum(),'format','Integer')
