Data Download

Catalog Source

The default workflow expects the Euclid FS2 PHZ parquet file at:

Data/Euclid FS2 LC galaxy catalog_phz1.parquet

The data used by the default configuration was queried from CosmoHub catalog 353:

https://cosmohub.pic.es/catalogs/353

Data/ is local runtime state and is ignored by git. Keep large parquet files, SSP templates, downloaded DSPS assets, and local data manifests there.

CosmoHub SQL Query

Run the repository SQL in CosmoHub and export the result as parquet. The query aliases catalog columns to the names consumed by the configs and includes continuum fluxes, rest-frame fluxes, survey-like fluxes, flux errors, and noisy realizations for LSST ugrizy plus Euclid VIS/Y/J/H:

SELECT
  -- coordinates
  `ra_gal`,
  `dec_gal`,
  `ra_mag_gal`,
  `dec_mag_gal`,

  -- redshift labels
  `true_redshift_halo` AS `z_true`,
  `phz_mode_1` AS `z_phz`,
  `true_redshift_gal` AS `z_true_gal`,
  `observed_redshift_gal` AS `z_obs_gal`,
  `redshift_step`,
  `zp` AS `z_deepz`,
  `phz_flags`,
  `phz_median`,
  `phz_min_70`,
  `phz_max_70`,
  `phz_min_90`,
  `phz_max_90`,
  `phz_min_95`,
  `phz_max_95`,
  `phz_mode_1_area`,
  `phz_mode_2`,
  `phz_mode_2_area`,

  -- COSMOS SED latent templates
  `sed_cosmos_1`,
  `sed_cosmos_2`,
  `frac_cosmos_1`,
  `frac_cosmos_2`,
  `color_kind`,

  -- Euclid VIS
  `euclid_vis`,
  `euclid_vis_abs`,
  `euclid_vis_el_model3_ext`,
  `euclid_vis_el_model3_ext_odonnell_ext`,
  `euclid_vis_el_model3_ext_odonnell_ext_error`,
  `euclid_vis_el_model3_ext_odonnell_ext_error_realization`,

  -- Euclid NISP-Y
  `euclid_nisp_y`,
  `euclid_nisp_y_abs`,
  `euclid_nisp_y_el_model3_ext`,
  `euclid_nisp_y_el_model3_ext_odonnell_ext`,
  `euclid_nisp_y_el_model3_ext_odonnell_ext_error`,
  `euclid_nisp_y_el_model3_ext_odonnell_ext_error_realization`,

  -- Euclid NISP-J
  `euclid_nisp_j`,
  `euclid_nisp_j_abs`,
  `euclid_nisp_j_el_model3_ext`,
  `euclid_nisp_j_el_model3_ext_odonnell_ext`,
  `euclid_nisp_j_el_model3_ext_odonnell_ext_error`,
  `euclid_nisp_j_el_model3_ext_odonnell_ext_error_realization`,

  -- Euclid NISP-H
  `euclid_nisp_h`,
  `euclid_nisp_h_abs`,
  `euclid_nisp_h_el_model3_ext`,
  `euclid_nisp_h_el_model3_ext_odonnell_ext`,
  `euclid_nisp_h_el_model3_ext_odonnell_ext_error`,
  `euclid_nisp_h_el_model3_ext_odonnell_ext_error_realization`,

  -- LSST u
  `lsst_u`,
  `lsst_u_abs`,
  `lsst_u_el_model3_ext`,
  `lsst_u_el_model3_ext_odonnell_ext`,
  `lsst_u_el_model3_ext_odonnell_ext_error`,
  `lsst_u_el_model3_ext_odonnell_ext_error_realization`,

  -- LSST g
  `lsst_g`,
  `lsst_g_abs`,
  `lsst_g_el_model3_ext`,
  `lsst_g_el_model3_ext_odonnell_ext`,
  `lsst_g_el_model3_ext_odonnell_ext_error`,
  `lsst_g_el_model3_ext_odonnell_ext_error_realization`,

  -- LSST r
  `lsst_r`,
  `lsst_r_abs`,
  `lsst_r_el_model3_ext`,
  `lsst_r_el_model3_ext_odonnell_ext`,
  `lsst_r_el_model3_ext_odonnell_ext_error`,
  `lsst_r_el_model3_ext_odonnell_ext_error_realization`,

  -- LSST i
  `lsst_i`,
  `lsst_i_abs`,
  `lsst_i_el_model3_ext`,
  `lsst_i_el_model3_ext_odonnell_ext`,
  `lsst_i_el_model3_ext_odonnell_ext_error`,
  `lsst_i_el_model3_ext_odonnell_ext_error_realization`,

  -- LSST z
  `lsst_z`,
  `lsst_z_abs`,
  `lsst_z_el_model3_ext`,
  `lsst_z_el_model3_ext_odonnell_ext`,
  `lsst_z_el_model3_ext_odonnell_ext_error`,
  `lsst_z_el_model3_ext_odonnell_ext_error_realization`,

  -- LSST y
  `lsst_y`,
  `lsst_y_abs`,
  `lsst_y_el_model3_ext`,
  `lsst_y_el_model3_ext_odonnell_ext`,
  `lsst_y_el_model3_ext_odonnell_ext_error`,
  `lsst_y_el_model3_ext_odonnell_ext_error_realization`,

  -- physical truth labels
  `log_stellar_mass`,
  `log_ml_r01`,
  `abs_mag_r01`,
  `log_luminosity_r01`,
  `abs_mag_uv_unextincted`,
  `metallicity` AS `metallicity_true`,
  `log_sfr` AS `log_sfr_true`,
  POW(10, `log_sfr`) AS `sfr_true`,

  -- COSMOS dust / extinction components
  `ebv_cosmos_1`,
  `ebv_cosmos_2`,
  `ext_curve_cosmos_1`,
  `ext_curve_cosmos_2`,
  `mw_extinction`,

  -- one scalar intrinsic dust target
  CASE
    WHEN `bulge_fraction` IS NOT NULL
      AND `ebv_cosmos_1` IS NOT NULL
      AND `ebv_cosmos_2` IS NOT NULL
    THEN
      `bulge_fraction` * `ebv_cosmos_1`
      + (1.0 - `bulge_fraction`) * `ebv_cosmos_2`

    WHEN `ebv_cosmos_1` IS NOT NULL
      AND `ebv_cosmos_2` IS NULL
    THEN `ebv_cosmos_1`

    WHEN `ebv_cosmos_1` IS NULL
      AND `ebv_cosmos_2` IS NOT NULL
    THEN `ebv_cosmos_2`

    WHEN `ebv_cosmos_1` IS NOT NULL
      AND `ebv_cosmos_2` IS NOT NULL
    THEN 0.5 * (`ebv_cosmos_1` + `ebv_cosmos_2`)

    ELSE NULL
  END AS `dust_ebv_true`,

  -- morphology
  `bulge_fraction`,
  `disk_r50`,
  `bulge_r50`,
  `eps1_gal`,
  `eps2_gal`,
  `disk_ellipticity`,
  `bulge_ellipticity`,
  `bulge_nsersic`,
  `disk_nsersic`,

  -- halo properties
  `lm_halo`,
  `lmbound_halo`,
  `r_halo`,
  `x_halo`,
  `y_halo`,
  `z_halo`,
  `vx_halo`,
  `vy_halo`,
  `vz_halo`,
  `n_sats_halo`,
  `num_p_halo`,
  `conc_vir_halo`,
  `rs_halo`,
  `rvir_halo`

FROM
  euclid_fs2_mock_dr_v1_1_phz

WHERE
  `ra_gal` > 230
  AND `ra_gal` < 232
  AND `dec_gal` > 65
  AND `dec_gal` < 66

  -- required SED info
  AND `sed_cosmos_1` IS NOT NULL
  AND `sed_cosmos_2` IS NOT NULL

  -- required continuum photometry
  AND `euclid_vis` IS NOT NULL
  AND `euclid_nisp_y` IS NOT NULL
  AND `euclid_nisp_j` IS NOT NULL
  AND `euclid_nisp_h` IS NOT NULL
  AND `lsst_u` IS NOT NULL
  AND `lsst_g` IS NOT NULL
  AND `lsst_r` IS NOT NULL
  AND `lsst_i` IS NOT NULL
  AND `lsst_z` IS NOT NULL
  AND `lsst_y` IS NOT NULL

  -- required absolute/rest-frame fluxes
  AND `euclid_vis_abs` IS NOT NULL
  AND `euclid_nisp_y_abs` IS NOT NULL
  AND `euclid_nisp_j_abs` IS NOT NULL
  AND `euclid_nisp_h_abs` IS NOT NULL
  AND `lsst_u_abs` IS NOT NULL
  AND `lsst_g_abs` IS NOT NULL
  AND `lsst_r_abs` IS NOT NULL
  AND `lsst_i_abs` IS NOT NULL
  AND `lsst_z_abs` IS NOT NULL
  AND `lsst_y_abs` IS NOT NULL

  -- required full observed fluxes
  AND `euclid_vis_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `euclid_nisp_y_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `euclid_nisp_j_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `euclid_nisp_h_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `lsst_u_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `lsst_g_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `lsst_r_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `lsst_i_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `lsst_z_el_model3_ext_odonnell_ext` IS NOT NULL
  AND `lsst_y_el_model3_ext_odonnell_ext` IS NOT NULL

  -- required errors / noisy realizations
  AND `euclid_vis_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `euclid_nisp_y_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `euclid_nisp_j_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `euclid_nisp_h_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `lsst_u_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `lsst_g_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `lsst_r_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `lsst_i_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `lsst_z_el_model3_ext_odonnell_ext_error` IS NOT NULL
  AND `lsst_y_el_model3_ext_odonnell_ext_error` IS NOT NULL

  AND `euclid_vis_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `euclid_nisp_y_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `euclid_nisp_j_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `euclid_nisp_h_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `lsst_u_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `lsst_g_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `lsst_r_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `lsst_i_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `lsst_z_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL
  AND `lsst_y_el_model3_ext_odonnell_ext_error_realization` IS NOT NULL

  -- required redshift labels
  AND `phz_mode_1` IS NOT NULL
  AND `true_redshift_halo` IS NOT NULL
  AND `true_redshift_gal` IS NOT NULL
  AND `observed_redshift_gal` IS NOT NULL
  AND `zp` IS NOT NULL
  AND `phz_flags` IS NOT NULL
  AND `phz_median` IS NOT NULL
  AND `phz_min_70` IS NOT NULL
  AND `phz_max_70` IS NOT NULL
  AND `phz_min_90` IS NOT NULL
  AND `phz_max_90` IS NOT NULL
  AND `phz_min_95` IS NOT NULL
  AND `phz_max_95` IS NOT NULL
  AND `phz_mode_1_area` IS NOT NULL

  -- required physical labels
  AND `log_stellar_mass` IS NOT NULL
  AND `log_ml_r01` IS NOT NULL
  AND `metallicity` IS NOT NULL
  AND `log_sfr` IS NOT NULL

  -- required COSMOS dust information
  AND (
    `ebv_cosmos_1` IS NOT NULL
    OR `ebv_cosmos_2` IS NOT NULL
  )

  -- safe morphology range for weighted dust
  AND (
    `bulge_fraction` IS NULL
    OR (
      `bulge_fraction` >= 0.0
      AND `bulge_fraction` <= 1.0
    )
  )

Column Contract

See Catalog Columns for the complete documented subset selected by the SQL query, including source names, aliases, units, and project usage notes.

The default config requires these canonical columns:

Column

Purpose

z_true_gal

Preferred truth redshift for galaxy-level diagnostics.

lsst_ulsst_y, euclid_viseuclid_nisp_h

Continuum photometry interpreted as Fnu in erg/s/cm^2/Hz and used by the active DSPS fit.

*_el_model3_ext_odonnell_ext_error

Per-band flux uncertainties used as the likelihood denominator.

sed_cosmos_1, sed_cosmos_2

COSMOS template IDs in local LePhare COSMOS_MOD.list order.

frac_cosmos_1, frac_cosmos_2

Component fractions for COSMOS proxy SED reconstruction. The current local parquet contains them, so the default reconstruction policy is strict and reports fraction diagnostics.

*_abs

Rest-frame flux density at 10 parsec, used for COSMOS proxy SED diagnostics and normalization checks.

*_el_model3_ext*

Forward-modelled flux target variants for observed-frame diagnostics.

metallicity_true

Gas-phase oxygen abundance truth. Reports convert it to a metallicity proxy with offset: -10.61.

log_stellar_mass

Stellar mass in log10(Msun h^-2). Reports convert it to log10(Msun) using the configured catalog h value.

log_sfr_true

Catalog log SFR truth. Reports compare it with derived log10_sfr_at_obs.

dust_ebv_true

Intrinsic dust color-excess proxy. Reports convert it to A_V with scale: 4.05.

Local DSPS Assets

Download small DSPS smoke-test assets into Data/:

euclid-dsps --config configs/smoke_test.yaml download-assets --out Data

The production FS2 config expects:

Data/ssp_data_fsps_v3.2_lgmet_age.h5

The active 10-band config loads passbands from the repository filters/ directory:

filters/LSST_LSST.u.dat
filters/LSST_LSST.g.dat
filters/LSST_LSST.r.dat
filters/LSST_LSST.i.dat
filters/LSST_LSST.z.dat
filters/LSST_LSST.y.dat
filters/Euclid_VIS.vis.dat
filters/Euclid_NISP.Y.dat
filters/Euclid_NISP.J.dat
filters/Euclid_NISP.H.dat

Optional Rest-Frame Flux Columns

CosmoHub tooltips expose rest-frame flux columns such as lsst_u_abs and euclid_nisp_h_abs with the description “rest-frame flux at 10 parsec”.

When these *_abs columns are present in the parquet row, the SED diagnostic uses them to anchor the rest-frame pseudo-SED directly. If they are absent, the diagnostic falls back to converting observed fluxes to rest-frame luminosity density with the luminosity distance.