Esempio n. 1
0
    def sdssColorterms(self):
        """
        Return the SDSS to HSC color terms
        """

        colorterms = ColortermLibrary()
        colorterms.data = {}
        colorterms.data['sdss*'] = lsst.pipe.tasks.colorterms.ColortermDict()
        colorterms.data['sdss*'].data = {}
        colorterms.data['sdss*'].data[
            'g'] = lsst.pipe.tasks.colorterms.Colorterm()
        colorterms.data['sdss*'].data['g'].primary = 'g'
        colorterms.data['sdss*'].data['g'].secondary = 'r'
        colorterms.data['sdss*'].data['g'].c0 = -0.00816446
        colorterms.data['sdss*'].data['g'].c1 = -0.08366937
        colorterms.data['sdss*'].data['g'].c2 = -0.00726883
        colorterms.data['sdss*'].data[
            'r'] = lsst.pipe.tasks.colorterms.Colorterm()
        colorterms.data['sdss*'].data['r'].primary = 'r'
        colorterms.data['sdss*'].data['r'].secondary = 'i'
        colorterms.data['sdss*'].data['r'].c0 = 0.0013181
        colorterms.data['sdss*'].data['r'].c1 = 0.01284177
        colorterms.data['sdss*'].data['r'].c2 = -0.03068248
        colorterms.data['sdss*'].data[
            'i'] = lsst.pipe.tasks.colorterms.Colorterm()
        colorterms.data['sdss*'].data['i'].primary = 'i'
        colorterms.data['sdss*'].data['i'].secondary = 'z'
        colorterms.data['sdss*'].data['i'].c0 = 0.00130204
        colorterms.data['sdss*'].data['i'].c1 = -0.16922042
        colorterms.data['sdss*'].data['i'].c2 = -0.01374245

        return colorterms
    def runDataRef(self, dataRefList, camera, butler, tract, debug):

        colorterms = ColortermLibrary()
        name = os.path.join(os.environ["OBS_SUBARU_DIR"], "config", camera, "colorterms.py")
        if os.path.exists(name):
            colorterms.load(name)

        filters = list()
        for dataRef in dataRefList:
            if dataRef.dataId['filter'] not in filters:
                filters.append(dataRef.dataId['filter'])

        if len(filters) != 1:
            self.log.fatal("There are %d filters in input frames" % len(filters))
            return None

        ct = colorterms.getColorterm(butler.mapper.filters[filters[0]], self.config.photoCatName)

        return self.run(dataRefList, ct, debug)
Esempio n. 3
0
import astropy.units as u

import lsst.utils.tests
import lsst.afw.geom
import lsst.pipe.base as pipeBase
from lsst.meas.algorithms import (LoadReferenceObjectsTask, getRefFluxField,
                                  ReferenceObjectLoader)
from lsst.pipe.tasks.loadReferenceCatalog import LoadReferenceCatalogConfig, LoadReferenceCatalogTask
from lsst.pipe.tasks.colorterms import Colorterm, ColortermDict, ColortermLibrary

synthTerms = ColortermLibrary(
    data={
        "synth*":
        ColortermDict(
            data={
                "filter1":
                Colorterm(primary="ref1", secondary="ref2", c0=0.0, c1=0.01),
                "filter2":
                Colorterm(primary="ref2", secondary="ref3", c0=0.0, c1=-0.01),
            })
    })

_synthFlux = 100.0
_synthCenter = lsst.geom.SpherePoint(30, -30, lsst.geom.degrees)


def setup_module(module):
    lsst.utils.tests.init()


class TrivialLoader(ReferenceObjectLoader):
Esempio n. 4
0
# From the last page of http://www.naoj.org/staff/nakata/suprime/illustration/colorterm_report_ver3.pdf
# Transformation for griz band between SDSS and SC (estimated with GS83 SEDs)
hamamatsu = ColortermLibrary(
    data={
        "ham*":
        ColortermDict(
            data={
                "g":
                Colorterm(primary="g", secondary="r", c0=-0.00928, c1=-0.0824),
                "r":
                Colorterm(primary="r",
                          secondary="i",
                          c0=-0.00282,
                          c1=-0.0498,
                          c2=-0.0149),
                "i":
                Colorterm(primary="i",
                          secondary="z",
                          c0=0.00186,
                          c1=-0.140,
                          c2=-0.0196),
                "z":
                Colorterm(primary="z",
                          secondary="i",
                          c0=-4.03e-4,
                          c1=0.0967,
                          c2=0.0210),
            })
    })

import lsst.afw.image as afwImage
import lsst.utils.tests
from lsst.utils import getPackageDir
from lsst.log import Log
from lsst.pipe.tasks.photoCal import PhotoCalTask, PhotoCalConfig
from lsst.pipe.tasks.colorterms import Colorterm, ColortermDict, ColortermLibrary

RefCatDir = os.path.join(getPackageDir("pipe_tasks"), "tests", "data", "sdssrefcat")

# Quiet down meas_astrom logging, so we can see PhotoCal logs better
Log.getLogger("LoadIndexedReferenceObjectsTask").setLevel(Log.WARN)

testColorterms = ColortermLibrary(data={
    "test*": ColortermDict(data={
        "g": Colorterm(primary="g", secondary="r", c0=0.00, c1=0.00),
        "r": Colorterm(primary="r", secondary="i", c0=0.00, c1=0.00, c2=0.00),
        "i": Colorterm(primary="i", secondary="z", c0=1.00, c1=0.00, c2=0.00),
        "z": Colorterm(primary="z", secondary="i", c0=0.00, c1=0.00, c2=0.00),
    })
})


def setup_module(module):
    lsst.utils.tests.init()


class PhotoCalTest(unittest.TestCase):

    def setUp(self):

        # Load sample input from disk
        testDir = os.path.dirname(__file__)
Esempio n. 6
0
from lsst.pipe.tasks.colorterms import ColortermLibrary
# This file is to test that Config validation works when colorterms are
# requested but no ColortermLibrary is provided.
config.applyColorTerms = True
# Have to override the fact that the default HSC jointcal config provides
# a ColortermLibrary.
config.colorterms = ColortermLibrary()
Esempio n. 7
0
from lsst.pipe.tasks.colorterms import ColortermLibrary, ColortermDict, Colorterm
# this test needs the ps1 r-band colorterm
config.applyColorTerms = True
# The values in this library were taken from obs_subaru as of stack version 19.0
config.colorterms = ColortermLibrary(data={
    "ps1*": ColortermDict(data={
        'r': Colorterm(primary="r", secondary="i", c0=-0.000144, c1=0.001369, c2=-0.008380),
})
})
Esempio n. 8
0
from lsst.pipe.tasks.colorterms import ColortermLibrary, ColortermDict, Colorterm
# this test needs the sdss r-band colorterm
config.applyColorTerms = True
# The values in this library were taken from obs_subaru as of stack version 16.0
config.colorterms = ColortermLibrary(
    data={
        "sdss*":
        ColortermDict(
            data={
                'r':
                Colorterm(primary="r",
                          secondary="i",
                          c0=0.00231810,
                          c1=0.01284177,
                          c2=-0.03068248)
            })
    })