Index: /issm/trunk/test/Verification/PigControlMethodBM2d_21/runme.m
===================================================================
--- /issm/trunk/test/Verification/PigControlMethodBM2d_21/runme.m	(revision 1911)
+++ /issm/trunk/test/Verification/PigControlMethodBM2d_21/runme.m	(revision 1912)
@@ -30,9 +30,9 @@
 end
 
-%packages and misfits to be tested
+%packages and solutions to be tested
 if nargin==2,
-	misfits=varargin{2};
+	solutions=varargin{2};
 else
-	misfits={'absolute','relative','logarithmic'};
+	solutions={'diagnostic_absolute','diagnostic_relative','diagnostic_logarithmic'};
 end
 if nargin,
@@ -49,10 +49,10 @@
 	package=packages{i};
 
-	for j=1:length(misfits),
-		misfit=misfits{j};
+	for j=1:length(solutions),
+		solution=solutions{j};
 
 		%check solution requested
-		if ((strcmpi(package,'macayeal') & ~strcmpi(misfit,'absolute')) | strcmpi(package,'ice')),
-			disp(['package: ' package  ' and misfit: ' misfit  ' in test: ' testname  ' not supported yet']);
+		if ((strcmpi(package,'macayeal') & ~strcmpi(solution,'absolute')) | strcmpi(package,'ice')),
+			disp(['package: ' package  ' and solution: ' solution  ' in test: ' testname  ' not supported yet']);
 			continue
 		end
@@ -64,16 +64,10 @@
 		md=parameterize(md,'Pig.par');
 		md=setelementstype(md,'macayeal','all');
-		if strcmpi(misfit,'absolute'),
-			md.fit(:)=0;
-		elseif strcmpi(misfit,'relative'),
-			md.fit(:)=1;
-		elseif strcmpi(misfit,'logarithmic'),
-			md.fit(:)=2;
-		end
 		md=modelextract(md,md.elementoniceshelf);
 
-		%launch control method
-		if ~testscheckmisfit(misfit), continue; end
-		md=solve(md,'analysis_type','control','package',packagefinal);
+		%compute solution
+		[md analysis_type sub_analysis_type packagefinal]=testsparameterization(md,solution,package);
+		if ~testschecksolution(md.type,solution), continue; end
+		md=solve(md,'analysis_type',analysis_type,'sub_analysis_type',sub_analysis_type,'package',packagefinal);
 
 		%compute fields to be checked
@@ -81,5 +75,5 @@
 
 		%load archive
-		eval(['load Archive' package misfit ]);
+		eval(['load Archive' package solution ]);
 
 		for k=1:length(fields),
@@ -87,15 +81,15 @@
 			%Get field and tolerance
 			field=fields{k};
-			tolerance=testsgettolerance(md,package,misfit,field);
+			tolerance=testsgettolerance(md,package,solution,field);
 
 			%compare to archive
-			eval(['Archive=Archive' package misfit '_field' num2str(k) ';']);
+			eval(['Archive=Archive' package solution '_field' num2str(k) ';']);
 			eval(['error_diff=full(max(abs(Archive-md.results.' field '))/(max(abs(Archive))+eps));']);
 
 			%disp test result
 			if (error_diff>tolerance);
-				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			else
-				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			end
 
Index: /issm/trunk/test/Verification/PigControlMethodDragM2d_20/runme.m
===================================================================
--- /issm/trunk/test/Verification/PigControlMethodDragM2d_20/runme.m	(revision 1911)
+++ /issm/trunk/test/Verification/PigControlMethodDragM2d_20/runme.m	(revision 1912)
@@ -30,9 +30,9 @@
 end
 
-%packages and misfits to be tested
+%packages and solutions to be tested
 if nargin==2,
-	misfits=varargin{2};
+	solutions=varargin{2};
 else
-	misfits={'absolute','relative','logarithmic'};
+	solutions={'diagnostic_absolute','diagnostic_relative','diagnostic_logarithmic'};
 end
 if nargin,
@@ -49,6 +49,6 @@
 	package=packages{i};
 
-	for j=1:length(misfits),
-		misfit=misfits{j};
+	for j=1:length(solutions),
+		solution=solutions{j};
 
 		%check package
@@ -64,15 +64,9 @@
 		md=parameterize(md,'Pig.par');
 		md=setelementstype(md,'macayeal','all');
-		if strcmpi(misfit,'absolute'),
-			md.fit(:)=0;
-		elseif strcmpi(misfit,'relative'),
-			md.fit(:)=1;
-		elseif strcmpi(misfit,'logarithmic'),
-			md.fit(:)=2;
-		end
 
-		%launch control method
-		if ~testscheckmisfit(misfit), continue; end
-		md=solve(md,'analysis_type','control','package',packagefinal);
+		%compute solution
+		[md analysis_type sub_analysis_type packagefinal]=testsparameterization(md,solution,package);
+		if ~testschecksolution(md.type,solution), continue; end
+		md=solve(md,'analysis_type',analysis_type,'sub_analysis_type',sub_analysis_type,'package',packagefinal);
 
 		%compute fields to be checked
@@ -80,5 +74,5 @@
 
 		%load archive
-		eval(['load Archive' package misfit ]);
+		eval(['load Archive' package solution ]);
 
 		for k=1:length(fields),
@@ -86,15 +80,15 @@
 			%Get field and tolerance
 			field=fields{k};
-			tolerance=testsgettolerance(md,package,misfit,field);
+			tolerance=testsgettolerance(md,package,solution,field);
 
 			%compare to archive
-			eval(['Archive=Archive' package misfit '_field' num2str(k) ';']);
+			eval(['Archive=Archive' package solution '_field' num2str(k) ';']);
 			eval(['error_diff=full(max(abs(Archive-md.results.' field '))/(max(abs(Archive))+eps));']);
 
 			%disp test result
 			if (error_diff>tolerance);
-				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			else
-				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			end
 
Index: /issm/trunk/test/Verification/PigControlMethodDragP3d_22/runme.m
===================================================================
--- /issm/trunk/test/Verification/PigControlMethodDragP3d_22/runme.m	(revision 1911)
+++ /issm/trunk/test/Verification/PigControlMethodDragP3d_22/runme.m	(revision 1912)
@@ -30,9 +30,9 @@
 end
 
-%packages and misfits to be tested
+%packages and solutions to be tested
 if nargin==2,
-	misfits=varargin{2};
+	solutions=varargin{2};
 else
-	misfits={'absolute','relative','logarithmic'};
+	solutions={'diagnostic_absolute','diagnostic_relative','diagnostic_logarithmic'};
 end
 if nargin,
@@ -49,6 +49,6 @@
 	package=packages{i};
 
-	for j=1:length(misfits),
-		misfit=misfits{j};
+	for j=1:length(solutions),
+		solution=solutions{j};
 
 		%check package
@@ -65,15 +65,9 @@
 		md=extrude(md,4,2);
 		md=setelementstype(md,'pattyn','all');
-		if strcmpi(misfit,'absolute'),
-			md.fit(:)=0;
-		elseif strcmpi(misfit,'relative'),
-			md.fit(:)=1;
-		elseif strcmpi(misfit,'logarithmic'),
-			md.fit(:)=2;
-		end
 
-		%launch control method
-		if ~testscheckmisfit(misfit), continue; end
-		md=solve(md,'analysis_type','control','package',packagefinal);
+		%compute solution
+		[md analysis_type sub_analysis_type packagefinal]=testsparameterization(md,solution,package);
+		if ~testschecksolution(md.type,solution), continue; end
+		md=solve(md,'analysis_type',analysis_type,'sub_analysis_type',sub_analysis_type,'package',packagefinal);
 
 		%compute fields to be checked
@@ -81,5 +75,5 @@
 
 		%load archive
-		eval(['load Archive' package misfit ]);
+		eval(['load Archive' package solution ]);
 
 		for k=1:length(fields),
@@ -87,15 +81,15 @@
 			%Get field and tolerance
 			field=fields{k};
-			tolerance=testsgettolerance(md,package,misfit,field);
+			tolerance=testsgettolerance(md,package,solution,field);
 
 			%compare to archive
-			eval(['Archive=Archive' package misfit '_field' num2str(k) ';']);
+			eval(['Archive=Archive' package solution '_field' num2str(k) ';']);
 			eval(['error_diff=full(max(abs(Archive-md.results.' field '))/(max(abs(Archive))+eps));']);
 
 			%disp test result
 			if (error_diff>tolerance);
-				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			else
-				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			end
 
Index: /issm/trunk/test/Verification/PigControlMethodDragS3d_23/runme.m
===================================================================
--- /issm/trunk/test/Verification/PigControlMethodDragS3d_23/runme.m	(revision 1911)
+++ /issm/trunk/test/Verification/PigControlMethodDragS3d_23/runme.m	(revision 1912)
@@ -30,9 +30,9 @@
 end
 
-%packages and misfits to be tested
+%packages and solutions to be tested
 if nargin==2,
-	misfits=varargin{2};
+	solutions=varargin{2};
 else
-	misfits={'absolute','relative','logarithmic'};
+	solutions={'diagnostic_absolute','diagnostic_relative','diagnostic_logarithmic'};
 end
 if nargin,
@@ -49,6 +49,6 @@
 	package=packages{i};
 
-	for j=1:length(misfits),
-		misfit=misfits{j};
+	for j=1:length(solutions),
+		solution=solutions{j};
 
 		%check package
@@ -65,15 +65,9 @@
 		md=extrude(md,4,3);
 		md=setelementstype(md,'pattyn','all','stokes','all');
-		if strcmpi(misfit,'absolute'),
-			md.fit(:)=0;
-		elseif strcmpi(misfit,'relative'),
-			md.fit(:)=1;
-		elseif strcmpi(misfit,'logarithmic'),
-			md.fit(:)=2;
-		end
 
-		%launch control method
-		if ~testscheckmisfit(misfit), continue; end
-		md=solve(md,'analysis_type','control','package',packagefinal);
+		%compute solution
+		[md analysis_type sub_analysis_type packagefinal]=testsparameterization(md,solution,package);
+		if ~testschecksolution(md.type,solution), continue; end
+		md=solve(md,'analysis_type',analysis_type,'sub_analysis_type',sub_analysis_type,'package',packagefinal);
 
 		%compute fields to be checked
@@ -81,5 +75,5 @@
 
 		%load archive
-		eval(['load Archive' package misfit ]);
+		eval(['load Archive' package solution ]);
 
 		for k=1:length(fields),
@@ -87,15 +81,15 @@
 			%Get field and tolerance
 			field=fields{k};
-			tolerance=testsgettolerance(md,package,misfit,field);
+			tolerance=testsgettolerance(md,package,solution,field);
 
 			%compare to archive
-			eval(['Archive=Archive' package misfit '_field' num2str(k) ';']);
+			eval(['Archive=Archive' package solution '_field' num2str(k) ';']);
 			eval(['error_diff=full(max(abs(Archive-md.results.' field '))/(max(abs(Archive))+eps));']);
 
 			%disp test result
 			if (error_diff>tolerance);
-				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nERROR   difference: %-7.2g > %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			else
-				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   misfit: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,misfit,package));
+				disp(sprintf(['\n\nSUCCESS difference: %-7.2g < %7.2g test: %-25s   solution: %-16s package: %-14s field: ' field  '.\n\n'],error_diff,tolerance,testname,solution,package));
 			end
 
