Index: /issm/trunk/src/m/classes/public/isresultconsistent.m
===================================================================
--- /issm/trunk/src/m/classes/public/isresultconsistent.m	(revision 2094)
+++ /issm/trunk/src/m/classes/public/isresultconsistent.m	(revision 2095)
@@ -26,5 +26,5 @@
 
 %DIAGNOSTIC
-if analysis_type==DiagnosticAnalysisEnum(),
+if analysis_type==DiagnosticAnalysisEnum() & md.control_analysis==0,
 
 	if strcmpi(md.type,'3d')
@@ -59,8 +59,8 @@
 
 %CONTROL
-if analysis_type==ControlAnalysisEnum(),
-
-	fields1={'results.control.vx','results.control.vy','results.control.vel','results.control.parameter'};
-	fields2={'results.control.vel','results.control.J'};
+if analysis_type==DiagnosticAnalysisEnum() & md.control_analysis==1,
+
+	fields1={'results.diagnostic.vx','results.diagnostic.vy','results.diagnostic.vel','results.diagnostic.parameter'};
+	fields2={'results.diagnostic.vel','results.diagnostic.J'};
 
 	%check size
@@ -86,5 +86,5 @@
 	%check inversed parameter
 	if ~isnan(md.maxcontrolconstraint),
-		if any(md.results.control.parameter>md.maxcontrolconstraint)
+		if any(md.results.diagnostic.parameter>md.maxdiagnosticconstraint)
 			disp(['''control'' result not consistent: inverse parameter is greater than ' num2str(md.maxcontrolconstraint)]);
 			bool=0; return; 
@@ -92,5 +92,5 @@
 	end
 	if ~isnan(md.mincontrolconstraint),
-		if any(md.results.control.parameter<md.mincontrolconstraint)
+		if any(md.results.diagnostic.parameter<md.mindiagnosticconstraint)
 			disp(['''control'' result not consistent: inverse parameter is smaller than ' num2str(md.mincontrolconstraint)]);
 			bool=0; return; 
