Index: /issm/trunk-jpl/src/c/classes/Inputs/BoolInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/BoolInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/BoolInput.h	(revision 22519)
@@ -57,5 +57,4 @@
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
 		int  GetInputInterpolationType(){_error_("not implemented yet!");};
-		IssmDouble InfinityNorm(void){_error_("InfinityNorm not implemented for booleans");};
 		IssmDouble Max(void){_error_("Max not implemented for booleans");};
 		IssmDouble MaxAbs(void){_error_("Max not implemented for booleans");};
Index: /issm/trunk-jpl/src/c/classes/Inputs/ControlInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/ControlInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/ControlInput.h	(revision 22519)
@@ -67,5 +67,4 @@
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist,const char* data);
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
-		IssmDouble InfinityNorm(void){_error_("not implemented yet");};
 		IssmDouble Max(void){_error_("not implemented yet");};
 		IssmDouble MaxAbs(void){_error_("not implemented yet");};
Index: /issm/trunk-jpl/src/c/classes/Inputs/DatasetInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/DatasetInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/DatasetInput.h	(revision 22519)
@@ -63,5 +63,4 @@
 		int GetResultNumberOfNodes(void){_error_("not implemented yet");};
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist){_error_("not implemented yet");};
-		IssmDouble InfinityNorm(void){_error_("not implemented yet");};
 		IssmDouble Max(void){_error_("not implemented yet");};
 		IssmDouble MaxAbs(void){_error_("not implemented yet");};
Index: /issm/trunk-jpl/src/c/classes/Inputs/DoubleArrayInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/DoubleArrayInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/DoubleArrayInput.h	(revision 22519)
@@ -59,5 +59,4 @@
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist){_error_("not implemented yet");};
 		int  GetInputInterpolationType(){_error_("not implemented yet!");};
-		IssmDouble InfinityNorm(void){_error_("not implemented yet");};
 		IssmDouble Max(void){_error_("not implemented yet");};
 		IssmDouble MaxAbs(void){_error_("not implemented yet");};
Index: /issm/trunk-jpl/src/c/classes/Inputs/DoubleInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/DoubleInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/DoubleInput.h	(revision 22519)
@@ -60,5 +60,4 @@
 		int  GetInputInterpolationType(){return P0Enum; };
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
-		IssmDouble InfinityNorm(void){_error_("not implemented yet");};
 		IssmDouble Max(void);
 		IssmDouble MaxAbs(void);
Index: /issm/trunk-jpl/src/c/classes/Inputs/Input.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/Input.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/Input.h	(revision 22519)
@@ -44,5 +44,4 @@
 		virtual void   Extrude(int start)=0;
 		virtual void   GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist)=0;
-		virtual IssmDouble InfinityNorm(void)=0;
 		virtual IssmDouble Max(void)=0;
 		virtual IssmDouble MaxAbs(void)=0;
Index: /issm/trunk-jpl/src/c/classes/Inputs/Inputs.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/Inputs.cpp	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/Inputs.cpp	(revision 22519)
@@ -254,24 +254,4 @@
 }
 /*}}}*/
-IssmDouble Inputs::InfinityNorm(int enumtype){/*{{{*/
-
-	/*Output*/
-	IssmDouble norm;
-
-	/*Get input*/
-	Input* input=xDynamicCast<Input*>(this->GetInput(enumtype));
-
-	/*Apply ContrainMin: */
-	if (input){
-		norm=input->InfinityNorm();
-	}
-	else{
-		norm=0;
-	}
-
-	/*Return output*/
-	return norm;
-}
-/*}}}*/
 IssmDouble Inputs::Max(int enumtype){/*{{{*/
 
Index: /issm/trunk-jpl/src/c/classes/Inputs/Inputs.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/Inputs.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/Inputs.h	(revision 22519)
@@ -33,5 +33,4 @@
 		void        GetInputValue(int* pvalue,int enum_type);
 		void        GetInputValue(IssmDouble* pvalue,int enum_type);
-		IssmDouble  InfinityNorm(int enumtype);
 		IssmDouble  Max(int enumtype);
 		IssmDouble  MaxAbs(int enumtype);
Index: /issm/trunk-jpl/src/c/classes/Inputs/IntInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/IntInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/IntInput.h	(revision 22519)
@@ -61,5 +61,4 @@
 		int  GetInputInterpolationType(){_error_("not implemented yet!");};
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
-		IssmDouble InfinityNorm(void){_error_("InfinityNorm not implemented for integers");};
 		IssmDouble Max(void){_error_("Max not implemented for integers");};
 		IssmDouble MaxAbs(void){_error_("Max not implemented for integers");};
Index: /issm/trunk-jpl/src/c/classes/Inputs/PentaInput.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/PentaInput.cpp	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/PentaInput.cpp	(revision 22519)
@@ -275,14 +275,4 @@
 	vector->SetValues(numvertices,doflist,this->values,INS_VAL);
 } /*}}}*/
-IssmDouble PentaInput::InfinityNorm(void){/*{{{*/
-
-	/*Output*/
-	IssmDouble norm=0.;
-	int numnodes=this->NumberofNodes(this->interpolation_type);
-
-	for(int i=0;i<numnodes;i++) if(fabs(values[i])>norm) norm=fabs(values[i]);
-	return norm;
-}
-/*}}}*/
 IssmDouble PentaInput::Max(void){/*{{{*/
 
Index: /issm/trunk-jpl/src/c/classes/Inputs/PentaInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/PentaInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/PentaInput.h	(revision 22519)
@@ -59,5 +59,4 @@
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
 		int  GetInputInterpolationType(){_error_("not implemented yet!");};
-		IssmDouble InfinityNorm(void);
 		IssmDouble Max(void);
 		IssmDouble MaxAbs(void);
Index: /issm/trunk-jpl/src/c/classes/Inputs/SegInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/SegInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/SegInput.h	(revision 22519)
@@ -62,5 +62,4 @@
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist){_error_("not implemented yet");};
 		int  GetInputInterpolationType(){_error_("not implemented yet!");};
-		IssmDouble InfinityNorm(void){_error_("not implemented yet");};
 		IssmDouble Max(void);
 		IssmDouble MaxAbs(void){_error_("not implemented yet");};
Index: /issm/trunk-jpl/src/c/classes/Inputs/TetraInput.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/TetraInput.cpp	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/TetraInput.cpp	(revision 22519)
@@ -242,14 +242,4 @@
 	vector->SetValues(numvertices,doflist,this->values,INS_VAL);
 } /*}}}*/
-IssmDouble TetraInput::InfinityNorm(void){/*{{{*/
-
-	/*Output*/
-	IssmDouble norm=0.;
-	int numnodes=this->NumberofNodes(this->interpolation_type);
-
-	for(int i=0;i<numnodes;i++) if(fabs(values[i])>norm) norm=fabs(values[i]);
-	return norm;
-}
-/*}}}*/
 IssmDouble TetraInput::MinAbs(void){/*{{{*/
 
Index: /issm/trunk-jpl/src/c/classes/Inputs/TetraInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/TetraInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/TetraInput.h	(revision 22519)
@@ -62,5 +62,4 @@
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
 		int  GetInputInterpolationType(){_error_("not implemented yet!");};
-		IssmDouble InfinityNorm(void);
 		IssmDouble Max(void);
 		IssmDouble MaxAbs(void);
Index: /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.cpp	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.cpp	(revision 22519)
@@ -528,8 +528,8 @@
 
 } /*}}}*/
-IssmDouble TransientInput::InfinityNorm(void){/*{{{*/
-
-	IssmDouble time;
-	IssmDouble infnorm;
+IssmDouble TransientInput::Max(void){/*{{{*/
+
+	IssmDouble time;
+	IssmDouble max;
 
 	/*First, recover current time from parameters: */
@@ -540,15 +540,35 @@
 
 	/*Call input function*/
-	infnorm=input->InfinityNorm();
+	max=input->Max();
+
+	delete input;
+
+	return max;
+}
+/*}}}*/
+IssmDouble TransientInput::MaxAbs(void){/*{{{*/
+
+	IssmDouble time;
+	IssmDouble maxabs;
+
+	/*First, recover current time from parameters: */
+	parameters->FindParam(&time,TimeEnum);
+
+	/*Retrieve interpolated values for this time step: */
+	Input* input=GetTimeInput(time);
+
+	/*Call input function*/
+	maxabs=input->MaxAbs();
 
 	/*Clean-up and return*/
 	delete input;
-	return infnorm;
-}
-/*}}}*/
-IssmDouble TransientInput::Max(void){/*{{{*/
-
-	IssmDouble time;
-	IssmDouble max;
+	return maxabs;
+
+}
+/*}}}*/
+IssmDouble TransientInput::Min(void){/*{{{*/
+
+	IssmDouble time;
+	IssmDouble min;
 
 	/*First, recover current time from parameters: */
@@ -559,15 +579,16 @@
 
 	/*Call input function*/
-	max=input->Max();
-
-	delete input;
-
-	return max;
-}
-/*}}}*/
-IssmDouble TransientInput::MaxAbs(void){/*{{{*/
-
-	IssmDouble time;
-	IssmDouble maxabs;
+	min=input->Min();
+
+	/*Clean-up and return*/
+	delete input;
+	return min;
+
+}
+/*}}}*/
+IssmDouble TransientInput::MinAbs(void){/*{{{*/
+
+	IssmDouble time;
+	IssmDouble minabs;
 
 	/*First, recover current time from parameters: */
@@ -578,48 +599,8 @@
 
 	/*Call input function*/
-	maxabs=input->MaxAbs();
+	minabs=input->MinAbs();
 
 	/*Clean-up and return*/
 	delete input;
-	return maxabs;
-
-}
-/*}}}*/
-IssmDouble TransientInput::Min(void){/*{{{*/
-
-	IssmDouble time;
-	IssmDouble min;
-
-	/*First, recover current time from parameters: */
-	parameters->FindParam(&time,TimeEnum);
-
-   /*Retrieve interpolated values for this time step: */
-	Input* input=GetTimeInput(time);
-
-	/*Call input function*/
-	min=input->Min();
-
-	/*Clean-up and return*/
-	delete input;
-	return min;
-
-}
-/*}}}*/
-IssmDouble TransientInput::MinAbs(void){/*{{{*/
-
-	IssmDouble time;
-	IssmDouble minabs;
-
-	/*First, recover current time from parameters: */
-	parameters->FindParam(&time,TimeEnum);
-
-	/*Retrieve interpolated values for this time step: */
-	Input* input=GetTimeInput(time);
-
-	/*Call input function*/
-	minabs=input->MinAbs();
-
-	/*Clean-up and return*/
-	delete input;
 	return minabs;
 }
Index: /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/TransientInput.h	(revision 22519)
@@ -71,5 +71,4 @@
 		void GetTimeValues(IssmDouble* values,IssmDouble time){_error_("not implemented yet");};
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
-		IssmDouble InfinityNorm(void);
 		IssmDouble Max(void);
 		IssmDouble MaxAbs(void);
Index: /issm/trunk-jpl/src/c/classes/Inputs/TriaInput.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/TriaInput.cpp	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/TriaInput.cpp	(revision 22519)
@@ -276,14 +276,4 @@
 	vector->SetValues(numvertices,doflist,this->values,INS_VAL);
 } /*}}}*/
-IssmDouble TriaInput::InfinityNorm(void){/*{{{*/
-
-	/*Output*/
-	IssmDouble norm=0.;
-	int numnodes=this->NumberofNodes(this->interpolation_type);
-
-	for(int i=0;i<numnodes;i++) if(fabs(values[i])>norm) norm=fabs(values[i]);
-	return norm;
-}
-/*}}}*/
 IssmDouble TriaInput::Max(void){/*{{{*/
 
Index: /issm/trunk-jpl/src/c/classes/Inputs/TriaInput.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs/TriaInput.h	(revision 22518)
+++ /issm/trunk-jpl/src/c/classes/Inputs/TriaInput.h	(revision 22519)
@@ -62,5 +62,4 @@
 		int  GetInputInterpolationType(){return interpolation_type;};
 		void GetVectorFromInputs(Vector<IssmDouble>* vector,int* doflist);
-		IssmDouble InfinityNorm(void);
 		IssmDouble Max(void);
 		IssmDouble MaxAbs(void);
