Index: /issm/trunk/src/c/objects/Numerics/ElementMatrix.cpp
===================================================================
--- /issm/trunk/src/c/objects/Numerics/ElementMatrix.cpp	(revision 5884)
+++ /issm/trunk/src/c/objects/Numerics/ElementMatrix.cpp	(revision 5885)
@@ -360,4 +360,17 @@
 }
 /*}}}*/
+/*FUNCTION ElementMatrix::CheckConsistency{{{1*/
+void ElementMatrix::CheckConsistency(void){
+	/*Check element matrix values, only in debugging mode*/
+	#ifdef _ISSM_DEBUG_ 
+	for (int i=0;i<this->nrows;i++){
+		for(int j=0;j<this->ncols;j++){
+			if (isnan(this->values[i*this->ncols+j])) ISSMERROR("NaN found in Element Matrix");
+			if (fabs(this->values[i*this->ncols+j])>1.e+50) ISSMERROR("Element Matrix values exceeds 1.e+50");
+		}
+	}
+	#endif
+}
+/*}}}*/
 /*FUNCTION ElementMatrix::Echo{{{1*/
 void ElementMatrix::Echo(void){
Index: /issm/trunk/src/c/objects/Numerics/ElementMatrix.h
===================================================================
--- /issm/trunk/src/c/objects/Numerics/ElementMatrix.h	(revision 5884)
+++ /issm/trunk/src/c/objects/Numerics/ElementMatrix.h	(revision 5885)
@@ -60,7 +60,7 @@
 		void AddToGlobal(Mat Kgg, Mat Kff, Mat Kfs);
 		void Echo(void);
+		void CheckConsistency(void);
 		void Init(ElementMatrix* Ke);
 		/*}}}*/
 };
 #endif //#ifndef _ELEMENT_MATRIX_H_
-
