Hi all,
I’m working on the LSST–VISTA fusion pipeline (using LSST Science Pipelines via the obs_vista package to combine LSST and VISTA data). As part of this, I’m building a LSST–VISTA calibration refcat. For VIRCAM Z/Y I’m following a Monster-style calibration approach (fits/splines between bandpasses), and for J/H/K I’m attaching VISTA photometry to Monster via crossmatch to build a combined Monster–VISTA refcat (keeping Monster coordinates).
The issue is cross-matching robustness in dense fields when the external VISTA catalogue positions are not at the same epoch as Monster. In my DP1 test case (VIDEO CDFS), I attempted a PM-aware matching scheme: I propagated Monster positions from the Gaia reference epoch to the VISTA catalogue epoch using Monster proper motions, did an initial loose crossmatch to estimate and remove a bulk offset, then re-matched with a tighter radius enforcing unique 1–1 pairs. I then propagated the matched VISTA positions back to the Monster epoch as a consistency check. Despite this, a residual mismatch remains, so I’m concerned about incorrect associations (wrong VISTA flux attached to a Monster source) rather than a simple global shift.
I suspect this is a known class of problem — e.g. when Monster was constructed, many input surveys such as DES/DECam are not at exactly the Gaia DR3 epoch either — so I’d like to understand the recommended DM approach.
What is the DM-recommended approach / existing pipeline pattern for reliably matching Monster to an external catalogue with different/unclear epoch handling, especially in dense fields? Is there an existing LSST Task/workflow for ingesting external photometry into a Monster-like refcat that already handles these matching/epoch pitfalls?
Thanks in advance for your help.