Esempio n. 1
0
    def get_roi(name,
                center,
                point_sources,
                diffuse_sources,
                emin=1e2,
                emax=1e5,
                binsperdec=2):

        simdir = path.expand('$SIMDIR/%s' % name)

        if not os.path.exists(simdir):
            os.makedirs(simdir)

        ft1 = '%s/ft1.fits' % simdir
        ft2 = '%s/ft2.fits' % simdir

        ds = DataSpecification(ft1files=ft1,
                               ft2files=ft2,
                               ltcube='%s/ltcube.fits' % simdir,
                               binfile='%s/binfile.fits' % simdir)

        sa = SpectralAnalysisMC(
            ds,
            seed=0,
            emin=emin,
            emax=emax,
            irf='P7SOURCE_V6',
            binsperdec=binsperdec,
            mc_energy=True,
            tstart=0,
            tstop=604800,  # 7 days
            quiet=not PointlikeTest.VERBOSE,
            roi_dir=center,
            maxROI=5,
            minROI=5,
            savedir='%s/gtobssim' % simdir)

        roi = sa.roi(roi_dir=center,
                     point_sources=point_sources,
                     diffuse_sources=diffuse_sources)

        return roi
Esempio n. 2
0
    def __init__(self, **kwargs):
        keyword_options.process(self, kwargs)

        if self.point_sources == [] and self.diffuse_sources == []:
            self.point_sources, self.diffuse_sources = self.get_default_sources(
            )

        ltcube = join(self.tempdir, 'ltcube.fits')
        ds = DataSpecification(ft1files=join(self.tempdir, 'ft1.fits'),
                               ft2files=join(self.tempdir, 'ft2.fits'),
                               ltcube=ltcube,
                               binfile=join(self.tempdir, 'binfile.fits'))

        sa = SpectralAnalysisMC(
            ds,
            seed=self.seed,
            emin=self.emin,
            emax=self.emax,
            binsperdec=self.binsperdec,
            event_class=self.event_class,
            conv_type=self.conv_type,
            roi_dir=self.roi_dir,
            minROI=self.maxROI,
            maxROI=self.maxROI,
            irf=self.irf,
            use_weighted_livetime=True,
            savedir=self.tempdir,
            tstart=0,
            tstop=self.simtime,
            ltfrac=0.9,
        )

        roi = sa.roi(roi_dir=self.roi_dir,
                     point_sources=self.point_sources,
                     diffuse_sources=self.diffuse_sources)

        self.roi = roi

        fix_pointlike_ltcube(ltcube)
Esempio n. 3
0
    def __init__(self,**kwargs):
        keyword_options.process(self, kwargs)

        if self.point_sources == [] and self.diffuse_sources == []:
            self.point_sources, self.diffuse_sources = self.get_default_sources()

        ltcube = join(self.tempdir,'ltcube.fits')
        ds = DataSpecification(
            ft1files = join(self.tempdir,'ft1.fits'),
            ft2files = join(self.tempdir,'ft2.fits'),
            ltcube = ltcube, 
            binfile = join(self.tempdir,'binfile.fits')
        )

        sa = SpectralAnalysisMC(ds,
                                seed=self.seed,
                                emin=self.emin,
                                emax=self.emax,
                                binsperdec=self.binsperdec,
                                event_class=self.event_class,
                                conv_type=self.conv_type,
                                roi_dir=self.roi_dir,
                                minROI=self.maxROI,
                                maxROI=self.maxROI,
                                irf=self.irf,
                                use_weighted_livetime=True,
                                savedir=self.tempdir,
                                tstart=0,
                                tstop=self.simtime,
                                ltfrac=0.9,
                               )

        roi = sa.roi(roi_dir=self.roi_dir,
                     point_sources = self.point_sources,
                     diffuse_sources = self.diffuse_sources)

        self.roi = roi

        fix_pointlike_ltcube(ltcube)
Esempio n. 4
0
    ltfrac = None


ds = DataSpecification(
    ft1files=join(tempdir, "ft1.fits"), ft2files=ft2, ltcube=ltcube, binfile=join(tempdir, "binned.fits")
)

sa = SpectralAnalysisMC(
    ds,
    binsperdec=8,
    emin=emin,
    emax=emax,
    irf="P7SOURCE_V6",
    roi_dir=roi_dir,
    minROI=10 * np.sqrt(2),
    maxROI=10 * np.sqrt(2),
    seed=i,
    tstart=tstart,
    tstop=tstop,
    ltfrac=ltfrac,
    use_weighted_livetime=True,
    mc_energy=True,
    zenithcut=100,
    savedir=tempdir,
)

roi = sa.roi(roi_dir=roi_dir, diffuse_sources=diffuse_sources)

state = PointlikeState(roi)

results = dict(
    time=time, i=i, istr=istr, difftype=difftype, position=position, roi_dir=skydirdict(roi_dir), emin=emin, emax=emax
Esempio n. 5
0
    ft2 = join(tempdir, 'ft2.fits')
    ltcube = join(tempdir, 'ltcube.fits')
    ds = DataSpecification(
        ft1files = ft1,
        ft2files = ft2,
        binfile = binfile,
        ltcube = ltcube)

    sa = SpectralAnalysisMC(ds,
                            emin=emin,
                            emax=emax,
                            binsperdec=8,
                            event_class=0,
                            roi_dir=roi_dir,
                            minROI=10,
                            maxROI=10,
                            irf=irf,
                            seed=i,
                            tstart=0,
                            tstop=31556926,
                            ltfrac=0.8,
                            savedir=tempdir,
                            use_weighted_livetime=True,
                           )

    point = PointSource(name=name, model=model_mc, skydir=roi_dir)

    roi = sa.roi(
        roi_dir = roi_dir,
        point_sources=[point],
        diffuse_sources=diffuse)
Esempio n. 6
0
    ds = DataSpecification(
        ft1files = ft1,
        ft2files = ft2,
        binfile = binfile,
        ltcube = ltcube)

    size = 40
    roi_size = (size/2.0)*np.sqrt(2)

    sa = SpectralAnalysisMC(ds,
                            seed=i,
                            emin=emin,
                            emax=emax,
                            binsperdec=8,
                            event_class=0,
                            roi_dir=w44_2FGL.skydir,
                            minROI=roi_size,
                            maxROI=roi_size,
                            irf='P7SOURCE_V6',
                            zenithcut=100,
                            use_weighted_livetime=True,
                            mc_energy=(args.edisp==False),
                           )

    roi = sa.roi(
        roi_dir=w44_2FGL.skydir,
        point_sources=[],
        diffuse_sources=diffuse_sources,
    )

    likelihood_state = PointlikeState(roi)