コード例 #1
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_noise_type_input(self):
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(period,
                                                    photon_count32,
                                                    noise_type='foo')
     with self.assertRaises(TypeError):
         flimlib.GCI_triple_integral_fitting_engine(
             period, photon_count32, noise_type={"foo": "bar"})
コード例 #2
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_unused_noise_types(self):
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(
             period, photon_count32, noise_type='NOISE_GAUSSIAN_FIT')
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(period,
                                                    photon_count32,
                                                    noise_type='NOISE_MLE')
コード例 #3
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_photon_count(self):
     flimlib.GCI_triple_integral_fitting_engine(
         period, photon_count64)  #passing float 64 should be fine
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(
             period, photon_count2d)  #passing 2d array will fail
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(period,
                                                    5.7)  #must be 1d array
     flimlib.GCI_triple_integral_fitting_engine(period, [1, 2])
コード例 #4
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_noise_const_and_given(self):
     #the result should be the same if noise given is constant
     result_const = flimlib.GCI_triple_integral_fitting_engine(
         period, photon_count32, noise_type='NOISE_CONST', sig=1.0)
     result_noise_given = flimlib.GCI_triple_integral_fitting_engine(
         period,
         photon_count32,
         noise_type='NOISE_GIVEN',
         sig=np.ones(samples))
     self.assertAlmostEqual(result_const.chisq, result_noise_given.chisq)
     self.assertAlmostEqual(result_const.A, result_noise_given.A)
     self.assertAlmostEqual(result_const.Z, result_noise_given.Z)
     self.assertAlmostEqual(result_const.tau, result_noise_given.tau)
コード例 #5
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_noise_const(self):
     flimlib.GCI_triple_integral_fitting_engine(period,
                                                photon_count32,
                                                noise_type='NOISE_CONST',
                                                sig=2)
     flimlib.GCI_triple_integral_fitting_engine(period,
                                                photon_count32,
                                                noise_type='NOISE_CONST',
                                                sig=[5])
     with self.assertRaises(TypeError):
         flimlib.GCI_triple_integral_fitting_engine(
             period,
             photon_count32,
             noise_type='NOISE_CONST',
             sig=[1, 2, 3, 4, 5])
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(
             period, photon_count32, noise_type='NOISE_CONST', sig='foo')
コード例 #6
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
    def test_output_margin(self):
        result = flimlib.GCI_triple_integral_fitting_engine(
            period, photon_count32)

        # test to an integer precision since the triple integral fit isn't as rigorous
        self.assertAlmostEqual(result.A, a_in, 0)
        self.assertAlmostEqual(result.tau, tau_in, 0)
        self.assertAlmostEqual(result.Z, 0.0, 0)
        self.assertTrue(result.tries > 0)
        self.assertAlmostEqual(result.fitted[0], a_in, 0)
        self.assertAlmostEqual(result.residuals[0], 0.0, 0)
        self.assertAlmostEqual(result.residuals[-1], 0.0, 0)
コード例 #7
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_noise_given(self):
     flimlib.GCI_triple_integral_fitting_engine(period,
                                                photon_count32,
                                                noise_type='NOISE_GIVEN',
                                                sig=list(range(samples)))
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(
             period, photon_count32, noise_type='NOISE_GIVEN', sig=2)
     with self.assertRaises(TypeError):
         flimlib.GCI_triple_integral_fitting_engine(
             period,
             photon_count32,
             noise_type='NOISE_GIVEN',
             sig={"foo": "bar"})
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(
             period, photon_count32, noise_type='NOISE_GIVEN', sig='foo')
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(
             period,
             photon_count32,
             noise_type='NOISE_GIVEN',
             sig=[1, 2, 3, 4, 5])
コード例 #8
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_instr(self):
     flimlib.GCI_triple_integral_fitting_engine(period,
                                                photon_count32,
                                                instr=[1, 2, 3, 4, 5])
     flimlib.GCI_triple_integral_fitting_engine(period,
                                                photon_count32,
                                                instr=["42"])
     flimlib.GCI_triple_integral_fitting_engine(
         period, photon_count32, instr=list(range(300))
     )  # no errors??? ask mark/jenu. ok we should actually just check that it's the right length
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(period,
                                                    photon_count32,
                                                    instr=5)
     with self.assertRaises(ValueError):
         flimlib.GCI_triple_integral_fitting_engine(period,
                                                    photon_count32,
                                                    instr="foo")
     with self.assertRaises(TypeError):
         flimlib.GCI_triple_integral_fitting_engine(period,
                                                    photon_count32,
                                                    instr={"foo": "bar"})
コード例 #9
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_chisq_target(self):
     result = flimlib.GCI_triple_integral_fitting_engine(
         period, photon_count32, chisq_target=0.0
     )  #impossible target causes it to run more than once and give up
     self.assertTrue(result.tries > 1)
コード例 #10
0
ファイル: test_flimlib.py プロジェクト: facetorched/flimlib
 def test_noise_poisson_fit(self):
     flimlib.GCI_triple_integral_fitting_engine(
         period, photon_count32, noise_type='NOISE_POISSON_FIT')
     # this should print a warning
     flimlib.GCI_triple_integral_fitting_engine(
         period, photon_count32, noise_type='NOISE_POISSON_FIT', sig=2)