Пример #1
0
def test_compound_region_center():
    region_1 = make_region("galactic;circle(1,1,0.1)")
    region_2 = make_region("galactic;circle(-1,1,0.1)")
    region_3 = make_region("galactic;circle(1,-1,0.1)")
    region_4 = make_region("galactic;circle(-1,-1,0.1)")

    for region in [region_2, region_3, region_4]:
        region_1 = region_1.union(region)

    center = compound_region_center(region_1)

    assert_allclose(center.galactic.l.wrap_at("180d"), 0 * u.deg, atol=1e-6)
    assert_allclose(center.galactic.b, 0 * u.deg, atol=1e-6)
Пример #2
0
def test_compound_region_center():
    regions_ds9 = ("galactic;"
                   "circle(1,1,0.1);"
                   "circle(-1,1,0.1);"
                   "circle(1,-1,0.1);"
                   "circle(-1,-1,0.1);")

    regions = Regions.parse(regions_ds9, format="ds9")

    region = regions_to_compound_region(regions)

    center = compound_region_center(region)

    assert_allclose(center.galactic.l.wrap_at("180d"), 0 * u.deg, atol=1e-6)
    assert_allclose(center.galactic.b, 0 * u.deg, atol=1e-6)
Пример #3
0
    def __init__(self, region, axes=None, wcs=None, binsz_wcs="0.1 deg"):
        self._region = region
        self._axes = MapAxes.from_default(axes, n_spatial_axes=2)
        self._binsz_wcs = binsz_wcs

        if wcs is None and region is not None:
            if isinstance(region, CompoundSkyRegion):
                self._center = compound_region_center(region)
            else:
                self._center = region.center

            wcs = WcsGeom.create(
                binsz=binsz_wcs,
                skydir=self._center,
                proj=self.projection,
                frame=self._center.frame.name,
            ).wcs

        self._wcs = wcs
        self.ndim = len(self.data_shape)

        # define cached methods
        self.get_wcs_coord_and_weights = lru_cache()(self.get_wcs_coord_and_weights)
Пример #4
0
def test_compound_region_center_single():
    region = Regions.parse("galactic;circle(1,1,0.1)", format="ds9")[0]
    center = compound_region_center(region)

    assert_allclose(center.galactic.l.wrap_at("180d"), 1 * u.deg, atol=1e-6)
    assert_allclose(center.galactic.b, 1 * u.deg, atol=1e-6)