Пример #1
0
    def test_npred_no_edisp(self):
        const = 1 / u.TeV / u.cm**2 / u.s
        model = ConstantSpectralModel(const)
        livetime = 1 * u.s
        dataset = SpectrumDatasetOnOff(
            counts=self.on_counts,
            counts_off=self.off_counts,
            aeff=self.aeff,
            model=model,
            livetime=livetime,
        )

        energy = self.aeff.energy.edges * self.aeff.energy.unit
        expected = self.aeff.data.data[0] * (energy[-1] -
                                             energy[0]) * const * livetime

        assert_allclose(dataset.npred_sig().data.sum(), expected.value)
Пример #2
0
    def test_npred_no_edisp(self):
        const = 1 * u.Unit("cm-2 s-1 TeV-1")
        model = SkyModel(spectral_model=ConstantSpectralModel(const=const))
        livetime = 1 * u.s

        e_reco = self.on_counts.energy.edges
        aeff = EffectiveAreaTable(e_reco[:-1], e_reco[1:],
                                  np.ones(4) * u.cm**2)
        dataset = SpectrumDatasetOnOff(
            counts=self.on_counts,
            counts_off=self.off_counts,
            aeff=aeff,
            models=model,
            livetime=livetime,
        )

        energy = aeff.energy.edges
        expected = aeff.data.data[0] * (energy[-1] -
                                        energy[0]) * const * livetime

        assert_allclose(dataset.npred_sig().data.sum(), expected.value)