Index: /issm/trunk-jpl/src/c/modules/Krigingx/Krigingx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/modules/Krigingx/Krigingx.cpp	(revision 12176)
+++ /issm/trunk-jpl/src/c/modules/Krigingx/Krigingx.cpp	(revision 12177)
@@ -41,5 +41,7 @@
 
 	/*Loop over all interpolations*/
+	printf("      interpolation progress:  %5.2lf %%",0.0);
 	for(int idx=0;idx<n_interp;idx++){
+		if(idx%100==0) printf("\b\b\b\b\b\b\b%5.2lf %%",(double)idx/n_interp*100);
 
 		/*Get semivariogram vector associated to this location*/
@@ -65,4 +67,5 @@
 		xfree((void**)&GinvZ);
 	}
+	printf("\b\b\b\b\b\b\b\b%5.2lf %%\n",100.0);
 
 	/*clean-up and Assign output pointer*/
@@ -75,15 +78,24 @@
 void SemiVariogram(double* gamma,double x1,double y1,double x2,double y2){
 
+	/*Intermediaries*/
+	double a,c0,c1;
+
 	/*Calculate distance*/
 	double r=sqrt(pow(x1-x2,2.)+pow(y1-y2,2.));
 
 	/*Switch between variogram models*/
-	switch(1){
-		case 1:{ /*Exponential*/
-			double c0=0.2;
-			double c1=0.8;
-			double a =1;
+	switch(2){
+		case 1:/*Exponential*/
+			c0=0.2;
+			c1=0.8;
+			a =1;
 			*gamma = c0 + c1*(1-exp(-r/a));
-			return;}
+			return;
+		case 2:/*Gaussian*/
+			c0=0.2;
+			c1=0.8;
+			a =1;
+			*gamma = c0 + c1*(1-exp(-pow(r,2.)/pow(a,2.)));
+			return;
 		default:
 			_error_("Not implemented yet");
