# Appendix A: Thermodynamic profiles

<table><caption>**Table A.1.** Set of parameters for the temperature and density profiles of the different thermodynamic models of ICM.</caption><thead><tr><th>Temperature model</th><th><i>T</i><sub>1</sub></th><th><i>T</i><sub>min</sub></th><th><i>r</i><sub>cool</sub></th><th><i>a</i><sub>cool</sub></th><th><i>r</i><sub>t</sub></th><th><i>d</i></th></tr></thead><tbody><tr><td>Ghirardini et al. (2019)</td><td>1.3</td><td>0.29</td><td>0.061</td><td>0.74</td><td>0.40</td><td>0.66</td></tr><tr><td>McCourt et al. (2013)</td><td>0.38</td><td>0.49</td><td>0.47</td><td>3.0</td><td>2.7</td><td>9.5</td></tr><tr><td>Simionescu et al. (2011)</td><td>1.4</td><td>0.00</td><td>0.12</td><td>10</td><td>1.3</td><td>1.7</td></tr><tr><th>Density model</th><th><i>ρ</i><sub>1</sub> (in 10<sup>-27</sup>g/cm<sup>3</sup>)</th><th><i>r</i><sub>c</sub></th><th>α</th><th>β</th><th><i>r</i><sub>s</sub></th><th>ε</th></tr><tr><td>Ghirardini et al. (2019)</td><td>0.020</td><td>0.041</td><td>0.80</td><td>0.49</td><td>1.2</td><td>4.7</td></tr><tr><td>McCourt et al. (2013)</td><td>22</td><td>0.26</td><td>3.4</td><td>0.83</td><td>2.0</td><td>20</td></tr><tr><td>Simionescu et al. (2011)</td><td>7.3</td><td>0.00051</td><td>0</td><td>0.90</td><td>1.4</td><td>11</td></tr></tbody></table>

**Notes.** We enforced $\theta = 3$ in all cases and $\alpha = 0$ in the case of Perseus for convergence purposes (Shi et al. 2016; Dupourqué et al. 2023).

All thermodynamic profiles presented in Section 2 and used to derive the properties of MTI-induced turbulence in Section 3 can be parametrised as (Vikhlinin et al. 2006; Ghirardini et al. 2019):

$$ \frac{T(x)}{T_{500}} = T_1 \frac{\frac{T_{\min}}{T_1} + \left(\frac{x}{r_{\text{cool}}}\right)^{a_{\text{cool}}}}{1 + \left(\frac{x}{r_{\text{cool}}}\right)^{a_{\text{cool}}}} \frac{1}{\left(1 + \left(\frac{x}{r_t}\right)^2\right)^{\frac{d}{2}}}, \quad (A.1) $$

$$ \rho(x) = \rho_1 \frac{\left(\frac{x}{r_c}\right)^{-\frac{\alpha}{2}}}{\left(1 + \frac{x^2}{r_c^2}\right)^{\frac{3\beta}{2} - \frac{\alpha}{4}}} \frac{1}{\left(1 + \frac{x^\theta}{r_s^\theta}\right)^{\frac{\epsilon}{2\beta}}}, \quad (A.2) $$

with $x = r/R_{500}$, $T_{500} = 5$ keV and where we simply set $R_{500}=1.1$ Mpc for all clusters. All the other quantities are parameters to fit. For the universal thermodynamic profiles from Ghirardini et al. (2019), the best-fit parameter values from that paper for CC clusters are directly used. Fits are performed for Perseus temperature and density profiles (Simionescu et al. 2011), but also for the 1D-spherical accretion model of McCourt et al. (2013) since the data resulting from the numerical integration of this model are not perfectly robust against numerical derivation (which we need to obtain the local scale-height of the different atmospheres). In the case of the density, the fit is not performed on the data but rather on their logarithm, so that the weak tail of the density profiles are well fitted too. The best parameter values are given in Table A.1 for the different profiles. We do not fit the data from the different entropy profiles. Instead, we assume perfect hydrostatic equilibrium to deduce the entropy scale-height from the temperature and density scale-heights:

$$ H_s = \frac{H_\rho H_T}{H_\rho - (\gamma - 1) H_T}. \quad (A.3) $$

# Appendix B: Validation of the Braginskii operators in IDEFIX

We implemented the parabolic operator for anisotropic heat diffusion Eq. (1) with the centred asymmetric scheme described in Sharma & Hammett (2007, Section 2.1), though without harmonic mean nor slope limiter. The Braginskii viscosity Eq. (2) is implemented in a similar way, again without any slope limiter. The implementation of these operators in IDEFIX is validated thanks to the methodology and setups described in Parrish et al. (2012a, Sections 3,4). The linear growth rates of both MTI and

HBI diagonal modes that we numerically measured are compared with the theoretical values expected from the dispersion relation.

For the MTI setup, the tests are run in 2D ($e_y, e_z$) at either low or high resolution ($64^2$ and $256^2$, respectively the stars and the dots in Fig. B.1) in a square box of size $L = 0.1$. Lengths are normalised by the third of the temperature scale-height, velocities and magnetic fields respectively by the thermal velocity $v_{th,0}$ at the bottom of the atmosphere and by $\sqrt{\rho_0}v_{th,0}$. The atmosphere is initialised according to the hydrostatic equilibrium described by Eqs. (3-5) with $\alpha = 1$ and $H_T=3$. We initially seed both components of the velocity field with a fundamental divergence-free diagonal eigenmode $\propto \exp(\sigma t + i[k_y y + k_z z])$ with an amplitude of $10^{-4}$ and where $k_y = k_z = 2\pi/L$. The kinematic viscosity $\nu$ is based on the thermal diffusivity through the Prandtl number $\text{Pr} = \{0; 0.01; 0.06\}$ (respectively the blue, green and red curves and points in Fig. B.1).

<figure><img src="image_13.png" /><figcaption>**Fig. B.1.** Comparison between the MTI (top) and HBI (bottom) linear growth rates numerically measured and theoretically computed thanks to the dispersion relations. The initial velocity perturbation is a fundamental divergence-free diagonal mode ($k_y = k_z = 2\pi/L$) with amplitude $10^{-4}$. Different colour tones are for the different Prandtl numbers. Runs with resolution $64^2$ and $256^2$ are represented by stars and dots.</figcaption></figure>
The runs are initialised with a purely horizontal magnetic field $B_{y,0} = 10^{-5}$. In this configuration, the dispersion relation is:

$$ \sigma \left( \sigma + \frac{2}{5} \chi k_y^2 \right) \left[ \sigma + 3 \nu k_y^2 \left( 1 - \frac{k_y^2}{k^2} \right) \right] + \sigma N^2 \frac{k_y^2}{k^2} + \frac{2}{5} \chi \omega_T^2 k_y^2 \frac{k_y^2}{k^2} = 0. $$

Regarding the HBI setup, the runs are performed in a box with $L = 0.2$, $H_T = 2$ and with the same hydrostatic equilibria as Parrish et al. (2012a) in the corresponding local HBI runs (Section 4.1 in that paper). The magnetic field is initialised vertically with $B_{z,0} = 10^{-5}$ while the initial velocity field is the same as in the MTI runs. The dispersion relation is then:

$$ \sigma \left( \sigma + \frac{2}{5} \chi k_z^2 \right) \left[ \sigma + 3 \nu k_z^2 \left( 1 - \frac{k_z^2}{k^2} \right) \right] + \sigma N^2 \frac{k_z^2}{k^2} - \frac{2}{5} \chi \omega_T^2 k_z^2 \frac{k_z^2}{k^2} = 0. $$

We successfully tried other 2D configurations with higher-order harmonic modes as well as 3D setups with the gravity set artificially along the $e_x$- or $e_y$-axis to check that the operators are correctly implemented in all directions.

## Appendix C: Building X-IFU mock observations

In this Appendix, we compile technical details about the post-processing observational pipeline. The first subsection is specific to our MHD simulation since it describes how to convert its outputs to a $(x, y, z)$-spatial representation of the density, temperature and velocity fields suited to mock observations. The second and third subsections are more generic in the sense that they indicate how to solve the forward and inverse problems, once the spatial representation of the different fields has been built.

### C.1. Designing boxes adapted to synthetic observations

In this section, we elaborate on how to build, from the Braginskii-MHD simulation, a spatial $(x, y, z)$-representation of the density $\rho$, temperature $T$ and velocity $v_{los}$ adapted to a mock observation through the X-IFU with SIXTE. First, the physical box size $L$ is set by matching the numerical injection length in the simulation with the chosen dimensional integral length of MTI-driven turbulence, which is either picked from Eq. (6) for OBSfid or customised for OBScustom. In the same manner, the fluctuation amplitudes from the MHD simulation at $t=100t_0$ are rescaled in such a way that their root-mean square match the requested values, deduced from Section 3, Fig. 5 for OBSfid or again custom-picked for OBScustom.

Next, we extract the fluctuation fields of the rescaled MHD simulation in the parallelepiped rectangle extending over the whole box along the line of sight (i.e. the $e_x$-axis), centred on the centre of the box in the $(e_y, e_z)$ plane and extending over $1.1 \times \text{fov}_{X-IFU}$ at least (about 130 kpc at $\epsilon_0 = 0.0179$) in this plane. In practice, this translates into a parallelepiped rectangle with $256 \times n^2$ cells from the MHD simulation, where $n = [256 \times 1.1 \times \text{fov}_{X-IFU}/L]$ is the number of extracted cells in one direction $e_y$ or $e_z$ of the sky plane. But virtually observing an ICM-like resolved and extended X-ray source with SIXTE requires that the field of view of a single observing pixel contains enough individual source points. For instance, in the work of Roncarelli et al. (2018), one X-IFU pixel encompassed ~8 cells from their simulation. We find that ~4 simulation cells per X-IFU pixel are enough to properly run our observational pipeline. It is possible that the number of cells extracted from the MHD simulation in a single direction of the sky plane is less than ~2 per X-IFU pixel, depending on the dimensional injection length

chosen to set the size of the simulation box. In such cases (in which both OBScustom and OBSfid lie), the extracted fluctuation fields need to be interpolated on a new grid with 128 cells in each direction, so that ~4 cells lie in the field of view of one X-IFU pixel as illustrated in Fig. C.1. This is why the final cells with volume $\ell_x \times \ell_y \times \ell_z$ are no longer cubic but rectangular with $\ell_y = \ell_z < \ell_x$.

For both OBSfid and OBScustom, the length $L$ over which the cells are stacked in the line-of-sight direction (which is the physical length of the simulation box) may be smaller than the length scale over which significant emission takes place at $0.25R_{200}$ in Perseus. We therefore rescale the integrated emissivity in the box in such a way that it matches the expected value from the integration of the squared density over the full line of sight, that is the total plasma emissivity (i.e. the emission measure) at $0.25R_{200}$ in Perseus. This rescaling does not affect the root-mean square of the fluctuations after integration over the full line of sight themselves because the latter is self-consistently computed thanks to the toy-model Eq. (5) in Clerc et al. (2019; dotted lines in Fig. 5), and the amplitude of the fluctuation fields rescaled accordingly.

At this stage, we stress that only the fluctuations of the thermodynamic fields, and not the global (background plus fluctuation) thermodynamic fields, are extracted from the MHD simulation and rescaled. The case of the velocity is different from the case of the thermodynamic fields since there is no bulk motion in the simulation and the field fluctuates around a zero average value. So we still need a proxy for the background temperature and density profiles by which the thermodynamic fluctuations will be weighted before being virtually observed. We chose the following local expression:

$$ X(z) = X_0 \left( 1 - \frac{z}{H_X} \right), \qquad (C.1) $$

with $X=T, \rho$ and where $H_X$ is derived from the Perseus thermodynamic profiles presented in 2.1. With this choice, we are actually neglecting the cluster curvature by assuming a purely vertical dependency of the thermodynamic background profiles. With this hypothesis, the error made on the background temperature and density is less than 1% when looking at $0.25R_{200}$ of a cluster at Perseus redshift. However this error can grow up to 10% for a similar density profile at $\epsilon_0 \ge 0.08$. At higher redshift, the methodology later described in Appendix E to isolate the fluctuations from the global fields can no longer be used as such, and should be modified to account for the cluster curvature.

### C.2. Forward problem

The purpose of the observation simulator SIXTE is essentially to create a photon list from a catalogue of point sources in the sky, according to the specifications of the instrument chosen for the virtual observation. A straightforward way to simulate the mock observation of an extended and resolved astrophysical source is to regard it as a collection of independent point sources More specifically, the initial spatial $(x, y, z)$-representation of the density, temperature and velocity fields need to be converted to a hybrid $(y, z, E)$-representation of the ideal spectra as a function of the sky position $(y, z)$, and where the energy variable $E$ ranges uniformly from 0.2 to 12 keV, covering the X-IFU energy range with a 1-eV resolution. Each cell of this spatial representation is given a set of coordinates on the sky plane $(e_y, e_z)$ according to the position of its centre in the mock cluster (there are 128 cells stacked in the line-of-sight direction $e_x$, all with the
The runs are initialised with a purely horizontal magnetic field $B_{y,0} = 10^{-5}$. In this configuration, the dispersion relation is:

$$ \sigma \left( \sigma + \frac{2}{5} \chi k_y^2 \right) \left[ \sigma + 3 \nu k_y^2 \left( 1 - \frac{k_y^2}{k^2} \right) \right] + \sigma N^2 \frac{k_y^2}{k^2} + \frac{2}{5} \chi \omega_T^2 k_y^2 \frac{k_y^2}{k^2} = 0. $$

Regarding the HBI setup, the runs are performed in a box with $L = 0.2$, $H_T = 2$ and with the same hydrostatic equilibria as Parrish et al. (2012a) in the corresponding local HBI runs (Section 4.1 in that paper). The magnetic field is initialised vertically with $B_{z,0} = 10^{-5}$ while the initial velocity field is the same as in the MTI runs. The dispersion relation is then:

$$ \sigma \left( \sigma + \frac{2}{5} \chi k_z^2 \right) \left[ \sigma + 3 \nu k_z^2 \left( 1 - \frac{k_z^2}{k^2} \right) \right] + \sigma N^2 \frac{k_z^2}{k^2} - \frac{2}{5} \chi \omega_T^2 k_z^2 \frac{k_z^2}{k^2} = 0. $$

We successfully tried other 2D configurations with higher-order harmonic modes as well as 3D setups with the gravity set artificially along the $e_x$- or $e_y$-axis to check that the operators are correctly implemented in all directions.

## Appendix C: Building X-IFU mock observations

In this Appendix, we compile technical details about the post-processing observational pipeline. The first subsection is specific to our MHD simulation since it describes how to convert its outputs to a $(x, y, z)$-spatial representation of the density, temperature and velocity fields suited to mock observations. The second and third subsections are more generic in the sense that they indicate how to solve the forward and inverse problems, once the spatial representation of the different fields has been built.

### C.1. Designing boxes adapted to synthetic observations

In this section, we elaborate on how to build, from the Braginskii-MHD simulation, a spatial $(x, y, z)$-representation of the density $\rho$, temperature $T$ and velocity $v_{los}$ adapted to a mock observation through the X-IFU with SIXTE. First, the physical box size $L$ is set by matching the numerical injection length in the simulation with the chosen dimensional integral length of MTI-driven turbulence, which is either picked from Eq. (6) for OBSfid or customised for OBScustom. In the same manner, the fluctuation amplitudes from the MHD simulation at $t=100t_0$ are rescaled in such a way that their root-mean square match the requested values, deduced from Section 3, Fig. 5 for OBSfid or again custom-picked for OBScustom.

Next, we extract the fluctuation fields of the rescaled MHD simulation in the parallelepiped rectangle extending over the whole box along the line of sight (i.e. the $e_x$-axis), centred on the centre of the box in the $(e_y, e_z)$ plane and extending over $1.1 \times \text{fov}_{X-IFU}$ at least (about 130 kpc at $\epsilon_0 = 0.0179$) in this plane. In practice, this translates into a parallelepiped rectangle with $256 \times n^2$ cells from the MHD simulation, where $n = [256 \times 1.1 \times \text{fov}_{X-IFU}/L]$ is the number of extracted cells in one direction $e_y$ or $e_z$ of the sky plane. But virtually observing an ICM-like resolved and extended X-ray source with SIXTE requires that the field of view of a single observing pixel contains enough individual source points. For instance, in the work of Roncarelli et al. (2018), one X-IFU pixel encompassed ~8 cells from their simulation. We find that ~4 simulation cells per X-IFU pixel are enough to properly run our observational pipeline. It is possible that the number of cells extracted from the MHD simulation in a single direction of the sky plane is less than ~2 per X-IFU pixel, depending on the dimensional injection length

chosen to set the size of the simulation box. In such cases (in which both OBScustom and OBSfid lie), the extracted fluctuation fields need to be interpolated on a new grid with 128 cells in each direction, so that ~4 cells lie in the field of view of one X-IFU pixel as illustrated in Fig. C.1. This is why the final cells with volume $\ell_x \times \ell_y \times \ell_z$ are no longer cubic but rectangular with $\ell_y = \ell_z < \ell_x$.

For both OBSfid and OBScustom, the length $L$ over which the cells are stacked in the line-of-sight direction (which is the physical length of the simulation box) may be smaller than the length scale over which significant emission takes place at $0.25R_{200}$ in Perseus. We therefore rescale the integrated emissivity in the box in such a way that it matches the expected value from the integration of the squared density over the full line of sight, that is the total plasma emissivity (i.e. the emission measure) at $0.25R_{200}$ in Perseus. This rescaling does not affect the root-mean square of the fluctuations after integration over the full line of sight themselves because the latter is self-consistently computed thanks to the toy-model Eq. (5) in Clerc et al. (2019; dotted lines in Fig. 5), and the amplitude of the fluctuation fields rescaled accordingly.

At this stage, we stress that only the fluctuations of the thermodynamic fields, and not the global (background plus fluctuation) thermodynamic fields, are extracted from the MHD simulation and rescaled. The case of the velocity is different from the case of the thermodynamic fields since there is no bulk motion in the simulation and the field fluctuates around a zero average value. So we still need a proxy for the background temperature and density profiles by which the thermodynamic fluctuations will be weighted before being virtually observed. We chose the following local expression:

$$ X(z) = X_0 \left( 1 - \frac{z}{H_X} \right), \qquad (C.1) $$

with $X=T, \rho$ and where $H_X$ is derived from the Perseus thermodynamic profiles presented in 2.1. With this choice, we are actually neglecting the cluster curvature by assuming a purely vertical dependency of the thermodynamic background profiles. With this hypothesis, the error made on the background temperature and density is less than 1% when looking at $0.25R_{200}$ of a cluster at Perseus redshift. However this error can grow up to 10% for a similar density profile at $\epsilon_0 \ge 0.08$. At higher redshift, the methodology later described in Appendix E to isolate the fluctuations from the global fields can no longer be used as such, and should be modified to account for the cluster curvature.

### C.2. Forward problem

The purpose of the observation simulator SIXTE is essentially to create a photon list from a catalogue of point sources in the sky, according to the specifications of the instrument chosen for the virtual observation. A straightforward way to simulate the mock observation of an extended and resolved astrophysical source is to regard it as a collection of independent point sources More specifically, the initial spatial $(x, y, z)$-representation of the density, temperature and velocity fields need to be converted to a hybrid $(y, z, E)$-representation of the ideal spectra as a function of the sky position $(y, z)$, and where the energy variable $E$ ranges uniformly from 0.2 to 12 keV, covering the X-IFU energy range with a 1-eV resolution. Each cell of this spatial representation is given a set of coordinates on the sky plane $(e_y, e_z)$ according to the position of its centre in the mock cluster (there are 128 cells stacked in the line-of-sight direction $e_x$, all with the
<figure><img src="image_13.png" /><figcaption>**Fig. C.1.** Schematic of the different grids used in the observational pipeline. The relative sizes of the grids are consistent with respect to each other: there is almost one cell from the MHD simulation grid (full grey lines, left), after rescaling of the box as in OBScustom, in a X-IFU pixel (black dashed lines, left) and there are ~4 cells of the finer grid (light blue lines, right), refined from the MHD simulation grid within the dotted red square and used for the synthetic observation, in a pixel of X-IFU. For the sake of clarity, the absolute sizes of the grids are however not to scale. For instance, there should be 3168 pixels in X-IFU’s hexagon (in our baseline instrumental configuration) instead of ~30 on the schema, in which X-IFU border pixels are not squared whereas they should be as well in reality.</figcaption></figure>

same sky coordinates). Its X-ray line and Bremsstrahlung emission is modelled thanks to the APEC emission spectrum for collisionally-ionised diffuse gas (Smith et al. 2001). After summing the spectra along the line of sight $e_x$, we recover a hybrid $(y, z, E)$ representation by placing each integrated spectrum at its corresponding sky position. This catalogue of point sources is the input to the SIXTE simulator, which eventually leads to a mock observation of the ICM. In this process, the important instrumental and geometrical effects taken into account are the PSF, the response function, the detector geometry and its pixel filling-factor (~97%). Cross-talk and pile-up effects are simulated as well but marginal in our case, hence not accounted for in the post-processing step. More details about the SIXTE software and the response matrices of our baseline instrumental X-IFU configuration can respectively be found in Dauser et al. (2019)<fnref n="3" /> and in Barret et al. (2016)<fnref n="4" />. Our setup does not simulate the vignetting. Therefore, the same response function can be used for all group of pixels in the post-processing step regardless of their off-axis position.

The APEC model takes the metal abundance Z, the electron temperature $k_B T$, the redshift $z$ and the norm N as parameters. While the temperature is a direct output of the MHD simulation, the chemical abundance is not self-consistently computed and we simply assume a uniform metal abundance $Z = 0.3Z_⊙$ for the modelling of the spectra, with $Z_⊙$ the solar value measured by Anders & Grevesse (1989). The line-of-sight velocity field $v_{los} = v_x$ is encoded in the redshift according to:

$$z = (1 + z_0) \sqrt{\frac{1 + \frac{v_x}{c}}{1 - \frac{v_x}{c}}} - 1, \qquad (C.2)$$

with c the speed of light in vacuum. The norm is expressed as:

$$N = 10^{-14} \frac{n_e n_H V}{4 \pi d_c^2(z)}, \qquad (C.3)$$

where $n_e$ and $n_H$, the electron and hydrogen number densities, are deduced from the density given the primordial abundances considered, $d_c(z)$ is the comoving distance and $V = l_x l_y l_z$.

### C.3. Inverse problem

Solving the inverse problem is to reverse-engineer the virtual observation in order to recover the thermodynamic and velocity fields. We recall that, for each observation, we divide the X-IFU grid into ~340 Voronoi regions, from which a spectrum is extracted. These spectra are then fitted with the APEC model using the X-ray fitting package XSPEC. The spectral fit is done by minimising the Cash statistic (Cash 1979) and without any a priori knowledge of the fitting parameters but the cluster cosmological redshift $z_0$. Since no vignetting effect is simulated in the forward problem, the same Ancillary Response File (ARF) is used for all Voronoi regions irrespective of their positions. At this step, the pixel filling-factor from the X-IFU must be taken into account in the ARF used for the fit in XSPEC, meaning that the response of all energy channels are 97% of the response from the ARF used by SIXTE to generate the mock observation.

## Appendix D: Quantitative analysis of bias and dispersion

The bias and standard deviation of the output fields coming from solving the inverse problem can be quantified, with respect to their input counterparts from the rescaled MHD simulation, by:

$$b_X = \langle (X_{\text{obs}} - X_{\text{sim}}) / X_{\text{sim}} \rangle, \qquad (D.1)$$

$$\sigma_X^2 = \langle (X_{\text{obs}} - X_{\text{sim}})^2 / X_{\text{sim}}^2 \rangle, \qquad (D.2)$$

where X is either the emission measure EM or the spectroscopic temperature $T_s$. In the case of the emission-weighted velocity $v_{ew}$, the bias and dispersion are rather defined according to:

$$b_{v_{ew}} = \langle (v_{ew,\text{obs}} - v_{ew,\text{sim}}) \rangle, \qquad (D.3)$$

<footnote n="3">³ https://www.sternwarte.uni-erlangen.de/sixte/</footnote>

<footnote n="4">⁴ http://x-ifu.irap.omp.eu/resources/for-the-community</footnote>
<figure><img src="image_14.png" /><figcaption>**Fig. C.1.** Schematic of the different grids used in the observational pipeline. The relative sizes of the grids are consistent with respect to each other: there is almost one cell from the MHD simulation grid (full grey lines, left), after rescaling of the box as in OBScustom, in a X-IFU pixel (black dashed lines, left) and there are ~4 cells of the finer grid (light blue lines, right), refined from the MHD simulation grid within the dotted red square and used for the synthetic observation, in a pixel of X-IFU. For the sake of clarity, the absolute sizes of the grids are however not to scale. For instance, there should be 3168 pixels in X-IFU’s hexagon (in our baseline instrumental configuration) instead of ~30 on the schema, in which X-IFU border pixels are not squared whereas they should be as well in reality.</figcaption></figure>

same sky coordinates). Its X-ray line and Bremsstrahlung emission is modelled thanks to the APEC emission spectrum for collisionally-ionised diffuse gas (Smith et al. 2001). After summing the spectra along the line of sight $e_x$, we recover a hybrid $(y, z, E)$ representation by placing each integrated spectrum at its corresponding sky position. This catalogue of point sources is the input to the SIXTE simulator, which eventually leads to a mock observation of the ICM. In this process, the important instrumental and geometrical effects taken into account are the PSF, the response function, the detector geometry and its pixel filling-factor (~97%). Cross-talk and pile-up effects are simulated as well but marginal in our case, hence not accounted for in the post-processing step. More details about the SIXTE software and the response matrices of our baseline instrumental X-IFU configuration can respectively be found in Dauser et al. (2019)<fnref n="3" /> and in Barret et al. (2016)<fnref n="4" />. Our setup does not simulate the vignetting. Therefore, the same response function can be used for all group of pixels in the post-processing step regardless of their off-axis position.

The APEC model takes the metal abundance Z, the electron temperature $k_B T$, the redshift $z$ and the norm $N$ as parameters. While the temperature is a direct output of the MHD simulation, the chemical abundance is not self-consistently computed and we simply assume a uniform metal abundance $Z = 0.3Z_⊙$ for the modelling of the spectra, with $Z_⊙$ the solar value measured by Anders & Grevesse (1989). The line-of-sight velocity field $v_{los} = v_x$ is encoded in the redshift according to:

$$z = (1 + z_0) \sqrt{\frac{1 + \frac{v_x}{c}}{1 - \frac{v_x}{c}}} - 1, \qquad (C.2)$$

with c the speed of light in vacuum. The norm is expressed as:

$$N = 10^{-14} \frac{n_e n_H V}{4 \pi d_c^2(z)}, \qquad (C.3)$$

where $n_e$ and $n_H$, the electron and hydrogen number densities, are deduced from the density given the primordial abundances considered, $d_c(z)$ is the comoving distance and $V = l_x l_y l_z$.

### C.3. Inverse problem

Solving the inverse problem is to reverse-engineer the virtual observation in order to recover the thermodynamic and velocity fields. We recall that, for each observation, we divide the X-IFU grid into ~340 Voronoi regions, from which a spectrum is extracted. These spectra are then fitted with the APEC model using the X-ray fitting package XSPEC. The spectral fit is done by minimising the Cash statistic (Cash 1979) and without any a priori knowledge of the fitting parameters but the cluster cosmological redshift $z_0$. Since no vignetting effect is simulated in the forward problem, the same Ancillary Response File (ARF) is used for all Voronoi regions irrespective of their positions. At this step, the pixel filling-factor from the X-IFU must be taken into account in the ARF used for the fit in XSPEC, meaning that the response of all energy channels are 97% of the response from the ARF used by SIXTE to generate the mock observation.

## Appendix D: Quantitative analysis of bias and dispersion

The bias and standard deviation of the output fields coming from solving the inverse problem can be quantified, with respect to their input counterparts from the rescaled MHD simulation, by:

$$b_X = \langle (X_{\text{obs}} - X_{\text{sim}}) / X_{\text{sim}} \rangle, \qquad (\text{D.1})$$

$$\sigma_X^2 = \langle (X_{\text{obs}} - X_{\text{sim}})^2 / X_{\text{sim}}^2 \rangle, \qquad (\text{D.2})$$

where X is either the emission measure EM or the spectroscopic temperature $T_s$. In the case of the emission-weighted velocity $v_{ew}$, the bias and dispersion are rather defined according to:

$$b_{v_{ew}} = \langle (v_{ew,\text{obs}} - v_{ew,\text{sim}}) \rangle, \qquad (\text{D.3})$$

<footnote n="3">³ https://www.sternwarte.uni-erlangen.de/sixte/</footnote>

<footnote n="4">⁴ http://x-ifu.irap.omp.eu/resources/for-the-community</footnote>
<table><caption>**Table D.1.** Bias and dispersion of the output fields recovered from virtual observations with respect to their input counterparts from the rescaled MHD simulation.</caption><thead><tr><th>Observation</th><th>t<sub>exp</sub> (Ms)</th><th>N<sub>ph</sub> × 10<sup>6</sup></th><th>b<sub>EM</sub> (%)</th><th>b<sub>T<sub>s</sub></sub> (%)</th><th>b<sub>v<sub>ew</sub></sub> (km/s)</th><th>σ<sub>EM</sub> (%)</th><th>σ<sub>T<sub>s</sub></sub> (%)</th><th>σ<sub>v<sub>ew</sub></sub> (km/s)</th></tr></thead><tbody><tr><td>OBSfid</td><td>2</td><td>14.2</td><td>-1.25</td><td>-0.19</td><td>-2.15</td><td>2.32</td><td>1.64</td><td>19.2</td></tr><tr><td>OBScustom</td><td>2</td><td>14.9</td><td>-1.39</td><td>-0.57</td><td>-12.0</td><td>2.65</td><td>2.67</td><td>49.0</td></tr></tbody></table>

**Notes.** Column 1: name of virtual observation. Column 2: exposure time. Column 3: total number of photons obtained. Column 4-6 (7-9): average bias (dispersion) of the emission measure, spectroscopic temperature and emission-weighted velocity fields respectively. The values of the thermodynamic biases and dispersions are given in percents of their respective input quantities.

$$ \sigma_{v_{ew}}^2 = \langle (v_{ew,obs} - v_{ew,sim})^2 \rangle. \qquad (D.4) $$

<·> is the spatial average running over all the Voronoi regions. The subscripts obs and sim respectively stand for the observed and true input quantities. All these quantities are tabulated in Table D.1 for the different synthetic observations. We do not necessarily seek to compare the quality of the reconstructed fields between the two different observations since they use different input physical fields anyway. We are rather aiming at validating the post-processing pipeline by checking that there is no significant bias or dispersion of the reconstructed fields with respect to the input quantities, independently for each observation. We are also looking for a quantitative criterion on the input fluctuation fields to predict whether they will be visually well recovered (as in OBScustom, Fig. 10) or not (as in OBSfid, Fig. 9) with a X-IFU observation.

The first row in Table D.1 shows the biases and standard deviations of the reconstructed fields with respect to the input quantities in the case of OBSfid: both the thermodynamic and velocity fields are very well reconstructed with no significant biases and acceptable dispersions. More quantitatively, we find dispersions $\sigma_{T_s} \sim 2\%$, $\sigma_{v_{ew}} \sim 20$ km/s for the observed temperature and velocity field. This proves the robustness of our observational post-processing chain. Yet the fluctuation fields reconstructed from this synthetic observation are not necessarily visually satisfactorily retrieved, as seen in Fig. 9. The root-mean square of the input temperature fluctuation and velocity fields after integration along the line of sight $\delta T_s|_{rms} \sim 0.5\%$, $v_{ew}|_{rms} \sim 10$km/s are smaller than the respective standard deviations $\sigma_{T_s} \sim 2\%$, $\sigma_{v_{ew}} \sim 20$ km/s of the reconstructed temperature and velocity fields with respect to the input quantities. We deduce that having $\delta X|_{rms} \ge \sigma_X$, with $X = EM, T_s$ or $v_{ew}|_{rms} \ge \sigma_{v_{ew}}$ are necessary (albeit maybe not sufficient) conditions to satisfactorily detect the fluctuation fields from a synthetic observation. In this case, $\sigma_X$ can therefore be seen as a detectability threshold due to the inherent noise associated with a X-IFU observation: the fluctuation fields will be detected (i.e. visually well recovered) if their intensities exceed the noise level associated with the observation. This is why, in the phenomenological discussion of Section 3, Fig. 5, we used $\sigma_{T_s} \sim 2\%$ and $\sigma_{v_{ew}} \sim 20$ km/s as the typical X-IFU detectability limits for a 2-Ms observation of the Perseus cluster at $0.25R_{200}$. The case of the emission measure needs more caution because this extensive physical quantity is proportional to the squared density: when the root-mean square of the emission-measure and spectroscopic temperature fluctuations are small enough, they relate according to $\delta EM|_{rms} \sim 2 \delta T_s|_{rms}$. In the case of the emission measure fluctuation field, the factor two puts the root-mean square $\delta EM|_{rms} \sim 1\%$ closer to the corresponding detectability limit $\sigma_{EM} \sim 2\%$. This explains why the emission measure fluctuations are, to some extent, visually better recovered than those

of spectroscopic temperature in the case of the mock observation OBSfid (bottom maps in Fig. 9).

The biases and dispersions of the velocity and thermodynamic fields reconstructed from the observation OBScustom are given in the second row of Table D.1. In the case of the thermodynamic fields, they are very similar to those found for the previous mock observation and prove once again the robustness of the reconstruction. However, the output velocity field is slightly biased towards negative values and more dispersed than in the first virtual observation. This is a consequence of the root-mean square of the input velocity field being larger in this synthetic observation: a similar behaviour was seen when the Mach number from an input hydrodynamic simulation was increased in Roncarelli et al. (2018).

## Appendix E: Computation of the thermodynamic fluctuations in the Voronoi regions

In this respect, we first derive the average thermodynamic quantity $\bar{X}$ at fixed $z_i$ (which represents an iso-gravity line when the cluster curvature is neglected, see Appendix C.1):

$$ \bar{X}(z_i) = \frac{1}{n_y(z_i)} \sum_j X(y_j, z_i), \qquad (E.1) $$

where $X$ is either the spectroscopic temperature $T_s$ or the emission measure EM. $j$ runs on all the X-IFU pixels of the $y$-axis at a given vertical position $z_i$ on the 2D grid and $n_y$ is the number of such pixels (which depends on $z_i$ because of X-IFU’s hexagonal shape). The same Voronoi region can therefore be accounted for more than once in the average of a single row. The next step is to compute the average quantity $\langle X \rangle$ in a single Voronoi region:

$$ \langle X \rangle = \frac{1}{n_{\text{pix}}} \sum_i \bar{X}(z_i), \qquad (E.2) $$

where $n_{\text{pix}}$ is the number of pixels in the Voronoi regions considered and $i$ runs on all those pixels, whose vertical position is $z_i$. We finally obtain the thermodynamic fluctuation $\delta X$ in a given Voronoi region according to:

$$ \delta X = \frac{X - \langle X \rangle}{\langle X \rangle}. \qquad (E.3) $$

We emphasise that this procedure is greatly simplified by the fact that the cluster curvature can be neglected. Ideally, it should return the same fluctuation field that we would get if we were to directly integrate the thermodynamic fluctuations themselves along the line of sight (not weighted by the background quantities, as done for the velocity field actually). We checked whether this procedure is robust or not in this sense for diverse fluctuation fields that we parametrise with different intensities and injection lengths. In the parameter ranges relevant to the present study, we find very little influence of these diverse parameters on the robustness of the method, which proves to be overall satisfying.
<table><caption>**Table D.1.** Bias and dispersion of the output fields recovered from virtual observations with respect to their input counterparts from the rescaled MHD simulation.</caption><thead><tr><th>Observation</th><th>t<sub>exp</sub> (Ms)</th><th>N<sub>ph</sub> × 10<sup>6</sup></th><th>b<sub>EM</sub> (%)</th><th>b<sub>T<sub>s</sub></sub> (%)</th><th>b<sub>v<sub>ew</sub></sub> (km/s)</th><th>σ<sub>EM</sub> (%)</th><th>σ<sub>T<sub>s</sub></sub> (%)</th><th>σ<sub>v<sub>ew</sub></sub> (km/s)</th></tr></thead><tbody><tr><td>OBSfid</td><td>2</td><td>14.2</td><td>-1.25</td><td>-0.19</td><td>-2.15</td><td>2.32</td><td>1.64</td><td>19.2</td></tr><tr><td>OBScustom</td><td>2</td><td>14.9</td><td>-1.39</td><td>-0.57</td><td>-12.0</td><td>2.65</td><td>2.67</td><td>49.0</td></tr></tbody></table>

**Notes.** Column 1: name of virtual observation. Column 2: exposure time. Column 3: total number of photons obtained. Column 4-6 (7-9): average bias (dispersion) of the emission measure, spectroscopic temperature and emission-weighted velocity fields respectively. The values of the thermodynamic biases and dispersions are given in percents of their respective input quantities.

$$ \sigma_{v_{ew}}^2 = \langle (v_{ew,obs} - v_{ew,sim})^2 \rangle. \qquad (D.4) $$

<·> is the spatial average running over all the Voronoi regions. The subscripts obs and sim respectively stand for the observed and true input quantities. All these quantities are tabulated in Table D.1 for the different synthetic observations. We do not necessarily seek to compare the quality of the reconstructed fields between the two different observations since they use different input physical fields anyway. We are rather aiming at validating the post-processing pipeline by checking that there is no significant bias or dispersion of the reconstructed fields with respect to the input quantities, independently for each observation. We are also looking for a quantitative criterion on the input fluctuation fields to predict whether they will be visually well recovered (as in OBScustom, Fig. 10) or not (as in OBSfid, Fig. 9) with a X-IFU observation.

The first row in Table D.1 shows the biases and standard deviations of the reconstructed fields with respect to the input quantities in the case of OBSfid: both the thermodynamic and velocity fields are very well reconstructed with no significant biases and acceptable dispersions. More quantitatively, we find dispersions $\sigma_{T_s} \sim 2\%$, $\sigma_{v_{ew}} \sim 20$ km/s for the observed temperature and velocity field. This proves the robustness of our observational post-processing chain. Yet the fluctuation fields reconstructed from this synthetic observation are not necessarily visually satisfactorily retrieved, as seen in Fig. 9. The root-mean square of the input temperature fluctuation and velocity fields after integration along the line of sight $\delta T_s|_{rms} \sim 0.5\%$, $v_{ew}|_{rms} \sim 10$km/s are smaller than the respective standard deviations $\sigma_{T_s} \sim 2\%$, $\sigma_{v_{ew}} \sim 20$ km/s of the reconstructed temperature and velocity fields with respect to the input quantities. We deduce that having $\delta X|_{rms} \ge \sigma_X$, with $X = EM, T_s$ or $v_{ew}|_{rms} \ge \sigma_{v_{ew}}$ are necessary (albeit maybe not sufficient) conditions to satisfactorily detect the fluctuation fields from a synthetic observation. In this case, $\sigma_X$ can therefore be seen as a detectability threshold due to the inherent noise associated with a X-IFU observation: the fluctuation fields will be detected (i.e. visually well recovered) if their intensities exceed the noise level associated with the observation. This is why, in the phenomenological discussion of Section 3, Fig. 5, we used $\sigma_{T_s} \sim 2\%$ and $\sigma_{v_{ew}} \sim 20$ km/s as the typical X-IFU detectability limits for a 2-Ms observation of the Perseus cluster at $0.25R_{200}$. The case of the emission measure needs more caution because this extensive physical quantity is proportional to the squared density: when the root-mean square of the emission-measure and spectroscopic temperature fluctuations are small enough, they relate according to $\delta EM|_{rms} \sim 2 \delta T_s|_{rms}$. In the case of the emission measure fluctuation field, the factor two puts the root-mean square $\delta EM|_{rms} \sim 1\%$ closer to the corresponding detectability limit $\sigma_{EM} \sim 2\%$. This explains why the emission measure fluctuations are, to some extent, visually better recovered than those

of spectroscopic temperature in the case of the mock observation OBSfid (bottom maps in Fig. 9).

The biases and dispersions of the velocity and thermodynamic fields reconstructed from the observation OBScustom are given in the second row of Table D.1. In the case of the thermodynamic fields, they are very similar to those found for the previous mock observation and prove once again the robustness of the reconstruction. However, the output velocity field is slightly biased towards negative values and more dispersed than in the first virtual observation. This is a consequence of the root-mean square of the input velocity field being larger in this synthetic observation: a similar behaviour was seen when the Mach number from an input hydrodynamic simulation was increased in Roncarelli et al. (2018).

## Appendix E: Computation of the thermodynamic fluctuations in the Voronoi regions

In this respect, we first derive the average thermodynamic quantity $\bar{X}$ at fixed $z_i$ (which represents an iso-gravity line when the cluster curvature is neglected, see Appendix C.1):

$$ \bar{X}(z_i) = \frac{1}{n_y(z_i)} \sum_j X(y_j, z_i), \qquad (E.1) $$

where $X$ is either the spectroscopic temperature $T_s$ or the emission measure EM. $j$ runs on all the X-IFU pixels of the $y$-axis at a given vertical position $z_i$ on the 2D grid and $n_y$ is the number of such pixels (which depends on $z_i$ because of X-IFU’s hexagonal shape). The same Voronoi region can therefore be accounted for more than once in the average of a single row. The next step is to compute the average quantity $\langle X \rangle$ in a single Voronoi region:

$$ \langle X \rangle = \frac{1}{n_{\text{pix}}} \sum_i \bar{X}(z_i), \qquad (E.2) $$

where $n_{\text{pix}}$ is the number of pixels in the Voronoi regions considered and $i$ runs on all those pixels, whose vertical position is $z_i$. We finally obtain the thermodynamic fluctuation $\delta X$ in a given Voronoi region according to:

$$ \delta X = \frac{X - \langle X \rangle}{\langle X \rangle}. \qquad (E.3) $$

We emphasise that this procedure is greatly simplified by the fact that the cluster curvature can be neglected. Ideally, it should return the same fluctuation field that we would get if we were to directly integrate the thermodynamic fluctuations themselves along the line of sight (not weighted by the background quantities, as done for the velocity field actually). We checked whether this procedure is robust or not in this sense for diverse fluctuation fields that we parametrise with different intensities and injection lengths. In the parameter ranges relevant to the present study, we find very little influence of these diverse parameters on the robustness of the method, which proves to be overall satisfying.