Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/c/modules/Krigingx/Krigingx.cpp
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/c/modules/Krigingx/Krigingx.cpp	(revision 12726)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/c/modules/Krigingx/Krigingx.cpp	(revision 12727)
@@ -95,6 +95,8 @@
 		xDelete<double>(gate.percent);
 	}
 	else if(strcmp(output,"idw")==0){ //Inverse distance weighting
+		double power;
+		options->Get(&power,"power",2.);
 		/*initialize thread parameters: */
 		gate.n_interp     = n_interp;
 		gate.x_interp     = x_interp;
@@ -107,6 +109,7 @@
 		gate.predictions  = predictions;
 		gate.error        = error;
 		gate.percent      = xNewZeroInit<double>(num);
+		gate.power        = power;
 
 		/*launch the thread manager with Krigingxt as a core: */
 		LaunchThread(idwt,(void*)&gate,num);
@@ -269,10 +272,10 @@
 	double       *predictions  = gate->predictions;
 	double       *error        = gate->error;
 	double       *percent      = gate->percent;
+	double        power        = gate->power;
 
 	/*Intermediaries*/
 	double localpercent;
-	double  power = 2.;
 
 	/*partition loop across threads: */
 	PartitionRange(&i0,&i1,n_interp,num_threads,my_thread);
Index: /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/c/modules/Krigingx/Krigingx.h
===================================================================
--- /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/c/modules/Krigingx/Krigingx.h	(revision 12726)
+++ /u/astrid-r1b/morlighe/issmuci/trunk-jpl/../trunk-jpl/src/c/modules/Krigingx/Krigingx.h	(revision 12727)
@@ -28,6 +28,7 @@
 	double       *predictions;
 	double       *error;
 	double       *percent;
+	double        power;//for idw
 }KrigingxThreadStruct;
 
 void* Krigingxt(void*);
