Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

activate measurements used in s16a production afterburner #45

Merged
merged 1 commit into from
Dec 20, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
9 changes: 9 additions & 0 deletions config/convolvedFluxes.py
@@ -0,0 +1,9 @@
# Enable measurement of convolved fluxes
# 'config' is a SourceMeasurementConfig
try:
import lsst.meas.extensions.convolved # noqa: Load flux.convolved algorithm
except ImportError as exc:
print("Cannot import lsst.meas.extensions.convolved (%s): disabling convolved flux measurements" % (exc,))
else:
config.plugins.names.add("ext_convolved_ConvolvedFlux")
# Default values for 'seeing' and 'aperture.radii' are suitable for HSC.
27 changes: 27 additions & 0 deletions config/forcedPhotCoadd.py
@@ -1,9 +1,11 @@
import os.path

from lsst.utils import getPackageDir
from lsst.meas.base import CircularApertureFluxAlgorithm

config.measurement.load(os.path.join(getPackageDir("obs_subaru"), "config", "apertures.py"))
config.measurement.load(os.path.join(getPackageDir("obs_subaru"), "config", "kron.py"))
config.measurement.load(os.path.join(getPackageDir("obs_subaru"), "config", "convolvedFluxes.py"))
config.load(os.path.join(getPackageDir("obs_subaru"), "config", "cmodel.py"))

config.measurement.slots.instFlux = None
Expand All @@ -14,3 +16,28 @@

config.catalogCalculation.plugins.names = ["base_ClassificationExtendedness"]
config.measurement.slots.psfFlux = "base_PsfFlux"

def doUndeblended(config, algName, fluxList=None):
"""Activate undeblended measurements of algorithm

Parameters
----------
algName : `str`
Algorithm name.
fluxList : `list` of `str`, or `None`
List of flux columns to register for aperture correction. If `None`,
then this will be the `algName` appended with `_flux`.
"""
if algName not in config.measurement.plugins:
return
if fluxList is None:
fluxList = [algName + "_flux"]
config.measurement.undeblended.names.add(algName)
config.measurement.undeblended[algName] = config.measurement.plugins[algName]
for flux in fluxList:
config.applyApCorr.proxies["undeblended_" + flux] = flux


doUndeblended(config, "base_PsfFlux")
doUndeblended(config, "ext_photometryKron_KronFlux")
doUndeblended(config, "base_CircularApertureFlux", []) # No aperture correction for circular apertures
1 change: 1 addition & 0 deletions config/measureCoaddSources.py
Expand Up @@ -5,6 +5,7 @@

config.measurement.load(os.path.join(getPackageDir("obs_subaru"), "config", "apertures.py"))
config.measurement.load(os.path.join(getPackageDir("obs_subaru"), "config", "kron.py"))
config.measurement.load(os.path.join(getPackageDir("obs_subaru"), "config", "convolvedFluxes.py"))
config.measurement.load(os.path.join(getPackageDir("obs_subaru"), "config", "hsm.py"))
config.load(os.path.join(getPackageDir("obs_subaru"), "config", "cmodel.py"))

Expand Down
6 changes: 6 additions & 0 deletions config/processCcd.py
Expand Up @@ -57,6 +57,7 @@
config.charImage.load(os.path.join(configDir, "cmodel.py"))
config.charImage.measurement.load(os.path.join(configDir, "apertures.py"))
config.charImage.measurement.load(os.path.join(configDir, "kron.py"))
config.charImage.measurement.load(os.path.join(configDir, "convolvedFluxes.py"))
config.charImage.measurement.load(os.path.join(configDir, "hsm.py"))
if "ext_shapeHSM_HsmShapeRegauss" in config.charImage.measurement.plugins:
# no deblending has been done
Expand All @@ -74,3 +75,8 @@

config.charImage.measurement.plugins.names |= ["base_Jacobian", "base_FPPosition"]
config.calibrate.measurement.plugins.names |= ["base_Jacobian", "base_FPPosition"]

# Convolved fluxes can fail for small target seeing if the observation seeing is larger
if "ext_convolved_ConvolvedFlux" in config.charImage.measurement.plugins:
names = config.charImage.measurement.plugins["ext_convolved_ConvolvedFlux"].getAllResultNames()
config.charImage.measureApCorr.allowFailure += names