{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# XMM-LSS master catalogue\n", "\n", "This notebook presents the merge of the various pristine catalogues to produce the HELP master catalogue on XMM-LSS." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "This notebook was run with herschelhelp_internal version: \n", "0246c5d (Thu Jan 25 17:01:47 2018 +0000) [with local modifications]\n", "This notebook was executed on: \n", "2018-05-04 13:04:48.043413\n" ] } ], "source": [ "from herschelhelp_internal import git_version\n", "print(\"This notebook was run with herschelhelp_internal version: \\n{}\".format(git_version()))\n", "import datetime\n", "print(\"This notebook was executed on: \\n{}\".format(datetime.datetime.now()))" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "#%config InlineBackend.figure_format = 'svg'\n", "\n", "import matplotlib.pyplot as plt\n", "plt.rc('figure', figsize=(10, 6))\n", "\n", "import os\n", "import time\n", "import gc\n", "from astropy import units as u\n", "from astropy.coordinates import SkyCoord\n", "from astropy.table import Column, Table, join\n", "import numpy as np\n", "from pymoc import MOC\n", "\n", "from herschelhelp_internal.masterlist import merge_catalogues, nb_merge_dist_plot, specz_merge\n", "from herschelhelp_internal.utils import coords_to_hpidx, ebv, gen_help_id, inMoc" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "TMP_DIR = os.environ.get('TMP_DIR', \"./data_tmp\")\n", "OUT_DIR = os.environ.get('OUT_DIR', \"./data\")\n", "SUFFIX = os.environ.get('SUFFIX', time.strftime(\"_%Y%m%d\"))\n", "\n", "try:\n", " os.makedirs(OUT_DIR)\n", "except FileExistsError:\n", " pass" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## I - Reading the prepared pristine catalogues" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# SXDS now merged in with CANDELS in CFHT merge notebook\n", "#sxds = Table.read(\"{}/SXDS.fits\".format(TMP_DIR)\n", "# )[\"sxds_intid\", \n", "# \"sxds_ra\", \n", "# \"sxds_dec\",\n", "# # 'sxds_flag_merged'\n", "# ] # 1.11\n", "\n", "#WIRCAM:\n", "#cfht_wirds = Table.read(\"{}/CFHT-WIRDS.fits\".format(TMP_DIR)\n", "# )[\"wirds_intid\",\n", "# \"wirds_ra\",\n", "# \"wirds_dec\"] # 1.3\n", "\n", "#Megacam:\n", "#candels = Table.read(\"{}/CANDELS.fits\".format(TMP_DIR)\n", "# )[\"candels_id\",\n", "# \"candels_ra\",\n", "# \"candels_dec\"] # 1.1\n", "#cfhtls_wide = Table.read(\"{}/CFHTLS-WIDE.fits\".format(TMP_DIR)\n", "# )[\"cfhtls-wide_id\",\n", "# \"cfhtls-wide_ra\",\n", "# \"cfhtls-wide_dec\",\n", "# \"cfhtls-wide_stellarity\"] # 1.4a\n", "#cfhtls_deep = Table.read(\"{}/CFHTLS-DEEP.fits\".format(TMP_DIR)\n", "# )[\"cfhtls-deep_id\",\n", "# \"cfhtls-deep_ra\",\n", "# \"cfhtls-deep_dec\",\n", "# \"cfhtls-deep_stellarity\"] # 1.4b\n", "#We no longer use CFHTLenS as it is the same raw data set as CFHTLS-WIDE\n", "# cfhtlens = Table.read(\"{}/CFHTLENS.fits\".format(TMP_DIR)) # 1.5\n", "#sparcs = Table.read(\"{}/SpARCS.fits\".format(TMP_DIR)\n", "# )['sparcs_intid', \n", "# 'sparcs_ra', \n", "# 'sparcs_dec', \n", "# 'sparcs_stellarity'] # 1.12\n", "#\n", "#vipers = Table.read(\"{}/VIPERS.fits\".format(TMP_DIR)\n", "# )[\"vipers_id\",\n", "# \"vipers_ra\",\n", "# \"vipers_dec\"] # 1.15\n", "cfht = Table.read(\"{}/cfht_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)\n", " )['cfht_intid', \n", " \"candels_id\",\n", " \"cfhtls-wide_id\",\n", " \"cfhtls-deep_id\",\n", " 'sparcs_intid',\n", " 'wirds_id',\n", " 'vipers_id',\n", " 'sxds_intid',\n", " 'sxds_b_id',\n", " 'sxds_v_id',\n", " 'sxds_r_id',\n", " 'sxds_i_id',\n", " 'sxds_z_id',\n", " 'cfht_ra', \n", " 'cfht_dec'] # 1.12\n", "\n", "\n", "\n", "#DECam:\n", "#decals = Table.read(\"{}/DECaLS.fits\".format(TMP_DIR)\n", "# )[\"decals_id\",\n", "# \"decals_ra\",\n", "# \"decals_dec\"] # 1.6\n", "decam = Table.read(\"{}/decam_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)\n", " )[\"decam_intid\",\n", " \"decals_id\",\n", " \"des_id\",\n", " \"decam_ra\",\n", " \"decam_dec\"] # 1.6\n", "\n", "#Spitzer IRAC:\n", "#servs = Table.read(\"{}/SERVS.fits\".format(TMP_DIR)\n", "# )[\"servs_intid\",\n", "# \"servs_ra\",\n", "# \"servs_dec\"] # 1.8\n", "#swire = Table.read(\"{}/SWIRE.fits\".format(TMP_DIR)\n", "# )[\"swire_intid\",\n", "# \"swire_ra\",\n", "# \"swire_dec\"] # 1.7\n", "irac = Table.read(\"{}/irac_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)\n", " )[\"irac_intid\",\n", " \"servs_intid\",\n", " \"swire_intid\",\n", " \"irac_ra\",\n", " \"irac_dec\"] # 1.7\n", "\n", "\n", "#Hyper Suprime Cam:\n", "#hsc_wide = Table.read(\"{}/HSC-WIDE.fits\".format(TMP_DIR)\n", "# )[\"hsc-wide_id\",\n", "# \"hsc-wide_ra\",\n", "# \"hsc-wide_dec\", \n", "# \"hsc-wide_stellarity\"] # 1.9a\n", "#hsc_deep = Table.read(\"{}/HSC-DEEP.fits\".format(TMP_DIR)\n", "# )[\"hsc-deep_id\",\n", "# \"hsc-deep_ra\",\n", "# \"hsc-deep_dec\", \n", "# \"hsc-deep_stellarity\"] # 1.9b\n", "#hsc_udeep = Table.read(\"{}/HSC-UDEEP.fits\".format(TMP_DIR)\n", "# )[\"hsc-udeep_id\",\n", "# \"hsc-udeep_ra\",\n", "# \"hsc-udeep_dec\", \n", "# \"hsc-udeep_stellarity\"] # 1.9c\n", "hsc = Table.read(\"{}/hsc_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)\n", " )[\"hsc_intid\",\n", " \"hsc_ra\",\n", " \"hsc_dec\", \n", " \"hsc-wide_id\",\n", " \"hsc-deep_id\",\n", " \"hsc-udeep_id\"] # 1.9c\n", "\n", "\n", "#GPC1:\n", "ps1 = Table.read(\"{}/PS1.fits\".format(TMP_DIR)\n", " )[\"ps1_id\",\n", " \"ps1_ra\",\n", " \"ps1_dec\"] # 1.10\n", "\n", "# UKIDSS WFCAM:\n", "#dxs = Table.read(\"{}/UKIDSS-DXS.fits\".format(TMP_DIR)\n", "# )['dxs_id',\n", "# 'dxs_ra',\n", "# 'dxs_dec', \n", "# 'dxs_stellarity'] # 1.13\n", "#uds = Table.read(\"{}/UKIDSS-UDS.fits\".format(TMP_DIR)\n", "# )['uds_id',\n", "# 'uds_ra',\n", "# 'uds_dec',\n", "# 'uds_stellarity'] # 1.14\n", "ukidss = Table.read(\"{}/ukidss_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)\n", " )['ukidss_intid',\n", " 'dxs_id',\n", " 'uds_id',\n", " 'ukidss_ra',\n", " 'ukidss_dec',\n", " # 'ukidss_stellarity'\n", " ] # 1.14\n", "\n", "\n", "\n", "#VIRCAM:\n", "#vhs = Table.read(\"{}/VISTA-VHS.fits\".format(TMP_DIR)\n", "# )[\"vhs_id\",\n", "# \"vhs_ra\",\n", "# \"vhs_dec\",\n", "# \"vhs_stellarity\"] # 1.16\n", "#video = Table.read(\"{}/VISTA-VIDEO.fits\".format(TMP_DIR)\n", "# )['video_id',\n", "# 'video_ra',\n", "# 'video_dec',\n", "# 'video_stellarity',\n", "# 'video_flag_gaia'] # 1.17\n", "#viking = Table.read(\"{}/VISTA-VIKING.fits\".format(TMP_DIR)\n", "# )[\"viking_id\",\n", "# \"viking_ra\",\n", "# \"viking_dec\",\n", "# \"viking_stellarity\",\n", "# \"viking_flag_gaia\"] # 1.18\n", "vircam = Table.read(\"{}/vista_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)\n", " )[\"vircam_intid\",\n", " \"vhs_id\",\n", " 'video_id',\n", " \"viking_id\",\n", " \"vircam_ra\",\n", " \"vircam_dec\",\n", " #\"vircam_stellarity\",\n", " #\"vircam_flag_gaia\"\n", " ] " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## II - Merging tables\n", "\n", "We first merge the optical catalogues and then add the infrared ones. We start with PanSTARRS because it coevrs the whole field.\n", "\n", "At every step, we look at the distribution of the distances to the nearest source in the merged catalogue to determine the best crossmatching radius." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add PanSTARRS" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue = ps1\n", "master_catalogue['ps1_ra'].name = 'ra'\n", "master_catalogue['ps1_dec'].name = 'dec'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### CANDELS\n", "\n", "We now use CANDELS-UDS which must be individually merged with the merged catalogues since it has measurements from different instruments" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#nb_merge_dist_plot(\n", "# SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", "# SkyCoord(candels['candels_ra'], candels['candels_dec'])\n", "#)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 0.8 arc-second radius\n", "#master_catalogue = merge_catalogues(master_catalogue, candels, \"candels_ra\", \"candels_dec\", radius=0.8*u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add CFHT\n", "\n", "We independently merge all the CFHT Megacam and WIRCAM and some CANDELS in CFHT_Merge notebook " ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(cfht['cfht_ra'], cfht['cfht_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 0.8 arc-second radius\n", "master_catalogue = merge_catalogues(master_catalogue, \n", " cfht, \n", " \"cfht_ra\", \n", " \"cfht_dec\", \n", " radius=0.8*u.arcsec)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add HSC-PSS" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(hsc['hsc_ra'], hsc['hsc_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 0.8 arc-second radius\n", "master_catalogue = merge_catalogues(master_catalogue, hsc, \"hsc_ra\", \"hsc_dec\", radius=0.8*u.arcsec)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add DECam (DES and DECaLS)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(decam['decam_ra'], decam['decam_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 0.8 arc-second radius\n", "master_catalogue = merge_catalogues(master_catalogue, decam, \"decam_ra\", \"decam_dec\", radius=0.8*u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add SXDS\n", "\n", "This now happens in CFHT merging notebook because CANDELS contains Suprime fluxes which need merging" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# nb_merge_dist_plot(\n", "# SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", "# SkyCoord(sxds['sxds_ra'], sxds['sxds_dec'])\n", "# )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It is strange that this does not peak at zero. This is bservable in the original band cross match. It implies there is a persistent offset. Perhaps each band should be astrometrically corrected before the original merge." ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#sxds['flag_merged'].name = 'flag_merged_sxds'" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# # Given the graph above, we use 0.8 arc-second radius\n", "# master_catalogue = merge_catalogues(master_catalogue, sxds, \"sxds_ra\", \"sxds_dec\", radius=1.0*u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add UKIDSS" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nIiKiQf4FNDZltlswXlgAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(ukidss['ukidss_ra'], ukidss['ukidss_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 0.8 arc-second radius\n", "master_catalogue = merge_catalogues(master_catalogue, ukidss, \"ukidss_ra\", \"ukidss_dec\", radius=0.8*u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add VIRCAM" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(vircam['vircam_ra'], vircam['vircam_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 0.8 arc-second radius\n", "master_catalogue = merge_catalogues(master_catalogue, vircam, \"vircam_ra\", \"vircam_dec\", radius=0.8*u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Add IRAC" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(irac['irac_ra'], irac['irac_dec'])\n", ")" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Given the graph above, we use 1 arc-second radius\n", "master_catalogue = merge_catalogues(master_catalogue, irac, \"irac_ra\", \"irac_dec\", radius=1.*u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Cleaning\n", "\n", "When we merge the catalogues, astropy masks the non-existent values (e.g. when a row comes only from a catalogue and has no counterparts in the other, the columns from the latest are masked for that row). We indicate to use NaN for masked values for floats columns, False for flag columns and -1 for ID columns." ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": true }, "outputs": [], "source": [ "for col in master_catalogue.colnames:\n", " #print(col)\n", " if (col.startswith(\"m_\") or col.startswith(\"merr_\") or col.startswith(\"f_\") or col.startswith(\"ferr_\")):\n", " master_catalogue[col] = master_catalogue[col].astype(float)\n", " master_catalogue[col].fill_value = np.nan\n", " elif \"flag\" in col:\n", " master_catalogue[col].fill_value = 0\n", " elif \"id\" in col:\n", " master_catalogue[col].fill_value = -1\n", " \n", "master_catalogue = master_catalogue.filled()" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/html": [ "Table length=10\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
idxps1_idradecflag_mergedcfht_intidcandels_idcfhtls-wide_idcfhtls-deep_idsparcs_intidwirds_idvipers_idsxds_intidsxds_b_idsxds_v_idsxds_r_idsxds_i_idsxds_z_idhsc_intidhsc-wide_idhsc-deep_idhsc-udeep_iddecam_intiddecals_iddes_idukidss_intiddxs_iduds_idvircam_intidvhs_idvideo_idviking_idirac_intidservs_intidswire_intid
degdeg
010448034793855023934.7939347123-2.93372783477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
110447034788859090934.7889409923-2.94131771477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
210438034869156621634.8690964323-3.01188159477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
310334034226446212134.2265307523-3.88177687477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
410215034626400630934.6264773123-4.87011075477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
510291036934859514736.9348618523-4.23782747477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
610410035464316923635.4645593723-3.24264912477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
710128036323894127036.3242755923-5.59929363477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
810442034823753762534.8238613523-2.97741051477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
910215034626398566734.6265266323-4.87072229477False-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1
\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "master_catalogue[:10].show_in_notebook()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## III - Merging flags and stellarity\n", "\n", "This all happens at the end now after the catalogue has been cut into strips." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## IV - Adding E(B-V) column" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue.add_column(\n", " ebv(master_catalogue['ra'], master_catalogue['dec'])\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## V - Adding HELP unique identifiers and field columns" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue.add_column(Column(gen_help_id(master_catalogue['ra'], master_catalogue['dec']),\n", " name=\"help_id\"))\n", "master_catalogue.add_column(Column(np.full(len(master_catalogue), \"XMM-LSS\", dtype='" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "nb_merge_dist_plot(\n", " SkyCoord(master_catalogue['ra'], master_catalogue['dec']),\n", " SkyCoord(specz['ra'] * u.deg, specz['dec'] * u.deg)\n", ")" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue = specz_merge(master_catalogue, specz, radius=1. * u.arcsec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## VIII.a Wavelength domain coverage\n", "\n", "We add a binary `flag_optnir_obs` indicating that a source was observed in a given wavelength domain:\n", "\n", "- 1 for observation in optical;\n", "- 2 for observation in near-infrared;\n", "- 4 for observation in mid-infrared (IRAC).\n", "\n", "It's an integer binary flag, so a source observed both in optical and near-infrared by not in mid-infrared would have this flag at 1 + 2 = 3.\n", "\n", "*Note 1: The observation flag is based on the creation of multi-order coverage maps from the catalogues, this may not be accurate, especially on the edges of the coverage.*\n", "\n", "*Note 2: Being on the observation coverage does not mean having fluxes in that wavelength domain. For sources observed in one domain but having no flux in it, one must take into consideration the different depths in the catalogue we are using.*" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#candels_moc = MOC(filename=\"../../dmu0/dmu0_CANDELS-3D-HST/data/CANDELS-3D-HST_XMM-LSS_MOC.fits\") # 1.1\n", "candels_moc = MOC(filename=\"../../dmu0/dmu0_CANDELS-UDS/data/hlsp_candels_hst_wfc3_uds-tot-multiband_f160w_v1_MOC.fits\") # 1.2\n", "cfht_wirds_moc = MOC(filename=\"../../dmu0/dmu0_CFHT-WIRDS/data/XMM-LSS_Ks-priors_MOC.fits\") # 1.3\n", "cfhtls_wide_moc = MOC(filename=\"../../dmu0/dmu0_CFHTLS/data/CFHTLS-WIDE_XMM-LSS_MOC.fits\") # 1.4a\n", "cfhtls_deep_moc = MOC(filename=\"../../dmu0/dmu0_CFHTLS/data/CFHTLS-DEEP_XMM-LSS_MOC.fits\") # 1.4b\n", "cfhtls_moc = cfhtls_wide_moc + cfhtls_deep_moc\n", "#cfhtlens_moc = MOC(filename=\"../../dmu0/dmu0_CFHTLenS/data/CFHTLenS_XMM-LSS_MOC.fits\") # 1.5\n", "decals_moc = MOC(filename=\"../../dmu0/dmu0_DECaLS/data/DECaLS_XMM-LSS_MOC.fits\") # 1.6\n", "des_moc = MOC(filename=\"../../dmu0/dmu0_DES/data/DES-DR1_XMM-LSS_MOC.fits\") # 1.6\n", "decam_moc = decals_moc + des_moc\n", "servs_moc = MOC(filename=\"../../dmu0/dmu0_DataFusion-Spitzer/data/DF-SERVS_XMM-LSS_MOC.fits\") # 1.8\n", "swire_moc = MOC(filename=\"../../dmu0/dmu0_DataFusion-Spitzer/data/DF-SWIRE_XMM-LSS_MOC.fits\") # 1.7\n", "hsc_wide_moc = MOC(filename=\"../../dmu0/dmu0_HSC/data/HSC-PDR1_wide_XMM-LSS_MOC.fits\") # 1.9a\n", "hsc_deep_moc = MOC(filename=\"../../dmu0/dmu0_HSC/data/HSC-PDR1_deep_XMM-LSS_MOC.fits\") # 1.9b\n", "hsc_udeep_moc = MOC(filename=\"../../dmu0/dmu0_HSC/data/HSC-PDR1_uDeep_XMM-LSS_MOC.fits\") # 1.9c\n", "hsc_moc = hsc_wide_moc + hsc_deep_moc + hsc_udeep_moc\n", "ps1_moc = MOC(filename=\"../../dmu0/dmu0_PanSTARRS1-3SS/data/PanSTARRS1-3SS_XMM-LSS_MOC.fits\") # 1.10\n", "sxds_moc = MOC(filename=\"../../dmu0/dmu0_SXDS/data/dmu0_SXDS_MOC.fits\") # 1.11\n", "sparcs_moc = MOC(filename=\"../../dmu0/dmu0_SpARCS/data/SpARCS_HELP_XMM-LSS_MOC.fits\") # 1.12\n", "dxs_moc = MOC(filename=\"../../dmu0/dmu0_UKIDSS-DXS_DR10plus/data/UKIDSS-DR10plus_XMM-LSS_MOC.fits\") # 1.13\n", "uds_moc = MOC(filename=\"../../dmu0/dmu0_UKIDSS-UDS/data/UKIDSS-UDS_XMM-LSS_MOC.fits\") # 1.14\n", "vipers_moc = MOC(filename=\"../../dmu0/dmu0_VIPERS-MLS/data/VIPERS-MLS_20160502_MOC.fits\") # 1.15\n", "vhs_moc = MOC(filename=\"../../dmu0/dmu0_VISTA-VHS/data/VHS_XMM-LSS_MOC.fits\") # 1.16\n", "video_moc = MOC(filename=\"../../dmu0/dmu0_VISTA-VIDEO-private/data/VIDEO-all_2016-04-14_fullcat_errfix_XMM-LSS_MOC.fits\") # 1.17\n", "viking_moc = MOC(filename=\"../../dmu0/dmu0_VISTA-VIKING/data/VIKING_XMM-LSS_MOC.fits\") # 1.18" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": true }, "outputs": [], "source": [ "was_observed_optical = inMoc(\n", " master_catalogue['ra'], master_catalogue['dec'],\n", " (candels_moc + \n", " cfht_wirds_moc + \n", " cfhtls_moc + \n", " #cfhtlens_moc + \n", " sparcs_moc + \n", " decam_moc + \n", " hsc_moc + \n", " ps1_moc) )\n", "\n", "was_observed_nir = inMoc(\n", " master_catalogue['ra'], master_catalogue['dec'],\n", " dxs_moc + uds_moc + vhs_moc + video_moc + viking_moc\n", ")\n", "\n", "was_observed_mir = inMoc(\n", " master_catalogue['ra'], master_catalogue['dec'],\n", " servs_moc + swire_moc\n", ")" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue.add_column(\n", " Column(\n", " 1 * was_observed_optical + 2 * was_observed_nir + 4 * was_observed_mir,\n", " name=\"flag_optnir_obs\")\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## VIII.b Wavelength domain detection\n", "\n", "We add a binary `flag_optnir_det` indicating that a source was detected in a given wavelength domain:\n", "\n", "- 1 for detection in optical;\n", "- 2 for detection in near-infrared;\n", "- 4 for detection in mid-infrared (IRAC).\n", "\n", "It's an integer binary flag, so a source detected both in optical and near-infrared by not in mid-infrared would have this flag at 1 + 2 = 3.\n", "\n", "*Note 1: We use the total flux columns to know if the source has flux, in some catalogues, we may have aperture flux and no total flux.*\n", "\n", "To get rid of artefacts (chip edges, star flares, etc.) we consider that a source is detected in one wavelength domain when it has a flux value in **at least two bands**. That means that good sources will be excluded from this flag when they are on the coverage of only one band." ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# SpARCS is a catalogue of sources detected in r (with fluxes measured at \n", "# this prior position in the other bands). Thus, we are only using the r\n", "# CFHT band.\n", "# Check to use catalogue flags from HSC and PanSTARRS.\n", "#nb_optical_flux = np.zeros(len(master_catalogue), dtype=float)\n", "\n", "#nb_nir_flux = np.zeros(len(master_catalogue), dtype=float)\n", "\n", "#nb_mir_flux = np.zeros(len(master_catalogue), dtype=float)" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#has_optical_flux = nb_optical_flux >= 2\n", "#has_nir_flux = nb_nir_flux >= 2\n", "#has_mir_flux = nb_mir_flux >= 2\n", "\n", "#master_catalogue.add_column(\n", "# Column(\n", "# 1 * has_optical_flux + 2 * has_nir_flux + 4 * has_mir_flux,\n", "# name=\"flag_optnir_det\")\n", "#)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## IX - Cross-identification table\n", "\n", "We are producing a table associating to each HELP identifier, the identifiers of the sources in the pristine catalogues. This can be used to easily get additional information from them.\n", "\n", "For convenience, we also cross-match the master list with the SDSS catalogue and add the objID associated with each source, if any. **TODO: should we correct the astrometry with respect to Gaia positions?**" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "315 master list rows had multiple associations.\n" ] } ], "source": [ "#\n", "# Addind SDSS ids\n", "#\n", "sdss = Table.read(\"../../dmu0/dmu0_SDSS-DR13/data/SDSS-DR13_XMM-LSS.fits\")['objID', 'ra', 'dec']\n", "sdss_coords = SkyCoord(sdss['ra'] * u.deg, sdss['dec'] * u.deg)\n", "idx_ml, d2d, _ = sdss_coords.match_to_catalog_sky(SkyCoord(master_catalogue['ra'], master_catalogue['dec']))\n", "idx_sdss = np.arange(len(sdss))\n", "\n", "# Limit the cross-match to 1 arcsec\n", "mask = d2d <= 1. * u.arcsec\n", "idx_ml = idx_ml[mask]\n", "idx_sdss = idx_sdss[mask]\n", "d2d = d2d[mask]\n", "nb_orig_matches = len(idx_ml)\n", "\n", "# In case of multiple associations of one master list object to an SDSS object, we keep only the\n", "# association to the nearest one.\n", "sort_idx = np.argsort(d2d)\n", "idx_ml = idx_ml[sort_idx]\n", "idx_sdss = idx_sdss[sort_idx]\n", "_, unique_idx = np.unique(idx_ml, return_index=True)\n", "idx_ml = idx_ml[unique_idx]\n", "idx_sdss = idx_sdss[unique_idx]\n", "print(\"{} master list rows had multiple associations.\".format(nb_orig_matches - len(idx_ml)))\n", "\n", "# Adding the ObjID to the master list\n", "master_catalogue.add_column(Column(data=np.full(len(master_catalogue), -1, dtype='>i8'), name=\"sdss_id\"))\n", "master_catalogue['sdss_id'][idx_ml] = sdss['objID'][idx_sdss]" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['ps1_id', 'cfht_intid', 'candels_id', 'cfhtls-wide_id', 'cfhtls-deep_id', 'sparcs_intid', 'wirds_id', 'vipers_id', 'sxds_intid', 'sxds_b_id', 'sxds_v_id', 'sxds_r_id', 'sxds_i_id', 'sxds_z_id', 'hsc_intid', 'hsc-wide_id', 'hsc-deep_id', 'hsc-udeep_id', 'decam_intid', 'decals_id', 'des_id', 'ukidss_intid', 'dxs_id', 'uds_id', 'vircam_intid', 'vhs_id', 'video_id', 'viking_id', 'irac_intid', 'servs_intid', 'swire_intid', 'help_id', 'specz_id', 'sdss_id']\n" ] } ], "source": [ "id_names = []\n", "for col in master_catalogue.colnames:\n", " if '_id' in col:\n", " id_names += [col]\n", " if '_intid' in col:\n", " id_names += [col]\n", " \n", "print(id_names)\n" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue[id_names].write(\n", " \"{}/master_list_cross_ident_xmm-lss{}.fits\".format(OUT_DIR, SUFFIX), overwrite=True)\n", "id_names.remove('help_id')\n", "#master_catalogue.remove_columns(id_names)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## X - Adding HEALPix index\n", "\n", "We are adding a column with a HEALPix index at order 13 associated with each source." ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": true }, "outputs": [], "source": [ "master_catalogue.add_column(Column(\n", " data=coords_to_hpidx(master_catalogue['ra'], master_catalogue['dec'], order=13),\n", " name=\"hp_idx\"\n", "))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## XI - Saving the catalogue" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "collapsed": true }, "outputs": [], "source": [ "columns = [\"help_id\", \"field\", \"ra\", \"dec\", \"hp_idx\"]\n", "\n", "bands = [column[5:] for column in master_catalogue.colnames if 'f_ap' in column]\n", "for band in bands:\n", " columns += [\"f_ap_{}\".format(band), \"ferr_ap_{}\".format(band),\n", " \"m_ap_{}\".format(band), \"merr_ap_{}\".format(band),\n", " \"f_{}\".format(band), \"ferr_{}\".format(band),\n", " \"m_{}\".format(band), \"merr_{}\".format(band),\n", " \"flag_{}\".format(band)] \n", " \n", "columns += [\"stellarity\", \"stellarity_origin\", \"flag_cleaned\", \"flag_merged\", \"flag_gaia\", \"flag_optnir_obs\", \"flag_optnir_det\", \n", " \"zspec\", \"zspec_qual\", \"zspec_association_flag\", \"ebv\"]" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Missing columns: {'sparcs_intid', 'candels_id', 'sxds_i_id', 'dxs_id', 'sxds_intid', 'cfhtls-wide_id', 'vhs_id', 'hsc_intid', 'vircam_intid', 'sxds_r_id', 'cfht_intid', 'viking_id', 'sxds_z_id', 'servs_intid', 'sxds_v_id', 'hsc-deep_id', 'cfhtls-deep_id', 'vipers_id', 'swire_intid', 'uds_id', 'hsc-wide_id', 'decals_id', 'wirds_id', 'sdss_id', 'specz_id', 'ukidss_intid', 'sxds_b_id', 'des_id', 'video_id', 'irac_intid', 'decam_intid', 'hsc-udeep_id', 'ps1_id'}\n" ] } ], "source": [ "# We check for columns in the master catalogue that we will not save to disk.\n", "print(\"Missing columns: {}\".format(set(master_catalogue.colnames) - set(columns)))" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#master_catalogue[columns].write(\"{}/master_catalogue_xmm-lss_low-memory{}.fits\".format(OUT_DIR, SUFFIX), overwrite=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## XII - folding in the photometry\n", "On XMM-LSS there is too much data to load all in to memory at once so we perform the cross matching without photometry columns. Only now do we fold in the photometry data by first cutting the catalogue up in to manageable sizes." ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "88\n" ] } ], "source": [ "split_length = 100000 #number of sources to include in every sub catalogue\n", "num_files = int(np.ceil(len(master_catalogue)/split_length))\n", "print(num_files)\n" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#Sort catalogue by HELP id so that it is split up in RA strips\n", "master_catalogue.sort('help_id')\n", "#Remove all the old ids as they interfere with join\n", "old_id_names = [\n", " 'candels_id',\n", " 'cfhtls-wide_id',\n", " 'cfhtls-deep_id',\n", " 'sparcs_intid',\n", " 'wirds_id',\n", " 'vipers_id',\n", " 'sxds_intid',\n", " 'sxds_b_id',\n", " 'sxds_v_id',\n", " 'sxds_r_id',\n", " 'sxds_i_id',\n", " 'sxds_z_id',\n", " \n", " 'hsc-wide_id',\n", " 'hsc-deep_id',\n", " 'hsc-udeep_id',\n", " \n", " 'des_id',\n", " 'decals_id',\n", "\n", " 'dxs_id',\n", " 'uds_id',\n", " \n", " 'vhs_id',\n", " 'video_id',\n", " 'viking_id',\n", "\n", " 'servs_intid',\n", " 'swire_intid']\n", "master_catalogue.remove_columns(old_id_names)\n", "# The old id names will be added back in by \n", "# the join so I leave them in the list here to be \n", "# removed before the save of the sub catalogue\n", "# id_names.remove(old_id_names)" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#There is candels data on three seperate merged catalogues so duplicates must be removed from two\n", "irac_merged = Table.read(\"{}/irac_merged_catalogue_xmm-lss.fits\".format(TMP_DIR))\n", "irac_merged.remove_columns(['candels_id',\n", " 'candels_stellarity',\n", " 'candels_flag_cleaned',\n", " 'candels_flag_gaia'])\n", "\n", "ukidss_merged = Table.read(\"{}/ukidss_merged_catalogue_xmm-lss.fits\".format(TMP_DIR))\n", "ukidss_merged.remove_columns(['candels_id',\n", " 'candels_stellarity',\n", " 'candels_flag_cleaned',\n", " 'candels_flag_gaia'])" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": true }, "outputs": [], "source": [ "surveys = [\n", " \n", "\n", " #['sxds', \"SXDS.fits\", Table.read(\"{}/SXDS.fits\".format(TMP_DIR)), 'sxds_intid'], \n", " #['candels', \"CANDELS.fits\", Table.read(\"{}/CANDELS.fits\".format(TMP_DIR)), 'candels_id'],\n", " #['cfhtls_wide', \"CFHTLS-WIDE.fits\", Table.read(\"{}/CFHTLS-WIDE.fits\".format(TMP_DIR)), 'cfhtls-wide_id'],\n", " #['cfhtls_deep', \"CFHTLS-DEEP.fits\", Table.read(\"{}/CFHTLS-DEEP.fits\".format(TMP_DIR)), 'cfhtls-deep_id'],\n", " #['sparcs', \"SpARCS.fits\", Table.read(\"{}/SpARCS.fits\".format(TMP_DIR)), 'sparcs_intid'], \n", " #['cfht_wirds', \"CFHT-WIRDS.fits\", Table.read(\"{}/CFHT-WIRDS.fits\".format(TMP_DIR)), 'wirds_intid' ],\n", " #['vipers', \"VIPERS.fits\", Table.read(\"{}/VIPERS.fits\".format(TMP_DIR)), 'vipers_id'],\n", " ['cfht', \n", " \"cfht_merged_catalogue_xmm-lss.fits\", \n", " Table.read(\"{}/cfht_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)), \n", " 'cfht_intid'], \n", " \n", " #['decals', \"DECaLS.fits\", Table.read(\"{}/DECaLS.fits\".format(TMP_DIR)), 'decals_id'],\n", " ['decam', \n", " \"decam_merged_catalogue_xmm-lss.fits\", \n", " Table.read(\"{}/decam_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)), \n", " 'decam_intid'],\n", " \n", " #['servs', \"SERVS.fits\", Table.read(\"{}/SERVS.fits\".format(TMP_DIR)), 'servs_intid'],\n", " #['swire', \"SWIRE.fits\", Table.read(\"{}/SWIRE.fits\".format(TMP_DIR)), 'swire_intid'], \n", " ['irac', \n", " \"irac_merged_catalogue_xmm-lss.fits\",\n", " irac_merged, \n", " 'irac_intid'], \n", " \n", " #['hsc_wide ', \"HSC-WIDE.fits\", Table.read(\"{}/HSC-WIDE.fits\".format(TMP_DIR)), 'hsc-wide_id' ],\n", " #['hsc_deep', \"HSC-DEEP.fits\", Table.read(\"{}/HSC-DEEP.fits\".format(TMP_DIR)), 'hsc-deep_id'],\n", " #['hsc_udeep', \"HSC-UDEEP.fits\", Table.read(\"{}/HSC-UDEEP.fits\".format(TMP_DIR)), 'hsc-udeep_id'], \n", " ['hsc', \n", " \"hsc_merged_catalogue_xmm-lss.fits\", \n", " Table.read(\"{}/hsc_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)), \n", " 'hsc_intid'], \n", " \n", " ['ps1', \"PS1.fits\", Table.read(\"{}/PS1.fits\".format(TMP_DIR)), 'ps1_id'], \n", " \n", " \n", " \n", " #['dxs', \"UKIDSS-DXS.fits\", Table.read(\"{}/UKIDSS-DXS.fits\".format(TMP_DIR)), 'dxs_id'], \n", " #['uds', \"UKIDSS-UDS.fits\", Table.read(\"{}/UKIDSS-UDS.fits\".format(TMP_DIR)), 'uds_id'], \n", " ['ukidss', \n", " \"ukidss_merged_catalogue_xmm-lss.fits\", \n", " ukidss_merged, \n", " 'ukidss_intid'], \n", " \n", " \n", " \n", " #['vhs', \"VISTA-VHS.fits\", Table.read(\"{}/VISTA-VHS.fits\".format(TMP_DIR)), 'vhs_id'], \n", " #['video', \"VISTA-VIDEO.fits\", Table.read(\"{}/VISTA-VIDEO.fits\".format(TMP_DIR)), 'video_id'], \n", " #['viking', \"VISTA-VIKING.fits\", Table.read(\"{}/VISTA-VIKING.fits\".format(TMP_DIR)), 'viking_id'] \n", " ['vircam', \n", " \"vista_merged_catalogue_xmm-lss.fits\", \n", " Table.read(\"{}/vista_merged_catalogue_xmm-lss.fits\".format(TMP_DIR)), \n", " 'vircam_intid']\n", "]" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "collapsed": true }, "outputs": [], "source": [ "n=0\n", "for sub_file in range(num_files):\n", " \n", " sub_catalogue = master_catalogue[n*split_length:(n+1)*split_length]\n", " #print(n)\n", " for survey in surveys:\n", " #print(survey[0])\n", " sub_catalogue = join(sub_catalogue, \n", " survey[2], #Table.read(\"{}/{}\".format(TMP_DIR, survey[1])),\n", " join_type='left',\n", " metadata_conflicts='silent',\n", " keys=survey[3]\n", " )\n", " \n", " \n", " \n", " #Each pristine catalogue contains a flag indicating if the source was associated to a another nearby source that was removed during the cleaning process. We merge these flags in a single one.\n", "\n", "\n", " flag_cleaned_columns = [column for column in sub_catalogue.colnames\n", " if 'flag_cleaned' in column]\n", "\n", " flag_column = np.zeros(len(sub_catalogue), dtype=bool)\n", " for column in flag_cleaned_columns:\n", " flag_column |= sub_catalogue[column]\n", " \n", " sub_catalogue.add_column(Column(data=flag_column, name=\"flag_cleaned\"))\n", " sub_catalogue.remove_columns(flag_cleaned_columns)\n", " #combining the flag_merged column which contains information regarding multiple associations\n", " \n", " \n", " sub_catalogue['flag_merged'].name = 'flag_merged_tmp'\n", " flag_merged_columns = [column for column in sub_catalogue.colnames\n", " if 'flag_merged' in column]\n", " \n", " flag_merged_column = np.zeros(len(sub_catalogue), dtype=bool)\n", " for column in flag_merged_columns:\n", " flag_merged_column |= sub_catalogue[column]\n", " \n", " sub_catalogue.add_column(Column(data=flag_merged_column, name=\"flag_merged\"))\n", " sub_catalogue.remove_columns(flag_merged_columns)\n", "\n", " #Each pristine catalogue contains a flag indicating the probability of a source being a Gaia object (0: not a Gaia object, 1: possibly, 2: probably, 3: definitely). We merge these flags taking the highest value.\n", "\n", "\n", " flag_gaia_columns = [column for column in sub_catalogue.colnames\n", " if 'flag_gaia' in column]\n", "\n", " sub_catalogue.add_column(Column(\n", " data=np.max([sub_catalogue[column] for column in flag_gaia_columns], axis=0),\n", " name=\"flag_gaia\"\n", " ))\n", " sub_catalogue.remove_columns(flag_gaia_columns)\n", " #Each prisitine catalogue may contain one or several stellarity columns indicating the #probability (0 to 1) of each source being a star. We merge these columns taking the highest value. We keep trace of the origin of the stellarity.\n", "\n", "\n", "\n", " stellarity_columns = [column for column in sub_catalogue.colnames\n", " if 'stellarity' in column]\n", "\n", " #print(\", \".join(stellarity_columns))\n", "\n", "\n", "\n", " # We create an masked array with all the stellarities and get the maximum value, as well as its\n", " # origin. Some sources may not have an associated stellarity.\n", " stellarity_array = np.array([sub_catalogue[column] for column in stellarity_columns])\n", " stellarity_array = np.ma.masked_array(stellarity_array, np.isnan(stellarity_array))\n", "\n", " max_stellarity = np.max(stellarity_array, axis=0)\n", " max_stellarity.fill_value = np.nan\n", "\n", " no_stellarity_mask = max_stellarity.mask\n", "\n", " sub_catalogue.add_column(Column(data=max_stellarity.filled(), name=\"stellarity\"))\n", "\n", " stellarity_origin = np.full(len(sub_catalogue), \"NO_INFORMATION\", dtype=\"S20\")\n", " stellarity_origin[~no_stellarity_mask] = np.array(stellarity_columns)[np.argmax(stellarity_array, axis=0)[~no_stellarity_mask]]\n", "\n", " sub_catalogue.add_column(Column(data=stellarity_origin, name=\"stellarity_origin\"))\n", "\n", " sub_catalogue.remove_columns(stellarity_columns)\n", "\n", " for col in sub_catalogue.colnames:\n", " #print(col)\n", " if (col.startswith(\"m_\") or col.startswith(\"merr_\") or col.startswith(\"f_\") or col.startswith(\"ferr_\")):\n", " sub_catalogue[col] = sub_catalogue[col].astype(float)\n", " sub_catalogue[col].fill_value = np.nan\n", " elif \"flag\" in col:\n", " sub_catalogue[col].fill_value = 0\n", " elif \"id\" in col:\n", " sub_catalogue[col].fill_value = -1\n", " \n", " sub_catalogue = sub_catalogue.filled()\n", " \n", " \n", " nb_optical_flux = (\n", " # CANDELS\n", " 1 * ~np.isnan(sub_catalogue['f_acs_f606w']) + \n", " 1 * ~np.isnan(sub_catalogue['f_acs_f814w']) +\n", " 1 * ~np.isnan(sub_catalogue['f_wfc3_f125w']) +\n", " 1 * ~np.isnan(sub_catalogue['f_wfc3_f160w']) +\n", "\n", " # DES and DECaLS\n", " 1 * ~np.isnan(sub_catalogue['f_decam_g']) + \n", " 1 * ~np.isnan(sub_catalogue['f_decam_r']) +\n", " 1 * ~np.isnan(sub_catalogue['f_decam_i']) +\n", " 1 * ~np.isnan(sub_catalogue['f_decam_z']) +\n", " 1 * ~np.isnan(sub_catalogue['f_decam_y']) +\n", " # HSC\n", " 1 * ~np.isnan(sub_catalogue['f_suprime_g']) + \n", " 1 * ~np.isnan(sub_catalogue['f_suprime_r']) +\n", " 1 * ~np.isnan(sub_catalogue['f_suprime_i']) +\n", " 1 * ~np.isnan(sub_catalogue['f_suprime_z']) +\n", " 1 * ~np.isnan(sub_catalogue['f_suprime_y']) +\n", " 1 * ~np.isnan(sub_catalogue['f_suprime_n921']) +\n", " 1 * ~np.isnan(sub_catalogue['f_suprime_n816']) +\n", " # PanSTARRS\n", " 1 * ~np.isnan(sub_catalogue['f_gpc1_g']) +\n", " 1 * ~np.isnan(sub_catalogue['f_gpc1_r']) +\n", " 1 * ~np.isnan(sub_catalogue['f_gpc1_i']) +\n", " 1 * ~np.isnan(sub_catalogue['f_gpc1_z']) +\n", " 1 * ~np.isnan(sub_catalogue['f_gpc1_y']) +\n", " # CFHT\n", " 1 * ~np.isnan(sub_catalogue['f_megacam_u']) +\n", " 1 * ~np.isnan(sub_catalogue['f_megacam_g']) +\n", " 1 * ~np.isnan(sub_catalogue['f_megacam_r']) +\n", " 1 * ~np.isnan(sub_catalogue['f_megacam_z']) +\n", " 1 * ~np.isnan(sub_catalogue['f_megacam_y']) \n", " )\n", "\n", " nb_nir_flux = (\n", " # CFHT-WIRCAM\n", " 1 * ~np.isnan(sub_catalogue['f_wircam_j']) +\n", " 1 * ~np.isnan(sub_catalogue['f_wircam_h']) +\n", " 1 * ~np.isnan(sub_catalogue['f_wircam_ks']) +\n", " # UKIDSS\n", " 1 * ~np.isnan(sub_catalogue['f_ukidss_j']) +\n", " 1 * ~np.isnan(sub_catalogue['f_ukidss_h']) +\n", " 1 * ~np.isnan(sub_catalogue['f_ukidss_k']) +\n", " # VISTA\n", " 1 * ~np.isnan(sub_catalogue['f_vista_z']) +\n", " 1 * ~np.isnan(sub_catalogue['f_vista_y']) +\n", " 1 * ~np.isnan(sub_catalogue['f_vista_j']) +\n", " 1 * ~np.isnan(sub_catalogue['f_vista_h']) +\n", " 1 * ~np.isnan(sub_catalogue['f_vista_ks'])\n", " )\n", "\n", " nb_mir_flux = (\n", " 1 * ~np.isnan(sub_catalogue['f_irac_i1']) +\n", " 1 * ~np.isnan(sub_catalogue['f_irac_i2']) +\n", " 1 * ~np.isnan(sub_catalogue['f_irac_i3']) +\n", " 1 * ~np.isnan(sub_catalogue['f_irac_i4']) \n", " )\n", " \n", " has_optical_flux = nb_optical_flux >= 2\n", " has_nir_flux = nb_nir_flux >= 2\n", " has_mir_flux = nb_mir_flux >= 2\n", "\n", " sub_catalogue.add_column(\n", " Column(\n", " 1 * has_optical_flux + 2 * has_nir_flux + 4 * has_mir_flux,\n", " name=\"flag_optnir_det\")\n", " )\n", " \n", " #print('Finished join')\n", " sub_catalogue.remove_columns(id_names)\n", " #sub_catalogue.remove_columns(['sxds_b_id', 'sxds_v_id', 'sxds_r_id', 'sxds_i_id', 'sxds_z_id'])\n", " \n", " for col in sub_catalogue.colnames:\n", " if col.endswith('_ra'):\n", " sub_catalogue.remove_column(col)\n", " if col.endswith('_dec'):\n", " sub_catalogue.remove_column(col)\n", " if '_vircam_' in col:\n", " sub_catalogue.rename_column(col, col.replace('_vircam_', '_vista_'))\n", " \n", "\n", " \n", " \n", " \n", " sub_catalogue.write(\"{}/tiles/sub_catalogue_xmm-lss{}_{}.fits\".format(OUT_DIR, SUFFIX, n), overwrite=True)\n", " \n", " \n", " del sub_catalogue\n", " del flag_column\n", " del flag_merged_column\n", " gc.collect()\n", " time.sleep(10)\n", " \n", " n += 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## How to generate final catalogue\n", "After this notebook has been run there will be a set of sub catalogues in data/tiles/\n", "\n", "These need to be stacked using stilts:\n", "\n", "
\n",
    "suffix=20180111\n",
    "\n",
    "ls ./data/tiles/sub_catalogue_xmm-lss_$suffix_*.fits > ./data/tiles/fits_list_$suffix.lis\n",
    "\n",
    "stilts tcat in=@./data/tiles/fits_list_$suffix.lis out=./data/master_catalogue_xmm-lss_$suffix.fits\n",
    "
\n", "\n", "For many purposes this file may be too large. In order to run checks and diagnostics we typically take a subset using something like:\n", "\n", "
\n",
    "stilts tpipe cmd='every 10' ./data/master_catalogue_xmm-lss_$suffix.fits omode=out out=./data/master_catalogue_xmm-lss_RANDOM10PCSAMPLE_$suffix.fits\n",
    "
" ] } ], "metadata": { "kernelspec": { "display_name": "Python (herschelhelp_internal)", "language": "python", "name": "helpint" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.4" } }, "nbformat": 4, "nbformat_minor": 2 }