diff --git a/CHANGES.rst b/CHANGES.rst index 9b4f2ef3ed..f6a2130594 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -23,6 +23,11 @@ alma - Bug fix in ``footprint_to_reg`` that did not allow regions to be plotted. [#3285] +esa.euclid +^^^^^^^^^^ + +- New method, get_scientific_product_list, to retrieve scientific LE3 products. [#3313] + linelists.cdms ^^^^^^^^^^^^^^ @@ -2219,4 +2224,4 @@ Infrastructure, Utility and Other Changes and Additions 0.1 (2013-09-19) ================ -- Initial release. Includes features! +- Initial release. Includes features! \ No newline at end of file diff --git a/astroquery/esa/euclid/__init__.py b/astroquery/esa/euclid/__init__.py index f7c870854a..bd3d0019ca 100644 --- a/astroquery/esa/euclid/__init__.py +++ b/astroquery/esa/euclid/__init__.py @@ -59,6 +59,70 @@ class Conf(_config.ConfigNamespace): SIR_SCIENCE_FRAME_PRODUCTS = ['dpdSirScienceFrame'] + VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS = { + 'Clusters of Galaxies': { + 'GrpCatalog': ['DpdLE3clAMICOModel', 'DpdLE3clDetMergeParams', 'DpdLE3clDetOnMockParams', + 'DpdLE3clDetInputParams', 'DpdLE3clAmicoAux', 'DpdLE3clAssociations', 'DpdLE3clPzwavAux', + 'DpdLE3clPZWAVDensity', 'DpdLE3clDetClusters', 'DpdLE3FullDet', 'DpdLE3clCatMergeParams', + 'DpdLE3clCATParams', 'DpdLE3clCcpInputParams', 'DpdLE3clRichMembers', 'DpdLE3clZClParams', + 'DpdLE3clGlueMatchParams', 'DpdLE3clMockGlueMatchParams'], + 'GrpClustering': ['DDpdLE3clPkDOA', 'DpdLE3clCovmatTwoPointCov2', 'DpdLE3clPkYam', + 'DpdLE3clTwoPointAutoCorrPol', 'DpolDpdLE3clCovmatPKCov1'], + 'GrpCOMB': ['DpdLE3clCombConfigurationSet', 'DpdLE3clCombCovMatDeltaSigmaCosmoDep', + 'DpdLE3clCombCovMatReducedShearCosmoDep', 'DpdLE3clCombCovMatReducedShearCosmoIndep', + 'DpdLE3clCombRedSheProf', 'DpdLE3clCombStackingCosmoDep', 'DpdLE3clCombStackingCosmoInd', + 'DpdLE3clCombUCovRedSheProf', 'DpdLE3clCombWLME'], + 'GrpLMF': ['DpdLE3clLMFOutput', 'DpdLE3clLMFParams'], + 'GrpSEL': ['DpdLE3clMatchForSelParams', 'DpdLE3clMockClusters', 'DpdLE3clRedshiftDistrib', + 'DpdLE3clSelRandom', 'DpdLE3clSelRandomParams', 'DpdLE3clSelSelFunc', + 'DpdLE3clSelSelFuncInputParams', 'DpdLE3clSelSinfoniaIniClMockInputParams', + 'DpdLE3clSelSinfoniaMockInputParams', 'DpdLE3clSelSubSample', 'DpdLE3clSinfoniaEllipticity'], + 'GrpTiling': ['DpdLE3clCLTile', 'DpdLE3clCommon', 'DpdLE3clConfigurationSet']}, + 'External Data Products': { + 'LE3-ED configuration catalog': ['DpdLE3edConfigurationFile'], + 'LE3-ED match catalog': ['DpdLE3edMatchedCatalog']}, + 'Galaxy Clustering Products': { + '2PCF_PK': ['DpdLE3gcPkCross', 'DpdLE3gcPkDOA', 'DpdLE3gcPkYam', 'DpdLE3gcTwoPointAutoCorr', + 'DpdLE3gcTwoPointAutoCorrCart', 'DpdLE3gcTwoPointAutoCorrPol', 'DpdLE3gcTwoPointCrossCorr', + 'DpdLE3gcTwoPointCrossCorrCart', 'DpdLE3gcTwoPointCrossCorrPol', 'DpdLE3gcTwoPointRecAutoCorr', + 'DpdLE3gcTwoPointRecAutoCorrCart', 'DpdLE3gcTwoPointRecAutoCorrPol', + 'DpdLE3gcTwoPointRecCrossCorr', 'DpdLE3gcTwoPointRecCrossCorrCart', + 'DpdLE3gcTwoPointRecCrossCorrPol'], + '3PCF_BK': ['DpdLE3gcBkMonopole', 'DpdLE3gcBkMultipole', 'DpdLE3gcThreePointAll', 'DpdLE3gcThreePointSin'], + 'CM-2PCF': ['DpdLE3gcCovmatTwoPointCov1D', 'DpdLE3gcCovmatTwoPointCov2Dcart', + 'DpdLE3gcCovmatTwoPointCov2Dpol', 'DpdLE3gcCovmatTwoPointCovMu', + 'DpdLE3gcCovmatTwoPointCovPro'], + 'CM-PK': ['DpdLE3gcCovmatPKCov1D', 'DpdLE3gcCovmatPKCov2Dcart', 'DpdLE3gcCovmatPKCov2Dpol']}, + 'Internal Data Products': { + 'SEL Config/Stats': ['DpdLE3IDSELConfigurationSet', 'DpdLE3IDSELIDStatistics'], + 'SEL Wide Main': ['DpdLE3IDSELIDCatalog'], + 'SEL Wide': ['DpdLE3IDSELIDSubsampledCatalog'], + 'VMSP Group': ['DpdLE3IDVMSPConfiguration', 'DpdLE3IDVMSPDetectionModel', 'DpdLE3IDVMSPDistModel', + 'DpdLE3IDVMSPRandomCatalog']}, + 'Weak Lensing Products': { + '2D-MASS': ['DpdTwoDMassConvergenceClusters', 'DpdTwoDMassConvergencePatch', + 'DpdTwoDMassConvergencePatchesToSphere', 'DpdTwoDMassConvergenceSphere', + 'DpdTwoDMassParamsConvergenceClusters', 'DpdTwoDMassParamsConvergencePatch', + 'DpdTwoDMassParamsConvergencePatchesToSphere', 'DpdTwoDMassParamsConvergenceSphere', + 'DpdTwoDMassParamsPeakCatalogConvergence', 'DpdTwoDMassParamsPeakCatalogMassAperture', + 'DpdTwoDMassPeakCatalog'], + '2PCF': ['DpdTwoPCFWLCOSEBIFilter', 'DpdTwoPCFWLParamsCOSEBIShearShear2D', 'DpdTwoPCFWLParamsClPosPos2D', + 'DpdTwoPCFWLParamsPEBPosShear2D', 'DpdTwoPCFWLParamsPEBShearShear2D', 'DpdTwoPCFWLParamsPosPos2D', + 'DpdTwoPCFWLParamsPosShear2D', 'DpdTwoPCFWLParamsShearShear2D', 'DpdTwoPCFWLCOSEBIShearShear2D', + 'DpdTwoPCFWLClPosPos2D', 'DpdTwoPCFWLPEBPosShear2D', 'DpdTwoPCFWLPEBShearShear2D', + 'DpdTwoPCFWLPosPos2D', 'DpdTwoPCFWLPosShear2D', 'DpdTwoPCFWLShearShear2D', + 'DpdCovarTwoPCFWLParams', 'DpdCovarTwoPCFWLClPosPos2D', 'DpdCovarTwoPCFWLCOSEBIShearShear2D', + 'DpdCovarTwoPCFWLPEBPosShear2D', 'DpdCovarTwoPCFWLPEBShearShear2D', + 'DpdCovarTwoPCFWLPosPos2D', 'DpdCovarTwoPCFWLPosShear2D', 'DpdCovarTwoPCFWLShearShear2D', + 'DpdCovarTwoPCFWLResampleCOSEBIShearShear2D', 'DpdCovarTwoPCFWLResampleClPosPos2D', + 'DpdCovarTwoPCFWLResamplePEBPosShear2D', 'DpdCovarTwoPCFWLResamplePEBShearShear2D', + 'DpdCovarTwoPCFWLResamplePosPos2D', 'DpdCovarTwoPCFWLResamplePosShear2D', + 'DpdCovarTwoPCFWLResampleShearShear2D'], + 'PK': ['DpdPKWLAlms', 'DpdPKWLCovMatrix2D', 'DpdPKWLEstimate2D', 'DpdPKWLMaps', 'DpdPKWLMixingMatrix2D']}, + 'PHZ': { + 'PHZ': ['DpdBinMeanRedshift', 'DpdReferenceSample', 'DpdTomographicBins']} + } + PRODUCT_TYPES = ['observation', 'mosaic'] SCHEMAS = ['sedm'] diff --git a/astroquery/esa/euclid/core.py b/astroquery/esa/euclid/core.py index f10c607640..aea9b1a227 100644 --- a/astroquery/esa/euclid/core.py +++ b/astroquery/esa/euclid/core.py @@ -8,6 +8,7 @@ """ import binascii import os +import pprint import tarfile import zipfile from collections.abc import Iterable @@ -472,6 +473,10 @@ def login(self, *, user=None, password=None, credentials_file=None, verbose=Fals file containing user and password in two lines verbose : bool, optional, default 'False' flag to display information about the process + + Returns + ------- + None """ try: log.info(f"Login to Euclid TAP server: {self._TapPlus__getconnhandler().get_host_url()}") @@ -503,6 +508,10 @@ def login_gui(self, verbose=False): ---------- verbose : bool, optional, default 'False' flag to display information about the process + + Returns + ------- + None """ try: log.info(f"Login to Euclid TAP server: {self._TapPlus__getconnhandler().get_host_url()}") @@ -540,6 +549,11 @@ def logout(self, verbose=False): ---------- verbose : bool, optional, default 'False' flag to display information about the process + + Returns + ------- + None + """ try: super().logout(verbose=verbose) @@ -779,7 +793,7 @@ def __get_tile_catalogue_list(self, *, tile_index, product_type, verbose=False): Returns ------- - The list of products (astropy.table) + The products in an astropy.table.Table """ if tile_index is None: @@ -884,7 +898,7 @@ def get_product_list(self, *, observation_id=None, tile_index=None, product_type #. NISP DpdNispRawFrame: NISP Raw Frame Product - #. Euclid LE2/LE3 products: + #. Euclid LE2 products: #. VIS DpdVisCalibratedQuadFrame: VIS Calibrated Frame Product @@ -1276,5 +1290,157 @@ def get_datalinks(self, ids, *, linking_parameter='SOURCE_ID', verbose=False): return self.__eucliddata.get_datalinks(ids=ids, linking_parameter=linking_parameter, verbose=verbose) + def get_scientific_product_list(self, *, observation_id=None, tile_index=None, category=None, group=None, + product_type=None, dataset_release='REGREPROC1_R2', verbose=False): + """ Gets the LE3 products (the high-level science data products). + + Please note that not all combinations of category, group, and product_type are valid. Check the available values + in https://astroquery.readthedocs.io/en/latest/esa/euclid/euclid.html#appendix + + Parameters + ---------- + observation_id: str, optional, default None. + It is not compatible with parameter tile_index. + tile_index: str, optional, default None. + It is not compatible with parameter observation_id. + category: str, optional, default None. + group : str, optional, default None + product_type : str, optional, default None + dataset_release : str, mandatory. Default REGREPROC1_R2 + Data release from which data should be taken. + verbose : bool, optional, default 'False' + flag to display information about the process + + Returns + ------- + The products in an astropy.table.Table + + """ + + query_extra_condition = "" + + if (observation_id is None and tile_index is None and category is None and group is None and product_type is + None): + raise ValueError("Include a valid parameter to retrieve a LE3 product.") + + if dataset_release is None: + raise ValueError("The release is required.") + + if observation_id is not None and tile_index is not None: + raise ValueError(self.__ERROR_MSG_REQUESTED_OBSERVATION_ID_AND_TILE_ID) + + if tile_index is not None: + query_extra_condition = f" AND '{tile_index}' = ANY(tile_index_list) " + + if observation_id is not None: + query_extra_condition = f" AND '{observation_id}' = ANY(observation_id_list) " + + if category is not None: + + try: + _ = conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS[category] + except KeyError: + raise ValueError( + f"Invalid combination of parameters: category={category}. Valid values:\n " + f"{pprint.pformat(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS)}") + + if group is not None: + + try: + product_type_for_category_group_list = conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS[category][ + group] + except KeyError: + raise ValueError( + f"Invalid combination of parameters: category={category}; group={group}. Valid " + f"values:\n {pprint.pformat(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS)}") + + if product_type is not None: + + if product_type not in product_type_for_category_group_list: + raise ValueError( + f"Invalid combination of parameters: category={category}; group={group}; " + f"product_type={product_type}. Valid values:\n " + f"{pprint.pformat(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS)}") + + query_extra_condition = query_extra_condition + f" AND product_type ='{product_type}' " + else: + + final_products = ', '.join(f"'{w}'" for w in product_type_for_category_group_list) + query_extra_condition = query_extra_condition + f" AND product_type IN ({final_products}) " + else: # category is not None and group is None + + product_type_for_category_group_list = [item for row in + conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS[category] + .values() for item in row] + if product_type is not None: + + if product_type not in product_type_for_category_group_list: + raise ValueError( + f"Invalid combination of parameters: category={category}; product_type={product_type}." + f" Valid values:\n {pprint.pformat(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS)}") + + query_extra_condition = query_extra_condition + f" AND product_type = '{product_type}' " + + else: # category is not None and group is None and product_type is None + final_products = ', '.join(f"'{w}'" for w in product_type_for_category_group_list) + query_extra_condition = query_extra_condition + f" AND product_type IN ({final_products}) " + else: # category is None + + all_groups_dict = {} + for i in conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS.keys(): + all_groups_dict.update(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS[i]) + + if group is not None: + + try: + _ = all_groups_dict[group] + except KeyError: + raise ValueError( + f"Invalid combination of parameters: group={group}. Valid values:\n " + f"{pprint.pformat(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS)}") + + if product_type is not None: + + if product_type not in all_groups_dict[group]: + raise ValueError( + f"Invalid combination of parameters: group={group}; product_type={product_type}. Valid " + f"values:\n {pprint.pformat(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS)}") + + query_extra_condition = query_extra_condition + f" AND product_type = '{product_type}' " + else: # group is not None and product_type is None + + product_type_for_group_list = all_groups_dict[group] + final_products = ', '.join(f"'{w}'" for w in product_type_for_group_list) + query_extra_condition = query_extra_condition + f" AND product_type IN ({final_products}) " + + else: # category is None and group is None + + product_type_for_category_group_list = [element for sublist in all_groups_dict.values() for element + in sublist] + + if product_type is not None: + if product_type not in product_type_for_category_group_list: + raise ValueError( + f"Invalid combination of parameters: product_type={product_type}. Valid values:\n " + f"{pprint.pformat(conf.VALID_LE3_PRODUCT_TYPES_CATEGORIES_GROUPS)}") + + query_extra_condition = query_extra_condition + f" AND product_type = '{product_type}' " + + else: + query_extra_condition = query_extra_condition + "" + + query = ( + f"SELECT basic_download_data.basic_download_data_oid, basic_download_data.product_type, " + f"basic_download_data.product_id, CAST(basic_download_data.observation_id_list as text) AS " + f"observation_id_list, CAST(basic_download_data.tile_index_list as text) AS tile_index_list, " + f"CAST(basic_download_data.patch_id_list as text) AS patch_id_list, " + f"CAST(basic_download_data.filter_name as text) AS filter_name FROM sedm.basic_download_data WHERE " + f"release_name='{dataset_release}' {query_extra_condition} ORDER BY observation_id_list ASC") + + job = super().launch_job(query=query, output_format='votable_plain', verbose=verbose, + format_with_results_compressed=('votable_gzip',)) + + return job.get_results() + Euclid = EuclidClass() diff --git a/astroquery/esa/euclid/tests/test_euclidtap.py b/astroquery/esa/euclid/tests/test_euclidtap.py index a0899e7675..63a3cb2d27 100644 --- a/astroquery/esa/euclid/tests/test_euclidtap.py +++ b/astroquery/esa/euclid/tests/test_euclidtap.py @@ -1054,6 +1054,105 @@ def test_get_spectrum_exceptions(): tap.get_spectrum(retrieval_type='hola', source_id='2417660845403252054', schema='schema', output_file=None) +def test_get_scientific_data_product_list(): + conn_handler = DummyConnHandler() + tap_plus = TapPlus(url="http://test:1111/tap", data_context='data', client_id='ASTROQUERY', + connhandler=conn_handler) + # Launch response: we use default response because the query contains decimals + responseLaunchJob = DummyResponse(200) + responseLaunchJob.set_data(method='POST', context=None, body=TEST_GET_PRODUCT_LIST, headers=None) + + conn_handler.set_default_response(responseLaunchJob) + + euclid = EuclidClass(tap_plus_conn_handler=conn_handler, datalink_handler=tap_plus, show_server_messages=False) + + results = euclid.get_scientific_product_list(observation_id=11111) + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(tile_index=11111) + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(category='Clusters of Galaxies', group='GrpCatalog', + product_type='DpdLE3clAmicoAux') + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(category='Weak Lensing Products', group='2PCF', + product_type='DpdCovarTwoPCFWLClPosPos2D') + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(category='Weak Lensing Products') + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(group='GrpCatalog') + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(category='Weak Lensing Products', group='2PCF') + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(group='2PCF', product_type='DpdCovarTwoPCFWLClPosPos2D') + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(category='Weak Lensing Products', + product_type='DpdCovarTwoPCFWLClPosPos2D') + + assert results is not None, "Expected a valid table" + + results = euclid.get_scientific_product_list(product_type='DpdCovarTwoPCFWLClPosPos2D') + + assert results is not None, "Expected a valid table" + + +def test_get_scientific_data_product_list_exceptions(): + eculid = EuclidClass() + + with pytest.raises(ValueError, match="Include a valid parameter to retrieve a LE3 product."): + eculid.get_scientific_product_list(observation_id=None, tile_index=None, category=None, group=None, + product_type=None) + + with pytest.raises(ValueError, match="The release is required."): + eculid.get_scientific_product_list(observation_id=11111, dataset_release=None) + + with pytest.raises(ValueError, match="Incompatible: 'observation_id' and 'tile_id'. Use only one."): + eculid.get_scientific_product_list(observation_id=11111, tile_index=1234567) + + with pytest.raises(ValueError, match=r"Invalid combination of parameters: category=not_valid. *."): + eculid.get_scientific_product_list(observation_id=11111, category='not_valid') + + with pytest.raises(ValueError, match=r"Invalid combination of parameters: group=not_valid. *."): + eculid.get_scientific_product_list(observation_id=11111, group='not_valid') + + with pytest.raises(ValueError, match=r"Invalid combination of parameters: product_type=not_valid. *."): + eculid.get_scientific_product_list(observation_id=11111, product_type='not_valid') + + with pytest.raises(ValueError, match=r"Invalid combination of parameters: category=Clusters of Galaxies. *."): + eculid.get_scientific_product_list(observation_id=11111, category='Clusters of Galaxies', + group='not_valid') + + with pytest.raises(ValueError, match=r"Invalid combination of parameters: category=Clusters of Galaxies; " + r"group=GrpCatalog; product_type=not_valid. *."): + eculid.get_scientific_product_list(observation_id=11111, category='Clusters of Galaxies', + group='GrpCatalog', + product_type='not_valid') + + with pytest.raises(ValueError, + match=r"Invalid combination of parameters: category=Clusters of Galaxies; " + r"product_type=not_valid. *."): + eculid.get_scientific_product_list(observation_id=11111, category='Clusters of Galaxies', + product_type='not_valid') + + with pytest.raises(ValueError, + match=r"Invalid combination of parameters: group=GrpCatalog; product_type=not_valid. *."): + eculid.get_scientific_product_list(observation_id=11111, group='GrpCatalog', product_type='not_valid') + + @patch.object(TapPlus, 'login') def test_login(mock_login): conn_handler = DummyConnHandler() diff --git a/docs/esa/euclid/euclid.rst b/docs/esa/euclid/euclid.rst index 44ac6d4f49..28383962f5 100644 --- a/docs/esa/euclid/euclid.rst +++ b/docs/esa/euclid/euclid.rst @@ -240,7 +240,42 @@ To get the list of products associated with a given Euclid observation_id or til EUC_MER_BGSUB-MOSAIC-DES-Z_TILE102018211-83C32F_20241018T143526.104818Z_00.00.fits 1398 102018211 DECAM DECAM_z SCIENCE SKY 57.9990741 -51.5 IMAGE -The method returns a list of products as an astropy.table. +The method returns a list of products as an `~astropy.table.Table`. It is also possible to search by observation_id, but not by both parameters simultaneously. + +It is possible to retrieve LE3 data (scientific data) by observation_id or tile_index (but not by both simultaneously) and/or for different categories, groups and product types. The available values +for these parameters are summarized in section :ref:`appendix`. + + +.. Skipping authentication requiring examples +.. doctest-skip:: + + >>> from astroquery.esa.euclid import Euclid + >>> le3_product_list = Euclid.get_scientific_product_list(tile_index=22) + >>> print("Found", len(le3_product_list), "results") + Found 3 results + >>> print(le3_product_list) + basic_download_data_oid product_type product_id observation_id_list tile_index_list patch_id_list filter_name + ----------------------- -------------- ------------------------------------------------------------- ------------------- --------------- ------------- ----------- + 47191 DpdLE3clCLTile PPO_REGREPROC1_R2_CLTEST_R0_CLTILING_R5-output_tiles-27 {} {22} {} + 47132 DpdLE3clCLTile PPO_REGREPROC1_R2_CLTEST_R0_CLTILINGPOLYHR_R2-output_tiles-27 {} {22} {} + 47233 DpdLE3clCLTile PPO_REGREPROC1_R2_CLTEST_R0_CLTILING_R6-output_tiles-27 {} {22} {} + + +In the following example, for the Clusters of Galaxies category, and the group GrpCatalog, we retrieve all the DET-CL AMICO auxiliary Data Product products (DpdLE3clAmicoAux): + +.. Skipping authentication requiring examples +.. doctest-skip:: + + >>> from astroquery.esa.euclid import Euclid + >>> results = euclid.get_scientific_product_list(category='Clusters of Galaxies', group='GrpCatalog', product_type='DpdLE3clAmicoAux') + >>> print("Found", len(le3_product_list), "results") + Found 2 results + >>> print(le3_product_list) + basic_download_data_oid product_type product_id observation_id_list tile_index_list patch_id_list filter_name + ----------------------- ---------------- ------------------------------------------------ ------------------- --------------- ------------- ----------- + 47257 DpdLE3clAmicoAux PPO_REGREPROC1_R2_CLTEST_R0_CLDET_R3-amico_aux-0 {} {} {} + 47258 DpdLE3clAmicoAux PPO_REGREPROC1_R2_CLTEST_R0_CLDET_R7-amico_aux-0 {} {} {} + 1.2. Cone search ^^^^^^^^^^^^^^^^ @@ -667,7 +702,7 @@ To get the list of products associated with a given EUCLID observation_id or til EUC_MER_BGSUB-MOSAIC-DES-R_TILE102018211-1078B7_20241018T142927.232351Z_00.00.fits 1401 102018211 DECAM DECAM_r SCIENCE SKY 57.9990741 -51.5 IMAGE EUC_MER_BGSUB-MOSAIC-DES-Z_TILE102018211-83C32F_20241018T143526.104818Z_00.00.fits 1398 102018211 DECAM DECAM_z SCIENCE SKY 57.9990741 -51.5 IMAGE -The method returns a list of products as an astropy.table. +The method returns a list of products as an `~astropy.table.Table`. It is possible to download a product given its file name or product id: @@ -1206,6 +1241,18 @@ A fits file is made if no file name is provided. .. _DataLink: https://www.ivoa.net/documents/DataLink/ +.. _appendix: + +======== +Appendix +======== + +The following table summarises the available values of the parameters of the method get_scientific_product_list. + +.. csv-table:: Valid values for the parameters of the method get_scientific_product_list + :file: table_values.csv + :header-rows: 1 + :widths: auto ============= Reference/API diff --git a/docs/esa/euclid/table_values.csv b/docs/esa/euclid/table_values.csv new file mode 100644 index 0000000000..4b8a6044b2 --- /dev/null +++ b/docs/esa/euclid/table_values.csv @@ -0,0 +1,135 @@ +category,group,product_type,description +'Internal Data Products','SEL Wide Main','DpdLE3IDSELIDCatalog', +'Internal Data Products','SEL Wide','DpdLE3IDSELIDSubsampledCatalog', +'Internal Data Products','VMSP Group','DpdLE3IDVMSPConfiguration',VMSP Configuration +'Internal Data Products','VMSP Group','DpdLE3IDVMSPDetectionModel',VMSP ID Detection Model +'Internal Data Products' ,'VMSP Group','DpdLE3IDVMSPDistModel',VMSP Distribution Model +'Internal Data Products','VMSP Group','DpdLE3IDVMSPRandomCatalog',Random Catalog Product +'Internal Data Products','SEL Config/Stats','DpdLE3IDSELIDStatistics',SEL-ID Purity and completeness statistics +'Internal Data Products','SEL Config/Stats','DpdLE3IDSELConfigurationSet',SEL Configuration +'Internal Data Products','External Data Products','LE3-ED configuration catalog',LE3-ED configuration catalog +'Internal Data Products','External Data Products','LE3-ED match catalog','DpdLE3edMatchedCatalog' +'Weak Lensing Products','2PCF','DpdTwoPCFWLCOSEBIFilter',This product contains COSEBI filters +'Weak Lensing Products','2PCF','DpdTwoPCFWLParamsCOSEBIShearShear2D',This product contains parameters to compute the +'Weak Lensing Products','2PCF','DpdTwoPCFWLParamsClPosPos2D',This product contains parameters to compute the tomographic +'Weak Lensing Products','2PCF','DpdTwoPCFWLParamsPEBPosShear2D',This product contains parameters to compute the +'Weak Lensing Products','2PCF','DpdTwoPCFWLParamsPEBShearShear2D',This product contains parameters to compute the +'Weak Lensing Products','2PCF','DpdTwoPCFWLParamsPosPos2D',Input parameters to compute tomographic angular 2PCF. +'Weak Lensing Products','2PCF','DpdTwoPCFWLParamsPosShear2D',Input parameters to compute the tomographic galaxy-galaxy lensing 2PCF. +'Weak Lensing Products','2PCF','DpdTwoPCFWLParamsShearShear2D',Input parameters to compute tomographic cosmic shear 2PCF. +'Weak Lensing Products','2PCF','DpdTwoPCFWLCOSEBIShearShear2D',Tomographic cosmic shear COSEBI modes. +'Weak Lensing Products','2PCF','DpdTwoPCFWLClPosPos2D',This product contains the tomographic angular power spectra +'Weak Lensing Products','2PCF','DpdTwoPCFWLPEBPosShear2D',Tomographic galaxy-galaxy lensing E/B power spectra +'Weak Lensing Products','2PCF','DpdTwoPCFWLPEBShearShear2D',Tomographic cosmic shear E/B power spectra. +'Weak Lensing Products','2PCF','DpdTwoPCFWLPosPos2D',Tomographic angular 2PCF. +'Weak Lensing Products','2PCF','DpdTwoPCFWLPosShear2D',Tomographic galaxy galaxy lensing 2PCF. +'Weak Lensing Products','2PCF','DpdTwoPCFWLShearShear2D',Tomographic cosmic shear 2PCF. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLParams',This product contains resampling parameters to compute the covariance matrices. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLClPosPos2D',Covariance of Tomographic Angular Power Spectra +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLCOSEBIShearShear2D',Covariance of Tomographic Cosmic Shear COSEBI +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLPEBPosShear2D',Cov. of Tomo. Galaxy-Galaxy Lensing EB Power Spectra +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLPEBShearShear2D',Covariance of Tomographic Cosmic Shear EB Power Spectra +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLPosPos2D',Covariance of Tomographic Angular Correlation +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLPosShear2D',Cov. of Tomographic Galaxy-Galaxy Lensing Correlation +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLShearShear2D',Covariance of Tomographic Cosmic Shear Correlation +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLResampleCOSEBIShearShear2D',This product contains a list of resampled tomographic cosmic shear COSEBI modes. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLResampleClPosPos2D',This product contains a list of resampled tomographic angular power spectrum. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLResamplePEBPosShear2D',This product contains a list of resampled tomographic galaxy-galaxy lensing E/B power spectra. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLResamplePEBShearShear2D',This product contains a list of resampled tomographic cosmic shear E/B power spectra. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLResamplePosPos2D',This product contains a list of resampled tomographic galaxy-galaxy lensing correlation function. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLResamplePosShear2D',This product contains a list of resampled tomographic galaxy-galaxy lensing correlation function. +'Weak Lensing Products','2PCF','DpdCovarTwoPCFWLResampleShearShear2D',This product contains a list of resampled tomographic cosmic shear 2PCF. +'Weak Lensing Products','PK','DpdPKWLAlms',Data product that contains the alms generated by PK-WL. +'Weak Lensing Products','PK','DpdPKWLCovMatrix2D',This product contains the covariance matrix of angular power spectra. +'Weak Lensing Products','PK','DpdPKWLEstimate2D',This product contains the tomographic angular clustering power spectra. +'Weak Lensing Products','PK','DpdPKWLMaps',Data product that contains the FITS file with maps generated by PK-WL. +'Weak Lensing Products','PK','DpdPKWLMixingMatrix2D',This product contains the mixing matrix components. +'Weak Lensing Products','2D-MASS','DpdTwoDMassParamsConvergenceClusters',This product contains input parameters to compute the 2D convergence maps for clusters studies. +'Weak Lensing Products','2D-MASS','DpdTwoDMassParamsConvergencePatch',This product contains inputs to compute the 2D convergence maps for one or several patches. +'Weak Lensing Products','2D-MASS','DpdTwoDMassParamsConvergencePatchesToSphere',This product contains inputs to compute the 2D convergence maps on the sphere. +'Weak Lensing Products','2D-MASS','DpdTwoDMassParamsConvergenceSphere',This product contains inputs to compute the 2D convergence maps on the sphere. +'Weak Lensing Products','2D-MASS','DpdTwoDMassParamsPeakCatalogConvergence',This product contains inputs to perform peak counting on a convergence map. +'Weak Lensing Products','2D-MASS','DpdTwoDMassParamsPeakCatalogMassAperture',This product contains inputs to perform peak counting on shear catalog for one or several patches +'Weak Lensing Products','2D-MASS','DpdTwoDMassConvergenceClusters',E/B Convergence Maps for Clusters +'Weak Lensing Products','2D-MASS','DpdTwoDMassConvergencePatchesToSphere',MultiPatch-Based E/B Convergence Maps for Large field +'Weak Lensing Products','2D-MASS','DpdTwoDMassConvergencePatch',E/B Convergence Maps for Small Field +'Weak Lensing Products','2D-MASS','DpdTwoDMassConvergenceSphere',Spherical E/B Convergence Maps +'Weak Lensing Products','2D-MASS','DpdTwoDMassPeakCatalog',Peak Catalog +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcPkCross',Cross [Power Spectrum Multipoles and Window Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcPkDOA',"DOA [Power Spectrum Multipoles, 2Dpolar, 2Dcart and Window Product]" +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcPkYam',Yamamoto [Power Spectrum Multipoles and Window Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointAutoCorr',1D [Angle-averaged Auto-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointAutoCorrCart',2D Cartesian [2D Cartesian and Projected Auto-corr. Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointAutoCorrPol',2D Polar [2D Polar and Multipole Auto-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointCrossCorr',1D [Angle-averaged Cross-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointCrossCorrCart',2D Cartesian [2D Cartesian and Projected Cross-corr. Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointCrossCorrPol',2D Polar [2D Polar and Multipole Cross-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointRecAutoCorr',1D [Post-reconstruction Angle-averaged Auto-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointRecAutoCorrCart',2D Cartesian [Post-reconstruction 2D Cartesian and Projected Auto-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointRecAutoCorrPol',2D Polar [Post-reconstruction 2D Polar and Multipole Auto-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointRecCrossCorr',1D [Post-reconstruction Angle-averaged Cross-corr. Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointRecCrossCorrCart',2D Cartesian [Post-reconstruction 2D Cartesian and Projected Cross-correlation Product] +'Galaxy Clustering Products','2PCF_PK','DpdLE3gcTwoPointRecCrossCorrPol',2D Polar [Post-reconstruction 2D Polar and Multipole Cross-correlation Product] +'Galaxy Clustering Products','3PCF_BK','DpdLE3gcThreePointAll',3PCF Triplets "ALL" Product +'Galaxy Clustering Products','3PCF_BK','DpdLE3gcThreePointSin',3PCF Correlation "SINGLE" Product +'Galaxy Clustering Products','3PCF_BK','DpdLE3gcBkMonopole',Bispectrum Product Monopole +'Galaxy Clustering Products','3PCF_BK','DpdLE3gcBkMultipole',Bispectrum Product Multipoles +'Galaxy Clustering Products','CM-2PCF','DpdLE3gcCovmatTwoPointCov1D',"Output, 1D [Covariance Matrix of the Angle-averaged Auto-correlation Product]" +'Galaxy Clustering Products','CM-2PCF','DpdLE3gcCovmatTwoPointCov2Dcart',"Output, 2D cartesian [Covariance Matrix of the 2D Cartesian 2PCF Product]" +'Galaxy Clustering Products','CM-2PCF','DpdLE3gcCovmatTwoPointCov2Dpol',"Output, 2D Polar [Covariance Matrix of the 2D Polar 2PCF Product]" +'Galaxy Clustering Products','CM-2PCF','DpdLE3gcCovmatTwoPointCovMu',"Output, Covariance Matrix of the Multipoles 0, 1, 2, 3, 4 2PCF Product" +'Galaxy Clustering Products','CM-2PCF','DpdLE3gcCovmatTwoPointCovPro',"Output, Projected [Covariance Matrix of the Projected 2PCF Product]" +'Galaxy Clustering Products','CM-PK','DpdLE3gcCovmatPKCov1D',"Output, Covariance Matrix of the Power Spectrum 0, 1, 2, 3, 4 multipoles Product" +'Galaxy Clustering Products','CM-PK','DpdLE3gcCovmatPKCov2Dcart',"Output, Covariance Matrix of the Power Spectrum 2D Cartesian Product" +'Galaxy Clustering Products','CM-PK','DpdLE3gcCovmatPKCov2Dpol',"Output, Covariance Matrix of the Power Spectrum 2D Polar Product" +'Clusters of Galaxies','GrpCatalog,'DpdLE3clAMICOModel',This product contains the Model for AMICO +'Clusters of Galaxies','GrpCatalog,'DpdLE3clDetMergeParams',This product contains the input parameters for DET +'Clusters of Galaxies','GrpCatalog,'DpdLE3clDetOnMockParams',This product contains the input parameters for DET_ON_MOCK pipeline +'Clusters of Galaxies','GrpCatalog,'DpdLE3clDetInputParams',This product contains the input parameters for DEt +'Clusters of Galaxies','GrpCatalog,'DpdLE3clAmicoAux',DET-CL AMICO auxiliary Data Product +'Clusters of Galaxies','GrpCatalog,'DpdLE3clAssociations',This output product contains the catalog of associations galaxy to clusters +'Clusters of Galaxies','GrpCatalog,'DpdLE3clPzwavAux',DET-CL PZWAV auxiliary Data Product +'Clusters of Galaxies','GrpCatalog,'DpdLE3clPZWAVDensity',This output product contains the intermediate Product "Density Map" from DET-CL/PZWAV +'Clusters of Galaxies','GrpCatalog,'DpdLE3clDetClusters',This output product contains the catalog of candidate clusters from DET-CL +'Clusters of Galaxies','GrpCatalog,'DpdLE3FullDet',This output product contains the merged catalog of candidate clusters +'Clusters of Galaxies','GrpCatalog,'DpdLE3clCatMergeParams',This product contains the input parameters for the merging in CAT-CL +'Clusters of Galaxies','GrpCatalog,'DpdLE3clCATParams',This product contains the configuration parameters for LE3 CAT-CL +'Clusters of Galaxies','GrpCatalog,'DpdLE3clCcpInputParams',This product contains the input parameters for Cluster Characterization Pipeline +'Clusters of Galaxies','GrpCatalog,'DpdLE3clRichMembers',Galaxy Membership Output Product +'Clusters of Galaxies',GrpCatalog,'DpdLE3clZClParams',This product contains the configuration parameters for LE3 Z-CL +'Clusters of Galaxies','GrpCatalog,'DpdLE3clGlueMatchParams',This product contains the input parameters for the glue-match pipeline +'Clusters of Galaxies','GrpCatalog,'DpdLE3clMockGlueMatchParams',This product contains the input parameters for the mock glue-match pipeline +'Clusters of Galaxies','GrpCatalog','DpdLE3clGlueMatchParams',This product contains the input parameters for the glue-match pipeline. +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombConfigurationSet',Configuration information for COMB-CL pipelines +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombRedSheProf',Output Reduced shear profiles +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombUCovRedSheProf',Output Uncertainty Covariance matrix of the reduced +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombWLME',Output Weak lensing mass estimates +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombCovMatDeltaSigmaCosmoDep',This output product contains the stacking +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombCovMatReducedShearCosmoDep',This output product contains the stacking covariance matrix of the reduced shear derived with a cosmology dependent binning. +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombCovMatReducedShearCosmoIndep',This output product contains the stacking covariance matrix of the reduced shear derived with a cosmology independent binning. +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombStackingCosmoDep',This output product contains the stacking cosmology dependent binning. +'Clusters of Galaxies','GrpCOMB','DpdLE3clCombStackingCosmoInd',This output product contains the stacking cosmology independent binning. +'Clusters of Galaxies','GrpSEL','DpdLE3clSelRandomParams',This output product contains the configuration parameters for SEL-CL to create the random catalogue +'Clusters of Galaxies','GrpSEL','DpdLE3clSelSelFuncInputParams',This product contains the input parameters for SEL SelFunc +'Clusters of Galaxies','GrpSEL','DpdLE3clSelSinfoniaIniClMockInputParams',This product contains the input parameters for SEL Sinfonia Cluster Mock pipeline +'Clusters of Galaxies','GrpSEL','DpdLE3clSelSinfoniaMockInputParams',This product contains the input parameters for SEL Sinfonia Mock pipeline +'Clusters of Galaxies','GrpSEL','DpdLE3clSelSelFunc',This output product contains the selection function of the galaxy cluster detections +'Clusters of Galaxies','GrpSEL','DpdLE3clSinfoniaEllipticity',This output product contains the file for the ellipticity +'Clusters of Galaxies','GrpSEL','DpdLE3clSelSubSample',Clusters Subsample Output Product +'Clusters of Galaxies','GrpSEL','DpdLE3clRedshiftDistrib',Redshift distribution of detections +'Clusters of Galaxies','GrpSEL','DpdLE3clSelRandom':,Random for the CL clustering codes +'Clusters of Galaxies','GrpSEL','DpdLE3clMatchForSelParams',This product contains the input parameters for the match-for-sel pipeline +'Clusters of Galaxies','GrpSEL','DpdLE3clMockClusters',This output product contains the catalog of mock clusters +'Clusters of Galaxies','GrpClustering','DpdLE3clTwoPointAutoCorrPol',Cluster Clustering Two Point Correlation 2D polar data product +'Clusters of Galaxies','GrpClustering','DpdLE3clCovmatTwoPointCov2',Cluster Clustering Covariance Matrix 2PCF 2D polar data product +'Clusters of Galaxies','GrpClustering','DpolDpdLE3clCovmatPKCov1', +'Clusters of Galaxies','GrpClustering','DDpdLE3clPkDOA', +'Clusters of Galaxies','GrpClustering','DpdLE3clPkYam',Cluster Clustering Power Spectrum Yamamoto data product +'Clusters of Galaxies','GrpLMF','DpdLE3clLMFParams',This product contains the configuration parameters for LE3 LMF-CL +'Clusters of Galaxies','GrpLMF','DpdLE3clLMFOutput',This product contains the output for LE3_CL LMF PF +'Clusters of Galaxies','GrpTiling','DpdLE3clCLTile',This product contains the information describing a CL tile +'Clusters of Galaxies','GrpTiling','DpdLE3clCommon',Common data product for CL +'Clusters of Galaxies','GrpTiling','DpdLE3clConfigurationSet',Generic configuration information for CL PFs +'PHZ','PHZ','DpdBinMeanRedshift', +'PHZ','PHZ','DpdReferenceSample', +'PHZ','PHZ','DpdTomographicBins', \ No newline at end of file