Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions source/lightcones/halo_lightcones.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,5 @@ details.
Construction <halo_lightcone_construction>
Directory layout <halo_lightcone_layout>
File format <halo_lightcone_format>

.. note:: If you wish to use the halo lightcones in conjunction with the interated maps, you need to ensure you :ref:`apply the same rotations<map_rotations>`
2 changes: 2 additions & 0 deletions source/lightcones/integrated_lightcones.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ Integrated lightcones
This page describes the integrated lightcone HEALPix maps that have
been produced in the analyses of the simulations.

.. _map_rotations:

Rotations
---------

Expand Down
28 changes: 14 additions & 14 deletions source/soap/soap_matching.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,33 +17,33 @@ The output is a HDF5 file with the following datasets:

There are corresponding datasets with 1 and 2 reversed (e.g. ``MatchIndex2to1``) with information about matching in the opposite direction.

TODO: Add a link to the matching files?
TODO: Test this script works once the matching files are available

Matching example
----------------

.. code-block:: python

import h5py
import hdfstream
import matplotlib.pyplot as plt
import numpy as np
import swiftsimio as sw

# Connect to the hdfstream service and open the root directory
root_dir = hdfstream.open("cosma", "/")

# Simulations to match between
sim1 = "L1000N1800/DMO_FIDUCIAL"
sim2 = "L1000N1800/HYDRO_FIDUCIAL"
sim1 = "L1_m9_DMO"
sim2 = "L1_m9"
snap_nr = 77

# Load SOAP catalogues
base_dir = "/cosma8/data/dp004/flamingo/Runs/"
soap1 = sw.load(f"{base_dir}/{sim1}/SOAP-HBT/halo_properties_{snap_nr:04}.hdf5")
soap2 = sw.load(f"{base_dir}/{sim2}/SOAP-HBT/halo_properties_{snap_nr:04}.hdf5")
soap1 = sw.load(root_dir[f"FLAMINGO/L1_m9/{sim1}/SOAP-HBT/halo_properties_{snap_nr:04}.hdf5"])
soap2 = sw.load(root_dir[f"FLAMINGO/L1_m9/{sim2}/SOAP-HBT/halo_properties_{snap_nr:04}.hdf5"])

# Load matching file
match_dir = "/cosma8/data/dp004/dc-mcgi1/FLAMINGO/matching"
match_filename = f"{match_dir}/match_{sim1.replace('/', '_')}_{sim2.replace('/', '_')}_{snap_nr:04}.hdf5"

with h5py.File(match_filename, "r") as file:
match_filename = f"FLAMINGO/L1_m9/{sim2}/SOAP-HBT/match_{sim1}_{sim2}_{snap_nr:04}.hdf5"
with hdfstream.open('cosma', match_filename) as file:
match_index = file["MatchIndex1to2"][:]
consistent = file["Consistent1to2"][:] == 1

Expand All @@ -65,10 +65,10 @@ Matching example
ax.set_yscale("log")
ax.set_xlabel(f"M200c in {sim1} [$M_\\odot$]")
ax.set_ylabel(f"M200c in {sim2} [$M_\\odot$]")

cbar = fig.colorbar(h[3], ax=ax)
cbar.set_label('N_halo')
plt.savefig(f"compare_mbound_{sim1.replace('/', '_')}.png", dpi=200)

plt.savefig(f"compare_mbound_{sim1}_{sim2}.png", dpi=200)
plt.close()

20 changes: 20 additions & 0 deletions source/support/image_pages/incorrect_dT.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
:orphan:

Compression of scale factors
============================

.. _issues_incorrect_dT_images:

Figure related to :ref:`issues_incorrect_dT`.

The number of particles that will be incorrectly filtered depends on the difference between the :math:`\Delta T_\text{AGN}` value for that run and :math:`\Delta T_\text{AGN}=10^{7.95}\mathrm{K}` from the ``L1_m9`` (see Table 1 of `Schaye et al. (2023)
<https://ui.adsabs.harvard.edu/abs/2023MNRAS.tmp.2384S>`__ for a list of values).

Plot from :math:`z=0` of the ``L1_m9`` showing the Xray luminosity-mass relation where the shaded region indicates a scatter of 2 sigma.

.. image:: ../images/xray_vs_mass_2sigma.png

Plot from :math:`z=0` of the ``L1_m9`` showing the Xray luminosity-mass relation where the shaded region indicates a scatter of 3 sigma.

.. image:: ../images/xray_vs_mass_3sigma.png

15 changes: 15 additions & 0 deletions source/support/image_pages/replicated_bhs.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
:orphan:

Replication of black holes
==========================

.. _issues_reposition_bh_images:

Figures related to :ref:`issues_reposition_bh`.

This figure was generated by looping through the first L1m9 particle lightcone, and identifying any pairs of black holes particles with the same ID which are less than 0.1 comoving Mpc apart. The plot below shows the distribution of the physical distance between the pairs identified.

.. image:: ../images/bh_reposition_dist.png



Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/support/images/bh_reposition_dist.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/support/images/xray_vs_mass_2sigma.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/support/images/xray_vs_mass_3sigma.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions source/support/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,4 @@ The following is a list of data products we expect to add in the near future:
<https://ui.adsabs.harvard.edu/abs/2026arXiv260202484M>`__
* AGN Point Source maps from `McDonald et al. (2026)
<https://ui.adsabs.harvard.edu/abs/2026arXiv260202484M>`__
* SOAP catalogues for the PlanckDCDM12 and PlanckDCDM24 simulations
51 changes: 34 additions & 17 deletions source/support/support_issues.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ observables (Gas and Spectroscopic-like temperatures, ComptonY properties, X-ray
properties) the SOAP catalogues provide versions that exclude particles that were subject to direct AGN heating
in the last 15 Myr and whose temperatures are between
:math:`10^{-1}\Delta T_\text{AGN}` and :math:`10^{0.3}\Delta T_\text{AGN}`, where :math:`\Delta T_\text{AGN}` is the AGN heating temperature
(but see also :ref:`issues_incorrect_dT`).
(but see also :ref:`Incorrect ΔT for filtering recently heated gas<issues_incorrect_dT>`).

Snapshots
---------
Expand Down Expand Up @@ -107,6 +107,7 @@ As described in :ref:`issues_agn_heating`, for a number of properties we filter
heated by AGN feedback. The :math:`\Delta T_\text{AGN}` value from the L1_m9 simulation was used for all SOAP catalogues, rather
than the :math:`\Delta T_\text{AGN}` value from the corresponding run (see Table 1 of `Schaye et al. (2023)
<https://ui.adsabs.harvard.edu/abs/2023MNRAS.tmp.2384S>`__). No filtering was done for gas particles in the Jet runs.
The impact of this on scaling relations :ref:`can be found here<issues_incorrect_dT_images>`.

.. _issues_unsoftened_spin:

Expand Down Expand Up @@ -186,22 +187,35 @@ Unweighted neutrino masses were used to generate the maps, which means the maps
Incorrect search radius for smoothing particles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The search radius for smoothing particles when adding values to the map was too small by a factor of approximately 1.8. Therefore, some particles which should have been smoothed were instead deposited onto a singular pixel. The impact of this bug for cross correlations was examined
in appendix A of `McDonald et al. (2026)
<https://ui.adsabs.harvard.edu/abs/2026arXiv260202484M>`__, and found to be negligible.
When constructing the FLAMINGO smoothed maps, a given particle property is either added to a singular pixel
or smoothed over multiple pixels provided its search radius, :math:`\theta_{\mathrm{s}}`, is greater than the radius of a pixel in the map,
as described in Appendix A2 of `Schaye et al. (2023)
<https://ui.adsabs.harvard.edu/abs/2023MNRAS.tmp.2384S>`__. The search radius is proportional to the particle's sph smoothing length, :math:`h`,
when projected onto the sky, :math:`\theta_{\mathrm{s}} \propto \arctan(h/r)`, where :math:`r` is the co-moving distance from the observer to the particle.
The on-the-fly HEALPix maps erroneously used a search radius that was to small by a factor of :math:`\approx 1.9` when determining if a particle should be
smoothed onto the map. Hence, particles with an angular smoothing length 1-1.9 times the pixel radii were not smoothed and instead only updated a
singular pixel. Particles with a larger or smaller angular smoothing length were treated correctly.
Furthermore, this bug only affected whether a particle should be smoothed; it had no impact on identifying pixels within
the search radius to update or on the actual smoothing of the particle's value across the smoothing kernel. `McDonald et al. (2026)
<https://ui.adsabs.harvard.edu/abs/2026arXiv260202484M>`__ finds that this bug has a negligible effect on cross-correlations computed with the smoothed X-ray maps.

.. All maps except xray, also xray maps above z=0.5 for L1 runs, xray maps for all cosmology runs

.. _issues_bright_pixels:

Extra bright X-ray pixels
~~~~~~~~~~~~~~~~~~~~~~~~~
Unusually bright X-ray pixels
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

A very small number of pixels (3 in total) in the on-the-fly healpix lightcones are unusually bright
(2 orders of magnitude greater) compared to all other pixels within that same lightcone (i.e. across all shells for all redshifts).
These pixels could not be reproduced from the particle lightcones.
Each of these unusually bright pixels has been overwritten with the mean value of the neighbouring pixels

A number of the X-ray photon count maps contain individual pixels which are extremely bright.
These pixels are 1-2 orders of magnitude brighter than the next brightest pixels, and should be smoothed over (which can be done using ``healpy``).
The cause of these bright pixels is unknown.
Affected maps:

.. Some of the maps, such as those for the PLANCK and fiducial models have an extremely X-ray bright pixel that cannot be reproduced from the particle data.
* L1000N1800/HYDRO_PLANCK: lightcone1, shell 1, XrayROSATIntrinsicPhotons
* L2800N5040/HYDRO_FIDUCIAL: lightcone2, shell 1, XrayROSATIntrinsicPhotons
* L2800N5040/HYDRO_FIDUCIAL: lightcone7, shell 4, XrayROSATIntrinsicPhotons

.. _issues_xray_uvb:

Expand All @@ -222,20 +236,23 @@ Particle lightcones
Replication of black holes
~~~~~~~~~~~~~~~~~~~~~~~~~~

The repositioning of a black hole particle can cause it to cross into/out-of the
lightcone. When this happens, the same black hole can appear in the lightcone outputs multiple times in quick succession.
The repositioning of a black hole particle can cause it to cross into the lightcone.
When this happens, the same black hole can appear in the lightcone outputs multiple times in quick succession.
Similarly repositioning a black hole out of the lightcone can cause it to be to be missing.
Note that it is expected that individual particles appear in the lightcone multiple times due to box replication,
but they should not do so in very close succession. This affects the lightcones for all runs.
but they should not do so in very close succession. This affects the lightcones for all runs, but the effect
is negligible (it occurs approximately once for every ten thousand times a black hole appears in the lightcone).
A figure showing the distribution of the distance between replicated particles :ref:`can be found here<issues_reposition_bh_images>`.

.. _issues_compression:

Compression of scale factors
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

A ``Bfloat16`` :ref:`lossy compression filter<faq_compression>` was applied to the dataset ``PartType0/LastAGNFeedbackScaleFactors``
in the particle lightcones. The reduced precision means it is not possible to reliably determine whether a particle was heated by an AGN within the last 15 Myr.
A discussion of this effect, and an alternative density cut which can be made instead, will be included in the version of `McDonald et al. (2026)
<https://ui.adsabs.harvard.edu/abs/2026arXiv260202484M>`__ that incorporates the referee’s comments.
in the particle lightcones.
The reduced precision means it is not possible to reliably determine whether a particle was heated by an AGN within the last 15 Myr (as discussed in :ref:`issues_agn_heating`).
A figure which gives a full description of this issue :ref:`can be found here<issues_compression_images>`.
A alternative cut is to apply a time limit of 70 Myr, a density cut of :math:`\rho_{\mathrm{gas}}~ > 10^{-26} \mathrm{g~cm}^{-3}`, and the standard temperature constraint (:math:`10^{-1} \Delta T_{\mathrm{AGN}} < T/\mathrm{K} < 10^{0.3} \Delta T_{\mathrm{AGN}}`).

Figures showing the fraction of haloes which are affected at redshift :math:`z=0` :ref:`can be found here<issues_compression_images>`.