In addition to the matching criteria listed in the previous subsections,
you can build your own by combining any of these.
To do this, take the two (or more)
matchers that you want to use, and separate their names with a
"+
" character. The values*
parameters
of the combined matcher should then hold the concatenation of the
values*
entries of the constituent matchers, and the
same for the params
parameter.
So for instance the matcher "sky+1d
" could be used
with the following syntax:
matcher=sky+1d values*='<ra/degrees> <dec/degrees> <x>' params='<max-error/arcsec> <error>' tuning='<healpix-k> <scale-factor>'
This would compare positions on the sky with an additional scalar constraint. Rows are considered to match if both their
values*
:
ra/degrees
: Right Ascensiondec/degrees
: Declinationx
: Cartesian co-ordinate #1params
:
max-error/arcsec
: Maximum separation along a great circle - additional constraint to per-object errorserror
: Maximum Cartesian separation for matchtuning
:
healpix-k
: Controls sky pixel size. Legal range 0 (60deg) - 20 (0.2"). k = log2(nside).scale-factor
: Scaling factor to adjust bin size; larger values mean larger bins. Minimum legal value is 1.
ra
, dec
positions are within
max-error
arcseconds of each other along a great circle
(as for matcher=sky
)
and
their x
values differ by no more than error
(as for matcher=1d
).
This example might be used for instance to identify objects from two catalogues which are within a couple of arcseconds and also 0.5 blue magnitudes of each other. Rolling your own matchers in this way can give you very flexible match constraints.