# Analysis methods to localize and characterize X-ray sources with the Micro-channel X-ray Telescope on board the SVOM satellite

Shaymaa Hussein, Florent Robinet, Martin Boutelier, Diego Götz, Aleksandra Gros, Benjamin Schneider

► To cite this version:

Shaymaa Hussein, Florent Robinet, Martin Boutelier, Diego Götz, Aleksandra Gros, et al.. Analysis methods to localize and characterize X-ray sources with the Micro-channel X-ray Telescope on board the SVOM satellite. Astrophys.J., 2023, 944 (2), pp.170. 10.3847/1538-4357/acb539. hal-03815193

HAL Id: hal-03815193

https://hal.science/hal-03815193

Submitted on 10 Jun 2023

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
OPEN ACCESS

<figure><img src="image_2.png" /></figure>

CrossMark

# Analysis Methods to Localize and Characterize X-Ray Sources with the Microchannel X-Ray Telescope on Board the SVOM Satellite

Shaymaa Hussein<fnref n="1" />,<fnref n="2" />, Florent Robinet<fnref n="1" />, Martin Boutelier<fnref n="3" />,*, Diego Götz<fnref n="4" />,*, Aleksandra Gros<fnref n="4" />, and Benjamin Schneider<fnref n="4" />*

Received 2022 October 4; revised 2023 January 4; accepted 2023 January 19; published 2023 February 22

## Abstract

The Space-based multiband astronomical Variable onboard computing resources. This Object Monitor (SVOM) is a Sino-French space mission targeting high-energy transient astrophysical objects such as gamma-ray bursts. The soft X-ray part of the spectrum is covered by the Microchannel X-ray Telescope (MXT), which is a narrow field telescope designed to localize X-ray sources precisely. This paper presents the methods implemented on board to characterize and localize X-ray sources with the MXT. A specific localization method was developed to accommodate the optical system of the MXT, which is based on “Lobster Eye” grazing incidence micropore optics. For the first time, the algorithm takes advantage of cross-correlation techniques to achieve a localization accuracy down to 2' with fewer than 200 photons, which guarantees rapid follow-up for most of the gamma-ray bursts that SVOM will observe. In this paper, we also study the limitations of the algorithm and characterize its performance.

Unified Astronomy Thesaurus concepts: Gamma-ray bursts (629); Space telescopes (1547)

## 1. Introduction

The Space-based multiband astronomical Variable Object Monitor (SVOM) is a space mission (Wei 2016) coordinated by the Chinese (CNSA) and French (CNES) space agencies. The core program of SVOM is to detect and characterize gamma-ray bursts (Zhang 2018), which are intense flashes of gamma rays lasting from a fraction to a few hundreds of seconds. Additionally, SVOM will also target other astrophysical objects: active galactic nuclei (Beckmann & Shrader 2012), black hole binaries (McClintock & Remillard 2006), galactic X-ray binaries and magnetars (Revnivtsev et al. 2008), flaring stars (Kenyon & Hartmann 1987), and cataclysmic variables (Robinson 1976). Finally, SVOM will participate in multi-messenger programs where transient sources observed by other experiments (gravitational wave detectors; Abbott et al. 2018; or neutrino detectors) will be followed up (Zhang 2018).

The SVOM satellite will be launched in late 2023. It is equipped with four instruments. At high energies, the ECLAIRs (Takahashi et al. 2014) telescope (>4 keV) and the Gamma-Ray Monitor (Dong et al. 2010) (>30 keV) will trigger on gamma-ray sources. These sources will then be followed up by the Microchannel X-ray Telescope (MXT) (Caraveo et al. 2015) and the Visible Telescope (VT) (Wang et al. 2010). The MXT is designed to observe X-ray sources from 0.2 to 10 keV. For gamma-ray bursts, this energy range covers the afterglow emission (Costa et al. 1997) following the gamma-ray burst prompt emission. The original trigger is either detected on board by ECLAIRs/Gamma-Ray Monitor or by another experiment. The SVOM platform then slews to place the astrophysical object in the MXT's 58 × 58 arcmin<fnref n="2" /> field of view. When stable, the telescope cumulates X-ray photons. The MXT images are analysed on board to localize the X-ray

source. The reconstructed position is updated every 30 seconds, transmitted to the ground, and broadcasted worldwide to enable follow-up of the event with ground telescopes. It will also be used to trigger a second slew to provide a better position of the source for optical follow-up with the VT. One of the MXT scientific requirements is to detect and localize 85% of gamma-ray bursts with an accuracy better than 2' after 10 minutes of stable observation (Gotz et al. 2022).

The MXT is a lightweight (<42 kg) and compact (focal length ~1.15 m) X-ray telescope. Its unique optical system is based on the “Lobster Eye” grazing incidence technique (Feldman et al. 2020). High-energy photons are reflected and focused by a collection of square micropores creating a unique pattern on the focal plane, composed of a central peak and two cross arms. The X-ray source sky location is derived from the position of the central peak in the focal plane.

This paper presents the algorithm developed to perform the onboard localization analysis. Several processing methods were considered and compared a few years ago (Gosset 2019). A cross-correlation technique is selected to resolve the sources of X-ray photons, even with a weak intensity. This method is applied to search for multiple sources in the MXT field of view using an iterative subtraction process. For each identified source, the number of photons is evaluated using the cross-correlation data, as well as the overall background counts. This is a new approach which was specifically designed to manage the peculiar shape of the point-spread function of the telescope. Moreover, due to space constraints, the data processing methods had to be optimized to cope with low onboard computing resources. This method is characterized and we evaluate the localization performance necessary to achieve the MXT scientific requirements as shown in Gotz et al. (2022).

This paper is organized as follows. Section 2 introduces the two data products needed by the localization software: the camera images and the telescope point-spread function. Section 3 presents the onboard analysis steps: the source localization, the estimation of signal and background counts,

<figure><img src="image_3.png" /></figure>

Original content from this work may be used under the terms of the [Creative Commons Attribution 4.0 licence](https://creativecommons.org/licenses/by/4.0/). Any further distribution of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI.

<footnote n="1">¹Université Paris-Saclay, CNRS/IN2P3, IJCLab, F-91405 Orsay, France</footnote>

<footnote n="2">²An-Najah National University, Nablus, Palestine</footnote>

<footnote n="3">³Centre National d'Etudes Spatiales, Centre spatial de Toulouse, 18 avenue Edouard Belin, F-31401 Toulouse Cedex 9, France</footnote>

<footnote n="4">⁴Université Paris-Saclay, Université Paris Cité, CEA, CNRS, AIM, F-91191, Gif-sur-Yvette, France</footnote>
<figure><img src="image_4.png" /><figcaption>Figure 1. An incoming photon hits the camera plane (left). From the hit position (y, z), the spherical angle (θ, φ) of the incoming direction can be derived. The right-hand diagram shows the most probable pixel patterns induced by a photon hitting the camera plane.</figcaption></figure>

and the method used to identify multiple X-ray sources. This method is characterized in Section 4. Finally, a summary and concluding remarks are given in Section 5.

## 2. Analysis Input

### 2.1. Camera Images

The MXT camera is a pn-Charge Coupled Device (pnCCD) (Ceraudo et al. 2020; Schneider et al. 2022) installed in the telescope’s y–z focal plane. The x-axis is the optical axis of the telescope. This is represented schematically in the left-hand side of Figure 1. Positions in the camera plane are measured with continuous “intrinsic” coordinates: $0 \le y < 1$ and $0 \le z < 1$. The camera is represented by an $N \times N$ matrix of pixels which are indexed by i and j, running from 0 to $N-1 = 255$ along the y (resp. z) axis. The pixel centers are located at $(y = (i + 0.5)/N, z = (j + 0.5)/N)$.

An incoming X-ray photon interacts with the MXT camera pixels and deposits its energy via the photoelectric effect. This energy is distributed over one or a few contiguous pixels, forming a pattern. The most probable pixel patterns induced by a photon and after thresholding on the pixel amplitude are represented in the right-hand side diagram in Figure 1 (Godet et al. 2009).

The MXT camera is operated in two modes. In full-frame mode, the camera’s front-end electronics captures an image every 200 ms and transfers it to the MXT data processing unit. The full-frame images are processed to estimate the pixel noise and derive pixel-by-pixel detection thresholds. For astrophysical observations, the camera is set to event mode. The image is integrated over 100 ms and the pixel noise component is removed by the front-end electronics (Ceraudo et al. 2020). When the amplitude is above the detection threshold, the pixel data are transfered to the MXT data processing unit for analysis.

In event mode, the first analysis step is to cluster adjacent pixels together. A photon is identified if the pixel pattern matches one of those represented in the right-hand side of Figure 1. The other pixel patterns are attributed to noise (e.g.,

cosmic rays) and are discarded. Photons are parametrized by the energy $E_p = \sum_{ij} E[i][j]$ integrated over the (i, j) pixels in the cluster. The photon hit position ($y_p, z_p$) in intrinsic coordinates is estimated by computing the energy-weighted pixel position:

$$y_p = \frac{\sum_{ij} E[i][j] \times (i + 0.5)}{N \sum_{ij} E[i][j]}, \quad \text{and} \quad (1)$$

$$z_p = \frac{\sum_{ij} E[i][j] \times (j + 0.5)}{N \sum_{ij} E[i][j]}, \quad (2)$$

where the sums run over the pixels (i, j) in the photon cluster.

As images are recorded, photons are cumulated onto an $N_D \times N_D$ counting map D called the “photon map.” To limit the computational cost, the resolution is set to $N_D = N/2 = 128$. It is shown in Section 4.2 that the localization accuracy is hardly impacted by this choice of lower resolution. The right-hand plot of Figure 2 shows an example of a photon map.

### 2.2. Point-spread Function

The localization analysis presented in Section 3 takes the photon map D as an input and cross-correlates it with the image of a point source produced by the MXT optical system. This expected image, called the point-spread function, is measured and modeled on the ground and uploaded to the satellite. The point-spread function of the MXT is the result of the microporous structure (Feldman et al. 2020) of its optical system. It measures the hit position probability of an incoming photon over the focal plane. It is composed of a central spot (double reflection), four cross arms (single reflection), and a diffused patch (no reflection). The MXT point-spread function has been measured and modeled by the University of Leicester team, in charge of the MXT optical system. It is modeled by the function $P(y, z, E)$ fitted to X-ray data collected at different energies E during the MXT performance tests conducted at the Panter facility, Neuried, Germany, in 2021 November. The flight-model point-spread function used in this work, $P(y, z)$, is plotted in Figure 2. It is weighted over the expected number of photons for an average gamma-ray burst, taking into account a
<figure><img src="image_5.png" /><figcaption>Figure 2. The MXT point-spread function is represented on the left by an $N_p \times N_p$ matrix ($N_p = 256$). It describes the probability distribution of photons over the camera plane. For example, on the right-hand side, 1000 photons are cumulated on an $N_D \times N_D$ grid ($N_D = 128$), called the photon map. This photon map was simulated using the point-spread function centered on $y = 0.3$ and $z = 0.3$, as represented by the white square.</figcaption></figure>

typical spectrum and the MXT photon collecting efficiency as a function of energy. The FWHM of the central peak is about 11' (≈50 pixels).

The point-spread function $P$ is discretized over an $N_p \times N_p$ grid where $N_p = 2N_D$. It is twice the size of the photon map in both directions to cover all possible incoming photon directions. Moreover, the point-spread function is normalized to 1:

$$ \sum_{i=0}^{N_p-1} \sum_{j=0}^{N_p-1} P[i][j] = 1. \qquad (3) $$

The right-hand side plot in Figure 2 shows an example of a photon map generated with 1000 photons, placing the point-spread function peak at $y = 0.3$ and $z = 0.3$.

### 3. Localization Algorithm

The localization analysis loops continuously in the MXT data processing unit. One cycle takes less than 2 s to complete. The analysis delivers the X-ray source sky location in spherical coordinates $(\theta, \phi)$, as well as the photon count, signal-to-noise ratio, and the localization uncertainty. This information is updated every 30 s and packaged in telemetry packets sent to the ground. The photon map $D$, introduced in Section 2.1, is cross-correlated with the point-spread function presented in Section 2.2. This method, described in Section 3.1, was selected as it offers sensitivity to faint sources (Gosset 2019). Indeed, one can take advantage of MXT's specific point-spread function for which the cross-arm pattern can guide the search for source peak positions.

The cross-correlation data are then processed to search for local maxima, as detailed in Section 3.2. In Section 3.3, we explain how to estimate the source photon count and the background contribution. Finally, the algorithm is designed to locate the three brightest sources in the MXT's field of view.

To achieve this, an iterative subtraction process is implemented and is described in Section 3.4.

#### 3.1. Cross-correlation

To determine the localization of the source, the photon map, $D$, is first cross-correlated with the point-spread function $P$. We calculate the cross-correlation coefficient $C[i][j]$ for which the photon map is shifted by $i$ cells and $j$ cells in the $y$- and $z$-directions, respectively, over the point-spread function matrix. The shift $(i, j)$ maximizing the cross-correlation will then be considered as the best initial localization for a barycentric estimation presented in Section 3.2. The cross-correlation coefficient is defined as:

$$ C[i][j] = \sum_{i'=0}^{N_p-1} \sum_{j'=0}^{N_p-1} D[i' + i][j' + j] \times P[i'][j'], \quad (4) $$

where the cell shifts $i$ and $j$ take values between 0 and $N_D - 1$. It is important to note that our definition of the cross-correlation is not standard. Figure 3 is an attempt to represent the calculation of three cross-correlation coefficients obtained with Equation (4). When shifting the photon map over the point-spread function matrix, the index $i' + i$ (resp. $j' + j$) can be out of range. We assume circular periodicity where $i' + i$ (resp. $j' + j$) actually means $(i' + i)(\text{mod } N_D)$ (resp. $(j' + j)(\text{mod } N_D)$). In the following, the out-of-range issues will no longer be addressed, and we will simply write $i' + i$ (resp. $j' + j$). As a result, in the sum of Equation (4), the photon map $D$ is used four times. In Appendix, we justify our choice of the cross-correlation definition. We also illustrate the calculation of Equation (4) with a simple example.

The implementation of the cross-correlation given in Equation (4) is computationally expensive. Alternatively, the
<figure><img src="image_6.png" /><figcaption>**Figure 3.** The point-spread function matrix *P*, represented by the red square of size *N*<sub>*P*</sub>, is cross-correlated with the photon map *D*, represented by the blue squares. Three cross-correlation coefficients are represented: C[0][0] (left), C[i][j] (center), and C[N<sub>*D*</sub> − 1][N<sub>*D*</sub> − 1] (right). Each of those are calculated by integrating *D* × *P* over the red square. The photon map is used four times, as represented by the four different shades of blue. The magenta cell indicates the cross-correlation coefficient which is calculated.</figcaption></figure>

cross-correlation can be computed in the Fourier space:

$$
\tilde{C}[k][l] = \frac{1}{N_D^2} \sum_{i=0}^{(N_D-1)(N_D-1)} \sum_{j=0}^{N_D-1} C[i][j] \\
\times e^{-2\sqrt{-1}\pi(ik+jl)/N_D}. \qquad (5)
$$

According to the correlation theorem (Papoulis 1962), the cross-correlation of two signals is equivalent to a complex conjugate multiplication of their Fourier transforms:

$$
\tilde{C}[k][l] = N_P^2 \times \tilde{D}[k][l] \times \tilde{P}^*[2k][2l], \quad (6)
$$

where we use * for the complex conjugate. In Equation (6), both the photon map $\tilde{D}$ and the cross-correlation matrix $\tilde{C}$ are sampled at a frequency of $1/N_D$, while the point-spread function matrix is sampled at a frequency of $1/N_P = 1/(2N_D)$:

$$
\tilde{P}[k][l] = \frac{1}{N_P^2} \sum_{i=0}^{(N_P-1)(N_P-1)} \sum_{j=0}^{N_P-1} P[i][j] \times e^{-2\sqrt{-1}\pi(ik+jl)/N_P}. \quad (7)
$$

As a consequence, every other coefficient of $\tilde{P}$ is considered in Equation (6). The cross-correlation map is obtained by applying an inverse Fourier transform to Equation (6):

$$
C[i][j] = N_P^2 \times \sum_{k=0}^{(N_D-1)(N_D-1)} \sum_{l=0}^{N_D-1} \tilde{D}[k][l] \times \tilde{P}^*[2k][2l] \\
\times e^{+2\sqrt{-1}\pi(ik+jl)/N_D}. \qquad (8)
$$

Because of the limited onboard computing power and to
optimize the uplink bandwidth, the point-spread function is
stored in a table on board. At any time, this table can be
updated from the ground with a telecommand. Having one
Fourier coefficient over two, the onboard point-spread function
is therefore partial. This limitation has important consequences
to compute the signal and background counts; this is discussed
in Section 3.3.

This cross-correlation method has two systematic biases
which must be corrected. The first bias is introduced when
working with a point-spread function twice the size of the
photon map. The photon map must be shifted by half of a cell
in both directions to be aligned with the point-spread function.
Therefore the cross-correlation map is also shifted by half of a
cell. When localizing a peak in the cross-correlation map, an
offset of 0.5/N<sub>D</sub> must be removed in y and z. The reader should

refer to Appendix to receive an intuitive explanation of this
bias. The second bias is caused by the Fourier transform
spectral leakage resulting from the map periodicity assumption;
this effect is more pronounced when the source peak stands
near the edges of the camera plane. This bias is discussed and
corrected in Section 4.3

3.2. Source Position

The X-ray source position is associated to a peak in the cross-correlation map C. First, the global maximum C[i₁][j₁] in the cross-correlation map is identified.<fnref n="5" /> Then we define a window centered on this maximum: i₁ − N<sub>w</sub> ≤ i ≤ i₁ + N<sub>w</sub> and j₁ − N<sub>w</sub> ≤ j ≤ j₁ + N<sub>w</sub>. As explained in Section 3.1, we use circular indices if the window overlaps the edges of the cross-correlation map. The size of the window must be chosen to include fully the central spot of the point-spread function. Given the size of the central spot of the MXT point-spread function, we use N<sub>w</sub> = 25. The peak position (y₁, z₁) is finally computed as a two-dimensional barycenter inside the window:

$$
\begin{align}
y_1 &= \frac{\sum_{i,j} C[i][j] \times (i + 0.5)}{N_D \times \sum_{i,j} C[i][j]}, && \text{and} \nonumber \\
z_1 &= \frac{\sum_{i,j} C[i][j] \times (j + 0.5)}{N_D \times \sum_{i,j} C[i, j]}. \tag{9}
\end{align}
$$

The sums run over indices (i, j) inside the window and where the cross-correlation coefficients take significant values: C[i][j] > α × C[i₁][j₁]. Using simulated data, we find that α = 0.9 gives the best localization accuracy. It is worth noting that both the α and N<sub>w</sub> parameters are configurable from the ground.

Figure 4 shows an example of a photon map simulated with a faint source (50 photons) on top of a uniform background (600 counts). The source position cannot be identified in the photon map while it appears clearly in the cross-correlation map. The peak position is localized reasonably well with the method described above (circular marker). The true position is indicated with a triangular marker. For comparison, we also

<footnote n="5">⁵ The index 1 is associated to quantities referring to the first and brightest source. As explained in Section 3.4, this analysis is repeated for secondary sources 2 and 3.</footnote>
<figure><img src="image_7.png" /><figcaption>Figure 4. Example of a photon map D simulated with a flat background of 600 counts and a faint source positioned at y = 0.7 and z = 0.7 (triangle marker) with 50 counts (right plot). The source position is well visible in the cross-correlation map (right). It is localized at y = 0.73 and z = 0.72 by the MXT onboard analysis (circular marker). A simple barycenter fails at localizing the source (square marker).</figcaption></figure>

<figure><img src="image_8.png" /></figure>

add the position derived from a simple barycenter evaluated over the entire photon map (square marker) which fails at localizing the source.

As introduced in Section 3.1, the cross-correlation map suffers from two systematical biases: Fourier transform spectral leakage and alignment asymmetry between the photon map and the point-spread function. For the first effect we apply ad hoc corrections η₁(y) and η₂(z), which are evaluated and discussed in Section 4.3. The second bias is corrected by applying a shift of half of a cell:

$$y'_{1} = y_{1} + \eta_{1}(y_{1}) - \frac{0.5}{N_{D}}, \quad \text{and} \quad z'_{1} = z_{1} + \eta_{2}(z_{1}) - \frac{0.5}{N_{D}}. \qquad (10)$$

Finally, the source position (y', z') is converted to spherical angles (θ, φ) using the telescope's focal length F and the physical size of the camera L × L:

$$\theta = \tan^{-1}\left(\frac{L}{F} \times \sqrt{(y'_{1} - 0.5)^{2} + (z'_{1} - 0.5)^{2}}\right), \\ \varphi = \tan^{-1}\left(\frac{z'_{1} - 0.5}{y'_{1} - 0.5}\right). \qquad (11)$$

### 3.3. Signal and Noise Counts

The source signal S₁ and noise B counts are estimated on board the MXT to derive the source signal-to-noise ratio ρ₁ = S₁/√B. A standard method to estimate these quantities consists of analysing the photon map. The signal+noise component is integrated around the main peak and the noise-only component is estimated using a region of the image where the signal contribution can be neglected. For the MXT, this method is not optimal due to the cross-shaped structure of the point-spread function and the possible presence of multiple X-ray sources in the field of view. Moreover there are large uncertainties associated to faint signals and low-statistic backgrounds.

Instead, we use the cross-correlation map C, which naturally integrates the background and signal counts over the entire camera plane. Decomposing the photon map D in a linear

combination of a signal component s₁ and a background component, we can write Equation (4) as:

$$C[i][j] = \sum_{i'=0}^{N_D-1} \sum_{j'=0}^{N_D-1} (s_1[i'][j'] \times P[i' + i][j' + j]) + \frac{B_1}{N_D^2}, \qquad (12)$$

where we assume the background B₁ to be uniformly distributed over the camera plane and where we used the normalization of Equation (3). The source distribution is driven by the point-spread function:

$$s_1[i][j] = \frac{S_1}{\sum_{i'=0}^{N_D-1} \sum_{j'=0}^{N_D-1} P[N_D + i' - i_1][N_D + j' - j_1]} \times P[N_D + i - i_1][N_D + j - j_1], \\ = \frac{S_1}{\beta[i_1][j_1]} \times P[N_D + i - i_1][N_D + j - j_1], \qquad (13)$$

where i₁ = [y'₁N_D] and j₁ = [z'₁N_D] are the indices matching the cross-correlation peak position (y', z') obtained in Equation (10), and where we introduce:

$$\beta[i_1][j_1] = \sum_{i'=0}^{N_D-1} \sum_{j'=0}^{N_D-1} P[N_D + i' - i_1][N_D + j' - j_1]. \qquad (14)$$

The β function integrates the point-spread function over the spatial extent covered by the photon map. It cannot be computed exactly on board as the point-spread function is incomplete; every other Fourier coefficient P*[2k][2l] is available. Instead, the β function is approximated by a fit function, the parameters of which are uploaded; see the left plot in Figure 5.

Similarly, the signal component cannot be calculated completely so we rewrite Equation (13) as:

$$s_1[i][j] = \frac{S_1}{\beta[i_1][j_1]} \times (P_{\text{comp}}[i - i_1][j - j_1] - \varepsilon_1[i][j]), \qquad (15)$$
<figure><img src="image_9.png" /><figcaption>**Figure 5.** For a given point-spread function, the $\beta$ function (left) is measured using Equation (14). It is then fitted, where the fit is represented by the red contours. The function $C_{\epsilon}$ (right) is measured with $B=0$ (Equation (18)) and a source positioned at the center.</figcaption></figure>

where we introduce a “compact” point-spread function of size $N_D \times N_D$:

$$P_{\text{comp}}[i][j] = P[i][j] + P[i][N_D + j] + P[N_D + i][j] + P[N_D + i][N_D + j], \quad (16)$$

the Fourier transform of which is:

$$\tilde{P}_{\text{comp}}[k][l] = 4 \times \tilde{P}[2k][2l]. \quad (17)$$

In other words, the onboard algorithm can only use the compact point-spread function to estimate $S_1$ and $B$. We parameterize the missing terms of the point-spread function in Equation (13) with the $\epsilon_1$ function: $\epsilon_1[i][j] = P_{\text{comp}}[i - i_1][j - j_1] - P[N_D + i - i_1][N_D + j - j_1]$. The cross-correlation of the signal component with the point-spread function is:

$$\begin{aligned} C_1[i][j] &= \frac{S_1}{\beta[i_1][j_1]} \times \sum_{i'=0}^{N_p-1} \sum_{j'=0}^{N_p-1} P[i' + i][j' + j] \\ & \times (P_{\text{comp}}[i' - i_1][j' - j_1] - \epsilon_1[i'][j']) \\ &= \frac{S_1}{\beta[i_1][j_1]} \times (W[i - i_1][j - j_1] - C_{\epsilon_1}[i][j]). \end{aligned} \quad (18)$$

This cross-correlation coefficient has two components. The first one, $W$, is the cross-correlation of $P_{\text{comp}}$ with the point-spread function. The $W$ function is computed on board substituting $D$ by $P_{\text{comp}}$ in Equation (8):

$$W[i][j] = 4N_p^2 \times \sum_{k=0}^{(N_D-1)(N_D-1)} \sum_{l=0}^{(N_D-1)(N_D-1)} \tilde{P}[2k][2l] \times \tilde{P}^{*}[2k][2l] \\ \times e^{+2\sqrt{-1}\pi(ik+jl)/N_D}. \quad (19)$$

The second component, $C_{\epsilon_1}$, is the cross-correlation between $\epsilon_1$ and the point-spread function. It is unknown.

Let us consider two points in the cross-correlation map $C$: the cross-correlation peak at $(i_1, j_1)$ and the cross-correlation

minimum point at $(i_m, j_m)$. We get:

$$\left\{ \begin{aligned} C[i_i][i_1] &= \frac{S_1}{\beta[i_1][j_1]} \times (W[0][0] - C_{\epsilon_1}[i_1][j_1]) + \frac{B_1}{N_D^2}, \\ C[i_m][i_m] &= \frac{S_1}{\beta[i_1][j_1]} \times (W[i_m - i_1][j_m - j_1] - C_{\epsilon_1}[i_m][j_m]) + \frac{B_1}{N_D^2}. \end{aligned} \right. \quad (20)$$

Solving this system of equations we get:

$$S_1 = \beta[i_1][j_1] \times \frac{C[i_1][j_1] - C[i_m][j_m]}{W[0][0] - C_{\epsilon_1}[i_1][j_1] - W[i_m - i_1][j_m - j_1] + C_{\epsilon_1}[i_m][j_m]}, \quad (21)$$

$$B_1 = N_D^2 \times \left( C[i_1][j_1] - \frac{S_1}{\beta[i_1][j_1]} \times (W[0][0] - C_{\epsilon_1}[i_1][j_1]) \right). \quad (22)$$

To estimate $S_1$ and $B_1$ with Equations (21) and (22), we approximate the $C_{\epsilon_1}$ values by:

$$C_{\epsilon_1}[i_m][j_m] - C_{\epsilon_1}[i_1][j_1] = \text{Min}_{i,j}(C_{\epsilon}[i][j]) - \text{Max}_{i,j}(C_{\epsilon}[i][j]), \quad \text{and} \quad (23)$$

$$C_{\epsilon_1}[i_1][j_1] = \text{Max}_{i,j}(C_{\epsilon}[i][j]), \quad (24)$$

where $C_{\epsilon}$ is a cross-correlation function computed on the ground with a source positioned at the center of the camera plane; see the right plot in Figure 5.

### 3.4. Localization of Multiple Sources

Given the detector sensitivity (Caraveo et al. 2015), it is possible to observe more than one X-ray source within the field of view of the MXT. Using data collected by the ROSAT telescope (Boller et al. 2016), which was operated in an energy band comparable to the MXT and had a similar sensitivity, we expect to have at most three X-ray sources within the field of view of the MXT. As a result, the localization algorithm should be able to manage multiple sources. The localization analysis described in Sections 3.1, 3.2, and 3.3 is repeated three times, subtracting the contribution of the detected source at each iteration.
<figure><img src="image_10.png" /><figcaption>Figure 6. The top-left plot shows the distribution of photons from three separate sources ($S_1 = 1000$, $S_2 = 300$, and $S_3 = 300$) on top of a uniform background ($B = 600$). The three other plots show the initial cross-correlation map $C^1$ (top-right), after subtracting the first source $C^2$ (bottom-left), and after subtracting the second source $C^3$ (bottom-right). The true source positions are indicated by the circles.</figcaption></figure>

The cross-correlation map at iteration $g = 1$ is $C^{g=1} = C$, where $C$ is computed with Equation (8). For the next two iterations, $g = 2$ and $g = 3$, we use $C^g = C^{g-1} - C_{g-1}$, where the contribution of source $g$, $C_g$, is derived from Equation (18). Note that the $C_{\epsilon_g}$ function is approximated by a single value: $C_{\epsilon_g}[i][j] \approx \text{Max}_{i,j}(C_{\epsilon}[i][j])$.

After three iterations, we have three estimates for the background: $B_1$, $B_2$, and $B_3$. None of them is a perfect estimate of $B$. For a single source, the best estimator is $B_1$. For multiple sources, however, the choice is not trivial: the first estimate $B_1$ is overestimated by secondary sources, while the last estimate $B_3$ is underestimated by imperfect subtractions. As a compromise, the background is updated at each iteration:

$$B = B_g \quad \text{if} \quad S_g > \rho_q \times \sqrt{B_g}, \qquad (25)$$

where $\rho_q$ is a configurable parameter.

Figure 6 illustrates the subtraction method. The photon map $D$ includes three photon sources simulated with $S_1 = 1000$, $S_2 = 300$, and $S_3 = 300$. The background is uniform and set to $B = 600$. Running our analysis, these counts are estimated by $S_1 = 1045$ (+4.5%), $S_2 = 386$ (+29%), $S_3 = 299$ (-0.3%), $B_1 = 824$, $B_2 = 810$, and $B_3 = 627$. The final background is estimated at $B = B_3 = 627$ (+4.5%).

## 4. Characterization of the Localization Method

The localization algorithm presented in Section 3 is characterized using different test scenarios. For each scenario we generate camera images with the SatAndLight simulation toolkit (Robinet & Hussein 2021), which is designed to include many effects: photons from astrophysical and background sources, cosmic rays, corrupted camera pixels, etc. Astrophysical sources generate photons at a given energy, or following a given energy distribution. Photons are reflected by the MXT optical system following the point-spread function (see Section 2.2) and interact with the camera’s CCD pixels. A cosmic X-ray background is simulated by injecting high-energy photons uniformly on the camera plane. For the MXT, we expect to detect one background photon every second. In the following we will often consider a canonical background of $B = 600$ counts, corresponding to an observation of 10 minutes.

### 4.1. The Source Intensity

In this section, the localization accuracy and its associated uncertainty is evaluated for different source and noise intensities. We use the $r_{90}$ quantity:

$$r_{90} = [\langle \vec{r}_{\text{meas}}, \vec{r}_{\text{true}} \rangle]_{90\%}, \qquad (26)$$
<figure><img src="image_11.png" /><figcaption>**Figure 7.** Localization uncertainty $r_{90}$ evaluated for a source intensity ranging from 10 to 10,000 photons and with different background levels. Each point in this graph results from 1000 source positions randomly drawn in a $17 \times 17$ arcmin$^2$ region around the camera center. Here, we use $N_D = N = 256$.</figcaption></figure>

which measures the angular distance between the source position reconstructed by the localization algorithm $\vec{r}_{meas}$ (Equation (10)) and the true source position defined in the simulation $\vec{r}_{true}$. This angular distance is measured with 1000 simulations of different positions $\vec{r}_{true}$ randomly drawn in the field of view of the telescope. The $r_{90}$ quantity is obtained from the 90th percentile of the distribution of $\angle(\vec{r}_{meas}, \vec{r}_{true})$.

The MXT was designed to achieve a source localization accuracy of $r_{90} < 2$ arcmin for 85% of the detected gamma-ray bursts. In Figure 7, $r_{90}$ is evaluated for an X-ray source with an intensity ranging from 10 to 10,000 photons. The source photons are cumulated on top of a background noise of different intensities: 30, 300, and 600 counts. For these three background levels, the localization uncertainty is below $2'$ for 120, 164, and 197 source photons, respectively. In Gotz et al. (2022), it is shown that these numbers fulfill the MXT-required performance to localize gamma-ray bursts.

## 4.2. The Photon Map Resolution

After photons are reconstructed, as explained in Section 2.1, they are cumulated onto a two-dimensional $N_D \times N_D$ grid called the photon map. The resolution of the photon map must be kept at minimum to limit the computing cost associated to the Fourier transform used to cross-correlate the data with the point-spread function (see Section 3.1). However, it should be chosen to be high enough to resolve the peak of the point-spread function fully and maximize the localization performance.

To drive this choice, we measure the impact of the photon map resolution on the localization performance. The results are presented in Figure 8. There is no significant impact between the full resolution ($N_D = N = 256$) and using a $128 \times 128$ grid. We observe an ~8% loss when the resolution is further reduced ($64 \times 64$). We only consider power-of-two values for $N_D$ to perform optimal Fourier transforms. For the MXT localization algorithm, and for the rest of this paper, we fix $N_D = 128$. This resolution is sufficiently high to sample the shape of the point-spread function completely and to offer an optimal localization accuracy. To perform the cross-correlation, we developed a two-dimensional $128 \times 128$ complex-to-complex Fourier transform algorithm. It takes approximately 300 ms to complete one Fourier transform with the onboard computer.

<figure><img src="image_12.png" /><figcaption>**Figure 8.** Localization uncertainty $r_{90}$ vs. the number of photons evaluated for various photon map resolutions: $64 \times 64$ (light blue), $128 \times 128$ (bright blue), and $256 \times 256$ (dark blue). The background level is fixed to 600 counts.</figcaption></figure>

<figure><img src="image_13.png" /><figcaption>**Figure 9.** The edge bias $dy = y_{true} - y_{meas}$ is measured in the y-direction. The red line shows the best fit using the function in Equation (27).</figcaption></figure>

## 4.3. Detector Edge Bias

The cross-correlation between the photon map and the point-spread function is performed in the Fourier domain (Equation (6)). The discrete Fourier transform of size $N_D$ assumes periodicity: $D[0] \approx D[N_D - 1]$ in both the y- and z-directions. This assumption is reasonable when the X-ray source is positioned around the center of the field of view. It is highly violated when the source peak gets closer to the camera's edges, when a fraction of the peak is chopped off. In this situation, spectral-leakage effects can be large and they bias the peak position in the cross-correlation map C.

To evaluate this bias along the y-direction, we move the source position horizontally, from $(y=0, z=0.5)$ to $(y=1, z=0.5)$. Using discrete positions along this axis, we measure the deviation between the measured and the true positions: $dy = y_{true} - y_{meas}$. This deviation is represented as a function of $y_{meas}$ in Figure 9. Usually, this bias can be mitigated using padding or windowing methods. Padding methods would increase data sizes and would lead to longer Fourier transform calculations. Windowing the data would alter the signal and noise counts used to compute the signal-to-noise ratio. Instead, the bias $dy(y_{meas})$ is fitted by an empirical function:

$$ \eta_1(y_{meas}) = \begin{cases} H_0 \times e^{H_1 \times y_{meas}} & \text{if } y_{meas} > 0.5 \\ H_2 \times e^{H_3 \times y_{meas}} & \text{otherwise,} \end{cases} \quad (27) $$
<figure><img src="image_14.png" /><figcaption>**Figure 10.** Localization uncertainty $r_{90}$ when the source position moves across the camera plane along the y-axis ($z = 0.5$). The dashed lines do not include the edge-bias correction while the continuous lines do. The background count is fixed to 600 and two source intensities are tested: 1000 photons (red curves) and 500 photons (blue curves).</figcaption></figure>

<figure><img src="image_15.png" /><figcaption>**Figure 11.** Localization bias ($dr$) when two co-aligned X-ray sources are present in the MXT field of view as a function of the angular distance between the two sources ($r_2 - r_1$). We have masked the region where $r_2 - r_1 < 10$ arcmin (in green) for which the peaks of the point-spread function are overlapping and cannot be separated. The intensity of the first source is fixed to 1000 photons. Two intensities for the second source are tested: 500 photons (left plot) and 250 photons (right plot).</figcaption></figure>

where $H_0$, $H_1$, $H_2$, and $H_3$ are the fit parameters. The bias in the z-direction is corrected using the same method. Indeed the edge corrections in the y- and z-directions can be addressed separately except for a small region near the corners of the camera plane where the corrections should not be decoupled. Given the low probability of finding a source in these positions, we neglect this effect.

The $\eta_1$ and $\eta_2$ corrections are applied in Equation (10) to obtain the final source position. Figure 10 shows the localization uncertainty when the source position moves across from the camera plane with and without the edge-bias correction. The edge bias appears when the source is less than 30 pixels away from the camera edge. After correction, the bias is still visible but it is below the MXT design requirement of 2'. This comparison is done with 500 and 1000 photons showing that the edge correction method applies equally to all source intensities.

### 4.4. Multiple Sources

As explained in Section 3.4, three X-ray sources are identified and localized in the field of view of the MXT. To characterize the algorithm with additional sources, we consider

the worst-case scenario where two X-ray sources share the same z-coordinate; given the shape of the point-spread function, the photon patterns of the two sources overlap. We fix the brightest source at center of the field of view and we move the second source from the center to the camera edge in the y-direction. We also vary the intensity of the second source relative to the first source. The two sources are localized by running the algorithm described in Section 3.4 and we measure the localization bias, $dr = \langle \vec{r}_{\text{meas}} - \vec{r}_{\text{true}} \rangle$, for each source.

Figure 11 shows the variation of $dr$ when the second source is moved away from the first source. The two sources cannot be separated as long as their angular distance is below 10', which is approximately the size of the point-spread function central peak, as expected. When the separation between the two sources is between 10' and 20', the localization is biased by the presence of another source. Above 20', the interference between the two sources can be neglected. We also test the impact of the relative intensity between the two sources. When the second source is less intense by a factor two, the localization performance for the first source is improved roughly by the same factor. The localization of the second source also improves thanks to a better subtraction of the first source.
<figure><img src="image_16.png" /><figcaption>**Figure 12.** The signal (smooth curves) and background (curves with markers) counts are estimated as a function of the signal intensity. For each point, 1000 source positions are randomly drawn from 0.3 < *y* < 0.7 and 0.3 < *z* < 0.7. Three background levels are considered: 60 counts (blue), 600 counts (magenta), and 3000 (dark red). They are represented by horizontal dashed lines.</figcaption></figure>

### 4.5. Signal and Noise Counts

In Section 3.3, we developed an innovative but nontrivial method to estimate the signal and background counts. To test the signal and background estimators, we vary the source intensity ($S_1$) and the background level ($B$). Both quantities are then estimated using Equations (21) and (22), respectively. The result of this study is presented in Figure 12. The signal counts are systematically overestimated because of the simplification used to estimate the $C_{\epsilon 1}$ matrix (see Section 3.3). For instance, when $S_1 \approx 200$, the signal is overestimated by ~10% when $B=600$. The same effect leads to a systematic bias when estimating the background count: it is underestimated for low signal fluxes and overestimated for large signal fluxes.

Figure 13 shows the resulting signal-to-noise ratio, $\rho_1 = S_1/\sqrt{B}$, estimated when fixing $B=600$. It is slightly overestimated: for $10 < \rho_1 < 100$, the signal-to-noise bias does not exceed 20%.

The method used to estimate $S$ and $B$ must be robust when several sources are present in the MXT field of view. The particular example of Figure 6, and comment at the end of Section 3.4, show that our estimators give satisfactory results. This method to estimate counts is iterative and is, therefore, intrinsically biased by the presence of less intense sources of X-ray photons. This bias is acceptable for onboard calculations. More advanced analyses can be conducted offline using X-ray source catalogs and multiple-source fitting techniques.

## 5. Summary

We presented the localization algorithm developed to process the images captured by the MXT mounted on the SVOM satellite. The images are analysed on board to detect and localize X-ray sources rapidly in the telescope's field of view. Given the Lobster Eye optical design of the telescope and the resulting cross-shaped structure of the point-spread function, we developed specific analysis methods. Cross-correlation techniques were selected to maximize the sensitivity to faint sources. This paper shows that a localization accuracy better than 2' can be achieved when the telescope cumulates ~150 X-ray photons. In Gotz et al. (2022) it is shown that this number guarantees that more than 85% of gamma-ray bursts will be localized with an uncertainty better than 2' after 30 minutes. Moreover, we developed a new and reliable method to

<figure><img src="image_17.png" /><figcaption>**Figure 13.** Estimated signal-to-noise ratio as a function of the true signal-to-noise ratio, fixing $B=600$. The diagonal is indicated by the dashed line.</figcaption></figure>

estimate the signal and background counts from the cross-correlation map from which we derive the signal-to-noise ratio for multiple sources in the field of view.

The MXT localization algorithm relies on many parameters, some of which were characterized and presented in this paper. All of them are configurable from the ground. During the first months of the SVOM mission, these parameters will be adjusted using real data collected in space. They will then be uploaded on board to maximize the performance of the localization algorithm. These parameters will be updated over time to follow aging effects.

The SVOM satellite will be launched in 2023 and will observe gamma-ray bursts shortly after that. Moreover, SVOM will continue X-ray observations and take over when other satellites, such as Swift (Gehrels 2004) or Fermi (Michelson et al. 2010), will terminate their missions. SVOM will play an important role in multi-messenger astronomy, in particular in coincidence with gravitational wave detectors. The localization algorithm described in this paper will provide rapid follow-up of gravitational wave alerts to identify electromagnetic counterparts.

This work was developed in the context of the SVOM/MXT science group. We gratefully acknowledge the support from the group and we value the fruitful discussions that took place. In
particular, we are grateful to the MXT team at the University of Leicester for providing the flight-model point-spread function used in this paper, with special thanks to Richard “PSF wizard” Willingale. We also thank the MXT team at the Max Planck Institute for Extraterrestrial Physics for hosting the final performance tests of the MXT conducted at the Panter facility, Neuried Germany, in 2021 November. The PhD thesis of S.H. was supported by the Centre National d'Etudes Spatiales in France.

# Appendix
## Cross-correlation Discussion

To cross-correlate the photon map $D$ with the point-spread function $P$, we could have chosen a standard definition for the cross-correlation matrix:

$$C_{\text{std}}[i][j] = \sum_{i'=0}^{N_D-1} \sum_{j'=0}^{N_D-1} D[i'][j'] \times P[i' + i][j' + j], \quad (A1)$$

where the $P$ matrix is twice the size of $D$ in both dimensions. To apply the cross-correlation theorem (Papoulis 1962), the matrices must have the same size. To this end, we can extend the photon map with zero padding:

$$D_{\text{ext}}[i][j] = \begin{cases} D[i][j] & \text{if } i < N_D \text{ and } j < N_D \\ 0 & \text{if } N_D \le i < N_P \text{ or } N_D \le j < N_P. \end{cases} \quad (A2)$$

The cross-correlation coefficients can now be obtained with:

$$C_{\text{std}}[i][j] = \sum_{i'=0}^{N_P-1} \sum_{j'=0}^{N_P-1} D_{\text{ext}}[i'][j'] \times P[i' + i][j' + j]. \quad (A3)$$

We apply the correlation theorem to express the cross-correlation matrix in the Fourier domain:

$$\tilde{C}_{\text{std}}[k][l] = N_P^2 \times \tilde{D}_{\text{ext}}[k][l] \times \tilde{P}^*[k][l], \quad (A4)$$

where the Fourier transforms, represented by a tilde attribute, are performed over $N_P \times N_P$ matrices. We decided not to use this implementation of the cross-correlation and work with Equation (6) instead. In terms of performance, there are several advantages:

1. All calculations are performed with $N_D \times N_D$ matrices instead of $N_P \times N_P$ matrices. In particular, $N_P \times N_P$ discrete Fourier transforms, used in Equation (A4), are computationally more expensive than $N_D \times N_D$ Fourier transforms used in Equation (6).

2. It is possible to update the MXT point-spread function from the ground with telecommands. The size of the point-spread function matrix is therefore critical to optimize the uplink bandwidth. The implementation of Equation (6) reduces the size of the matrix by a factor four.

Our definition of the cross-correlation is represented in Figure 3. To illustrate further our implementation of the cross-correlation calculation of Equation (4), let us consider a simplistic point-spread function. It is reduced to a central peak equally distributed over four matrix cells at the center: $P[N_P/2][N_P/2] = P[N_P/2 - 1][N_P/2] = P[N_P/2][N_P/2 - 1] = P[N_P/2 - 1][N_P/2 - 1] = 0.25$, and $P = 0$ for any other cell.

We apply Equation (4) and we get:

$$C[i][j] = D[N_P/2 + i][N_P/2 + j] \times P[N_P/2][N_P/2] \\ + D[N_P/2 - 1 + i][N_P/2 + j] \times P[N_P/2 - 1][N_P/2] \\ + D[N_P/2 + i][N_P/2 - 1 + j] \times P[N_P/2][N_P/2 - 1] \\ + D[N_P/2 - 1 + i][N_P/2 - 1 + j] \times P[N_P/2 - 1] \\ \times [N_P/2 - 1]. \quad (A5)$$

Using the circular $N_D$-periodicity of $D$ and the definition of $P$, we can write:

$$C[i][j] = 0.25 \times (D[i][j] + D[i-1][j] + D[i][j-1] \\ + D[i-1][j-1]). \quad (A6)$$

Now, let us consider a photon map where the peak is contained in one single cell $(i_0, j_0)$: $D[i_0][j_0] > 0$ and $D = 0$ for any other cell. In this configuration, exactly four cross-correlation coefficients have a nonzero value: $C[i_0][j_0] = C[i_0 + 1][j_0] = C[i_0][j_0 + 1] = C[i_0 + 1][j_0 + 1] = 0.25 \times D[i_0][j_0]$. Following Equation (9), the peak position is reconstructed where the four nonzero cross-correlation cells meet, at the top-right corner of cell $(i_0, j_0)$. This basic example shows another advantage of the definition of Equation (4): the source localization can directly be derived from the maximum in a cross-correlation map. With this example, it is also important to note that the source position is reconstructed at $y = (i_0 + 1)/N_D$ and $z = (j_0 + 1)/N_D$, in intrinsic coordinates, while it is actually located at $y = (i_0 + 0.5)/N_D$ and $z = (j_0 + 0.5)/N_D$. This is half of a cell $(N_D/2)$ higher in both the y- and z-directions. This bias, illustrated in Figure 3, is corrected in Equation (10).

## ORCID iDs

Martin Boutelier https://orcid.org/0000-0001-9645-1436

Diego Götz https://orcid.org/0000-0001-9494-0981

Benjamin Schneider https://orcid.org/0000-0003-4876-7756

## References

Abbott, B. P., Abbott, R., Abbott, T. D., et al. 2018, LRR, 21, 3

Beckmann, V., & Shrader, C. 2012, The Central Engine (New York: Wiley), 35

Boller, T., Freyberg, M. J., Trumper, J., et al. 2016, A&A, 588, 103

Caraveo, P., Tagliaferri, G., Gehrels, N., et al. 2015, Swift: 10 Years of Discovery (SWIFT 10), Vol. 233 (Trieste: PoS), 074

Ceraudo, F., Meuris, A., Doumayrou, E., et al. 2020, NIMPA, 973, 164164

Costa, E., Frontera, F., Heise, J., et al. 1997, Natur, 387, 783

Dong, Y., Wu, B., Li, Y., Zhang, Y., & Zhang, S. 2010, SCPMA, 53, 40

Feldman, C. H., Willingale, R., Pearson, J., et al. 2020, Proc. SPIE, 11444, 114441K

Gehrels, N. 2004, in AIP Conf. Proc, 727: GAMMA-RAY BURSTS: 30 YEARS OF DISCOVERY: Gamma-Ray Burst Symposium (Melville, NY: AIP), 637

Godet, O., Beardmore, A. P., Abbey, A. F., et al. 2009, A&A, 494, 775

Gotz, D., et al. 2022, ExA, in press

Gosset, L. 2019, Theses, Université Paris-Saclay

Kenyon, S. J., & Hartmann, L. 1987, ApJ, 323, 714

McClintock, J. E., & Remillard, R. A. 2006, in Black Hole Binaries, ed. W. Lewin & M. van der Klis (Cambridge: Cambridge Univ. Press)

Michelson, P. F., Atwood, W. B., & Ritz, S. 2010, RPh, 73, 074901

Papoulis, A. 1962, The Fourier Integral and its Applications (New York: McGraw-Hill)
Revnivtsev, M., Sazonov, S., Krivonos, R., Ritter, H., & Sunyaev, R. 2008, A&A, **489**, 1121

Robinet, F., & Hussein, S. 2021, SatAndLight: a simulation toolkit for space telescopes, https://svom.pages.in2p3.fr/SatAndLight/

Robinson, E. L. 1976, ARA&A, **14**, 119

Schneider, B., Renault-Tinacci, N., Götz, D., et al. 2022, ExA, in press

Takahashi, T., den Herder, a. A., Bautz, M., et al. 2014, Proc. SPIE, **9144**, 914424

Wang, T., Qiu, Y., Cai, H., & Deng, J. 2010, SCPMA, **53**, 51

Wei 2016, arXiv:1610.06892

Zhang, B. 2018, The Physics of Gamma-Ray Bursts (Cambridge: Cambridge Univ. Press)