diff --git a/pymule/xicut.py b/pymule/xicut.py
new file mode 100644
index 0000000000000000000000000000000000000000..abe8ae10a57b58d7c3b1ac916f616113b3877136
--- /dev/null
+++ b/pymule/xicut.py
@@ -0,0 +1,20 @@
+from scipy import optimize
+import numpy as np
+
+
+def myfit(data, n):
+    xdata = np.log(data[:,0])
+    ydata = data[:,1]
+    edata = data[:,2]
+
+    fitfunc = lambda p, x: sum(p[i] * x**i for i in range(len(p)))
+    errfunc = lambda p, x, y, err: (y - fitfunc(p, x)) / err
+
+    pinit = [1.0] * (n+1)
+    out = optimize.leastsq(errfunc, pinit,
+                           args=(xdata, ydata, edata), full_output=1)
+
+    coeff = out[0]
+    covar = out[1]
+
+    return coeff, covar