+ added feature calculation for the labels
[qpalma.git] / python / Plif.py
index 433c3d4..5acf385 100644 (file)
@@ -42,3 +42,43 @@ class Plf:
 
       return ps
 
+
+def base_coord(b1,b2):
+   b1 = b1.lower()
+   b2 = b2.lower()
+   assert b1 in ['a','c','g','t','n']
+   assert b2 in ['a','c','g','t','n']
+   cb = {'a':0, 'c':1, 'g':2, 't':3, 'n':4}
+
+   b1 = cb[b1]
+   b2 = cb[b2]
+
+   return b1*5+b2
+
+def linspace(a,b,n):
+   intervalLength = b-a
+   stepSize = 1.0*intervalLength / (n-1)
+   
+   interval = [0]*n
+   interval[0] = a
+   interval[-1] = b
+   for i in range(1,n-1):
+      interval[i] = a+(i*stepSize)
+
+   return interval
+
+def logspace(a,b,n):
+   interval = [0]*n
+   begin = 10.0**a
+   end = 10.0**b
+   intervalSize = 1.0*(b-a)/(n-1)
+   interval[0] = begin
+   interval[-1] = end
+
+   for i in range(1,n-1):
+      interval[i] = 10**(a+i*intervalSize)
+
+   return interval
+
+def log10(x):
+   return math.log(x)/math.log(10)