예제 #1
0
파일: Peaks.py 프로젝트: bopopescu/spike
 def test_peaks1d(self):
     "test 1D peak picker"
     print(self.test_peaks1d.__doc__)
     M = np.zeros((30))
     M[5] = 20
     M[7] = 8
     M[15] = 11
     M[10] = 20
     d = _NPKData(buffer=M)
     d.pp(threshold=3)
     self.assertEqual(list(d.peaks.pos), [5.0, 7.0, 10.0, 15.0])
     self.assertEqual(list(d.peaks.intens), [20.0, 8.0, 20.0, 11.0])
     d.peaks.report(NbMaxPeaks=2)
예제 #2
0
파일: Peaks.py 프로젝트: bopopescu/spike
 def test_peaks2d(self):
     "test 2D peak picker"
     print(self.test_peaks2d.__doc__)
     M = np.zeros((30, 30))
     M[5, 7] = 20
     M[10, 12] = 20
     d = _NPKData(buffer=M)
     d.pp(
         threshold=10
     )  # 3*d.std was just right - but does not work anymore with robust_stats() !
     self.assertEqual(list(d.peaks.posF1), [5, 10])
     self.assertEqual(list(d.peaks.posF2), [7, 12])
     self.assertEqual(list(d.peaks.intens), [20.0, 20.0])
예제 #3
0
파일: Peaks.py 프로젝트: bopopescu/spike
 def test_center1d(self):
     x = np.arange(5)
     y = center(x, 2.2, 10.0, 1.2)
     # y == [ -2.36111111e+01  -4.44089210e-15   9.72222222e+00   5.55555556e+00 -1.25000000e+01]
     self.assertAlmostEqual(y[2], 9.72222222)
     d = _NPKData(buffer=np.maximum(y, 0.0))
     d.peaks = Peak1DList(source=d)
     d.peaks.append(Peak1D(0, "0", 9.7, 2))
     d.peaks[-1].width = 1.0
     d.centroid(npoints=3)
     self.assertAlmostEqual(d.peaks[0].pos, 2.2)
     self.assertAlmostEqual(d.peaks[0].intens, 10.0)
     self.assertAlmostEqual(d.peaks[0].width, 1.2 * np.sqrt(2))
     d.peaks.report(NbMaxPeaks=10)
예제 #4
0
파일: Peaks.py 프로젝트: bopopescu/spike
 def test_center2d(self):
     M = np.zeros((20, 20))
     # add one peak at (F1,F2) 5.3, 7.9 with widthes (5.0,1.3)
     for y in range(1, 10):
         for x in range(6, 11):
             #                 yo, x0 intens, widthy, widthx
             M[y, x] = center2d(np.array([y, x]), 5.3, 7.9, 20.0, 5.0, 1.3)
     #print (M[1:10,6:11])
     self.assertAlmostEqual(M[2, 7], 5.87777515)
     d = _NPKData(buffer=np.maximum(M, 0.0))
     d.peaks = Peak2DList(source=d)
     # self, Id, label, intens, posF1, posF2
     d.peaks.append(Peak2D(0, "0", 18.0, 5, 8))
     d.centroid(npoints_F1=5)
     self.assertAlmostEqual(d.peaks[0].posF1, 5.3)
     self.assertAlmostEqual(d.peaks[0].posF2, 7.9)
     self.assertAlmostEqual(d.peaks[0].intens, 20.0)
     self.assertAlmostEqual(d.peaks[0].widthF1, 5.0 * np.sqrt(2))
     self.assertAlmostEqual(d.peaks[0].widthF2, 1.3 * np.sqrt(2))