Free Access
Issue
A&A
Volume 613, May 2018
Article Number A2
Number of page(s) 17
Section Numerical methods and codes
DOI https://doi.org/10.1051/0004-6361/201732149
Published online 15 May 2018

© ESO 2018

1 Introduction

Testing Einstein’s general theory of relativity (GR) in the strong-field limit remains a difficult challenge. Recently, gravitational waves have been used to test GR’s predictions concerning merging black holes (see, e.g., Abbott et al. 2016), whose observations are consistent with GR and the existence of black holes (Chirenti & Rezzolla 2016). Building on Cunningham & Bardeen (1972), Falcke et al. (2000) suggested that a black hole’s “shadow” may be used to probe the accuracy of GR in the strong-field limit; observational efforts using millimeter-wavelength very long baseline interferometry (mm-VLBI) techniques are now underway (Falcke et al. 2000; Doeleman et al. 2008; Doeleman et al. 2012; Fish et al. 2016; Johnson et al. 2015; Goddi et al. 2016).

Prime motivating targets for this research are the putative accreting supermassive black holes (SMBHs) at the center of the Milky Way (Sagittarius A*, hereafter Sgr A*; Falcke & Markoff 2013; Genzel et al. 2010) and M 87 (Doeleman et al. 2012). The first attempts to predict the electromagnetic appearance of black holes were made in the 1970s (Cunningham & Bardeen 1972; Luminet 1979; Viergutz 1993), however, due to the limited observational capacity of that era, it was considered a somewhat academic exercise. With the advent of mm-VLBI techniques, and the potential to image the black-hole shadows in Sgr A*, efficient and flexible GR ray-tracing codes are becoming a key component of image-based tests of GR in the strong-field limit. It is no longer sufficient to calculate the appearance of thin disks or background stars, but rather, one has to consider a black hole surrounded by a heterogeneous, partially optically thick plasma. In order to accurately reproduce the appearance and spectrum of such a source to a distant observer, the effects of a strong gravitational field (gravitational lensing, redshift, and relativistic boosting) must be taken into account. For these reasons, creating synthetic observational data from physical models of the SMBH and its environment is an important component of the theoretical study of objects like Sgr A*.

Besides the study of SMBH’s, any astrophysical problem that involves radiative transfer and strong gravity could be tackled by general-relativistic radiative transfer codes. One example of such alternative applications is a binary black-hole system. For such systems, no analytical spacetime is known, and a numerical spacetime must be employed. Another example is the study of radiative transfer near neutron stars, for which, again, no exact metric is known (although it may be approximated by the Kerr metric, see, e.g., Parfrey & Tchekhovskoy 2017). Finally, a general-relativistic radiative transfer code could be applied to problems that do not involve compact objects, such as the propagation of radiation in an expanding FRW-spacetime.

Certain spacetimes, such as the Schwarzschild spacetime, are amenable to analytical solution of the geodesic equation (Beloborodov 2002; De Falco et al. 2016). A semi-analytical solution to the geodesic equation in the Kerr spacetime is presented by Dexter & Agol (2009). Analytical solutions to the geodesic equation near compact objects have also been studied in the context of, for example, radiating pulsars (Poutanen & Beloborodov 2006). Analytically or semi-analytically computed null geodesics have the important advantage of excellent spatial accuracy that is independent of integration step size. On the other hand, the analytical formulae may be expensive to evaluate, and thus a numerical code may, in some cases, offer superior performancewhen sensitive radiative-transfer calculations (which require a relatively small spatial integration step size) are included. Additionally, analytical codes are restricted to the set of spacetimes for which the metric and connection are known analytically.

Numerical radiative-transfer codes, capable of producing images and/or spectra from general relativistic magneto-hydrodynamical (GRMHD) simulations by performing radiative-transfer calculations in strong gravity, have been studied in a number of works (Broderick 2006; Noble et al. 2007; Dexter & Agol 2009; Shcherbakov & Huang 2011; Chan et al. 2013; Dexter 2016). Dexter (2016)’s grtrans is a CPU-based code that uses a semi-analytic method to construct geodesics and offers polarized radiative transfer in the Kerr spacetime; Moscibrodzka & Gammie (2018)’s ipole is a numerical code that offers the same functionality, but for general spacetimes. Chan et al. (2013)’s GRay is a fully numerical GPU-based CUDA code capable of handling arbitrary spacetime metrics; it was recently succeeded by GRay2, a general-purpose geodesic integrator for the Kerr spacetime (Chan et al. 2017). Takahashi & Umemura (2017) have recently presented ARTIST, a code that is not based on a ray-tracing algorithm, but which is capable of reproducing radiation fields (wave fronts) in the Kerr spacetime, with the aim of including radiation pressure in GRMHD simulations. Although both GPU and CPU codes that perform radiative-transfer calculations are available, existing codes are specialized to one or the other. Many are also restricted to hardware from a single manufacturer, so that deciding which code to use may strongly depend on the hardware available locally.

In this paper, we present a new code, RAPTOR. It was designed with two goals in mind: minimizing the number of physical assumptions, by supporting arbitrary spacetimes and time-dependent radiative transfer, and maximizing flexibility of use, by supporting all commonly available CPU and GPU hardware. Although the code was developed with the science case described above in mind, it may be readily applied to any astrophysical problem involving radiative transfer in strong gravity, as it is equipped to deal with numerical as well as analytical metrics. One alternative application for the code that we have explored in particular concerns visualisation of black holes in virtual reality, a project that has applications in outreach and intuitive understanding of black hole accretion (Davelaar et al., in prep.). Presently, we only compute the specific intensity as seen by the observer. The next step, which involves polarized radiative transfer, will be covered in a future paper. In this work, we demonstrate correct operation of RAPTOR and couple it to GRMHD simulation data from BHAC (Porth et al. 2017) and HARM2D (Gammie et al. 2003) using radiative-transfer models (Mościbrodzka et al. 2009). We also perform a detailed comparison with the radiative-transfer code BHOSS (Younsi, in prep.) by specifying identical initial conditions in both codes and comparing the resulting images. Finally, in order to evaluate the accuracy of theoretical predictions of the appearance and time-variability of SMBH accretion flows, we apply our new code to studying the slow-light paradigm, in which the assumption of staticity of GRMHD data is relaxed, in the context of accreting black holes. The paper is organized as follows: in Sect. 2, we present the governing equations for calculating (null) geodesics in a curved spacetime, derive two algorithms for solving them numerically, and test our implementations. In Sect. 3, we discuss the covariant radiative-transfer equation and the accompanying numerical algorithms for solving it. Section 4 contains a library of verification and performance results for the geodesic and radiative-transfer integrators. In Sect. 5, we apply RAPTOR to investigate the slow-light paradigm for imaging GRMHD simulations.

2 Equations of motion for light rays

The appearance and spectrum of an accreting black hole recorded by a distant observer are strongly affected by gravitational effects such as lensing and redshift. In order to construct an accurate image or spectrum, these effects must be taken into account. Relativistic ray-tracing algorithms solve the equations of motion for light in curved spacetime, automatically taking into account all gravitational effects. Such algorithms are discussed in this section.

2.1 Geodesic equation

In Newtonian physics, test particles move along straight lines in the absence of any force. Analogously, in GR, test particles move along so-called geodesics when in free fall, in other words, when acted upon by gravity only. Furthermore, in GR gravitational effects on test particles are represented through curvature of the spacetime in which the particles move.

The structure of spacetime in GR is described by the symmetric rank-2 metric tensor gμν and the motion of test particles is described by the geodesic equation d2xαds2=Γμναdxμdsdxνds.\begin{equation*}\frac{\textrm{d}^2 x^{\alpha}}{\textrm{d}s^2} = -{\mathrm{\Gamma}}^{\alpha}_{\ \mu \nu} \frac{\textrm{d}x^{\mu}}{\textrm{d}s} \frac{\textrm{d}x^{\nu}}{\textrm{d}s}\,. \end{equation*}(1)

Here, xα is the particle’s position; s is a scalar parameter of the particle’s world line, and Γμνα${\mathrm{\Gamma}}^{\alpha}_{\ \mu \nu}$ is the “connection” of the spacetime through which the particle propagates. The connection depends on first derivatives of the metric and is given by Γμνα=12gαρ[ μgνρ+νgμρρgμν ].\begin{equation*} {\mathrm{\Gamma}}^{\alpha}_{\ \mu \nu} = \frac{1}{2} g^{\alpha \rho} \left[ \partial_{\mu} g_{\nu \rho} + \partial_{\nu} g_{\mu \rho} - \partial_{\rho} g_{\mu \nu} \right]\,.\vspace*{-3pt}\end{equation*}(2)

Massive particles move along “timelike” geodesics. Adopting the Lorentzian metric signature (−, +, +, +) and geometrized units, so that G = c = 1, the spacetime interval for massive particles of unit mass is negative and unitary: gμνdxμdτdxνdτ=1,\begin{equation*} g_{\mu \nu} \frac{\textrm{d}x^{\mu}}{\textrm{d}\tau} \frac{\textrm{d}x^{\nu}}{\textrm{d}\tau} = -1\,,\end{equation*}(3) where τ is the proper time measured by an observer co-moving with the particle. Photons, which are massless and always travel at the speed of light, travel along “null” geodesics with zero spacetime interval: gμνdxμdλdxνdλ=0.\begin{equation*}g_{\mu \nu} \frac{\textrm{d}x^{\mu}}{\textrm{d}\lambda} \frac{\textrm{d}x^{\nu}}{\textrm{d}\lambda} = 0\,. \end{equation*}(4)

In this case, the geodesic is parametrized by a so-called affine parameter λ, as no proper time elapses for photons. From now on, we only consider null geodesics.

2.2 Numerical integration of the geodesic equation

In this section we present two algorithms to solve Eq. (4) numerically, and discuss a number of tests of the integrator’s performance.

Since the geodesic Eq. (1) represents a set of four coupled second-order ordinary differential equations (ODE’s), we must specify both an initial position x0α$x^{\alpha}_0$ and an initial contravariant four-momentum vector, which in the case of radiation is the so-called wave vector k0α$k^{\alpha}_0$, to obtain the full geodesic by numerical integration. As a first step, we can write Eq. (1) as a system of eight coupled first-order ODE’s: dxαdλ=kα,dkαdλ=Γμναkμkν. \begin{eqnarray}\frac{\textrm{d} x^{\alpha}}{\textrm{d}\lambda} &=& k^{\alpha},\\ \frac{\textrm{d} k^{\alpha}}{\textrm{d}\lambda} &=& -{\mathrm{\Gamma}}^{\alpha}_{\ \mu \nu} k^{\mu} k^{\nu}.\end{eqnarray}

We must now choose an appropriate integration scheme to solve Eq. (5). Since we aim to strike a balance between accuracy and efficiency, we present two alternatives, one of which is more accurate while the other is less computationally expensive.

2.2.1 Runge-Kutta integrator

We first choose the popular 4th-order Runge-Kutta integration method (RK4) to solve Eq. (5) numerically. In the case of the geodesic equation there are eight dependent variables (the components of xα and kα), and we must evaluate 32 “update coefficients" for the RK4 integration: C1,xα=Δλkα,C2,xα=Δλ(kα+12C1,xα),C3,xα=Δλ(kα+12C2,xα),C4,xα=Δλ(kα+C3,xα),C1,kα=Δλfα(xi_ ,ki_ ),C2,kα=Δλfα(xi_ +12C1,xi_ ,ki_ +12C1,ki_ ),C3,kα=Δλfα(xi_ +12C2,xi_ ,ki_ +12C2,ki_ ),C4,kα=Δλfα(xi_ +C3,xi_ ,ki_ +C3,ki_ ), \begin{eqnarray} C_{1,x^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot k^{\alpha},\\ C_{2,x^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot \left( k^{\alpha} + \tfrac{1}{2} C_{1,x^{\alpha}} \right),\\ C_{3,x^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot \left( k^{\alpha} + \tfrac{1}{2} C_{2,x^{\alpha}} \right), \\ C_{4,x^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot \left( k^{\alpha} + C_{3,x^{\alpha}} \right), \\ C_{1,k^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot f^{\alpha}\left(x^{\underline{i}}, k^{\underline{i}} \right), \\ C_{2,k^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot f^{\alpha}\left( x^{\underline{i}} + \tfrac{1}{2} C_{1,x^{\underline{i}}}, k^{\underline{i}} + \tfrac{1}{2} C_{1,k^{\underline{i}}}\right), \\ C_{3,k^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot f^{\alpha}\left( x^{\underline{i}} + \tfrac{1}{2} C_{2,x^{\underline{i}}}, k^{\underline{i}} + \tfrac{1}{2} C_{2,k^{\underline{i}}}\right), \\ C_{4,k^{\alpha}} &=& {{\mathrm{\Delta}}} \lambda \cdot f^{\alpha}\left( x^{\underline{i}} + C_{3,x^{\underline{i}}}, k^{\underline{i}} + C_{3,k^{\underline{i}}}\right),\end{eqnarray} where fα represents the right-hand side of Eq. 1, and i_${\underline{i}}$ is a shorthand indicating that all components of xα and kα appear as variables of fα, i.e. fα(xi_ ,ki_ )=fα(x1,x2,x3,x4,k1,k2,k3,k4)$f^{\alpha}\left(x^{\underline{i}}, k^{\underline{i}} \right)=f^{\alpha}\left(x^{1}, x^{2}, x^{3}, x^{4},k^{1},k^{2},k^{3},k^{4} \right)$. Having calculated all update coefficients using Eq. 14, we can compute the new values for xα and kα as follows: xnewα=xα+16(C1,xα+2C2,xα+2C3,xα+C4,xα)+O(Δλ5),knewα=kα+16(C1,kα+2C2,kα+2C3,kα+C4,kα)+O(Δλ5). \begin{eqnarray} x^{\alpha}_{\textrm{new}} &=& x^{\alpha} + \tfrac{1}{6} \left( C_{1,x^{\alpha}} + 2 C_{2,x^{\alpha}} + 2 C_{3,x^{\alpha}} + C_{4,x^{\alpha}} \right) + O\left({{{\mathrm{\Delta}}} \lambda}^5\right)\,,\\ k^{\alpha}_{\textrm{new}} &=& k^{\alpha} + \tfrac{1}{6} \left( C_{1,k^{\alpha}} + 2 C_{2,k^{\alpha}} + 2 C_{3,k^{\alpha}} + C_{4,k^{\alpha}} \right) + O\left({{{\mathrm{\Delta}}} \lambda}^5\right)\,.\end{eqnarray}

2.2.2 Verlet integrator

Although the RK4 integrator is accurate, more efficient integrators exist. Evaluating the connection coefficients is the most computationally expensive operation in our geodesic integration algorithms; structuring our code in this manner allows us to maintain a general scheme that is capable of interfacing with GRMHD simulations in different coordinate systems, as well as of handling spacetimes that are completely arbitrary such as those in the framework of Rezzolla & Zhidenko (2014) and Konoplya et al. (2016), and recently employed by Younsi et al. (2016). Dolence et al. (2009) have presented the velocity Verlet algorithm (Swope et al. 1982) as a more efficient alternative to the RK4 algorithm, as it relies on fewer evaluations of the connection coefficients: xn+1α=xnα+knαΔλ+12(dkαdλ)n(Δλ)2,kn+1,pα=knα+(dkαdλ)nΔλ,(dkαdλ)n+1=Γμνα(xn+1α)kn+1,pμkn+1,pν,kn+1α=knα+12[ (dkαdλ)n+(dkαdλ)n+1 ]Δλ.\begin{align} & x^{\alpha}_{n+1}=x^{\alpha}_n + k^{\alpha}_n {{\mathrm{\Delta}}} \lambda + \frac{1}{2} \left( \frac{\textrm{d} k^{\alpha}}{\textrm{d}\lambda}\right)_n \left({{\mathrm{\Delta}}} \lambda \right)^2\!, \\ & k^{\alpha}_{n+1,p} = k^{\alpha}_n+\left( \frac{\textrm{d} k^{\alpha}}{\textrm{d}\lambda}\right)_n {{\mathrm{\Delta}}} \lambda\,, \\ & \left( \frac{\textrm{d} k^{\alpha}}{\textrm{d}\lambda}\right)_{n+1} = -{\mathrm{\Gamma}}^{\alpha}_{\ \mu \nu} \left( x^{\alpha}_{n+1} \right) k^{\mu}_{n+1,p} \ k^{\nu}_{n+1,p}\,,\\ & k^{\alpha}_{n+1} = k^{\alpha}_n+\frac{1}{2} \left[ \left( \frac{\textrm{d} k^{\alpha}}{\textrm{d}\lambda}\right)_n + \left( \frac{\textrm{d} k^{\alpha}}{\textrm{d}\lambda}\right)_{n+1} \right] {{\mathrm{\Delta}}} \lambda \,.\end{align}

The accuracy of this algorithm can be improved by using the result of Eq. (20) to recompute the derivative (Eq. (19)) with kn+1,pμ=kn+1μ$k^{\mu}_{n+1,p}=k^{\mu}_{n+1}$, and then reevaluating Eq. (20).

In this paper we have restricted our investigations to the Kerr spacetime, which represents an uncharged black hole with (in the general case) non-zero angular momentum characterized by the spin parameter a := JM2, where J is the black-hole’s angular momentum and M its mass. Near the black-hole event horizon, as well as near the symmetry axis (the spin axis), numerical integration becomes difficult due to coordinate singularities. The following adaptive step-size routine introduced by Noble et al. (2007) and Dolence et al. (2009) is adopted for accuracy and efficiency in difficult regions by reducing the step-size Δ λ in these cases: dλ=1| dλx1 |1+| dλx2 |1+| dλx3 |1, \begin{eqnarray*} \textrm{d}\lambda&=&\frac{1}{{\left| \textrm{d}\lambda_{x^1} \right|^{-1}} + {\left| \textrm{d}\lambda_{x^2} \right|^{-1}} + {\left| \textrm{d}\lambda_{x^3} \right|^{-1}}},\end{eqnarray*}(21) where dλx1:=ϵ/(| kr |+δ),dλx2:=ϵ min(xθ,1xθ)/(| kθ |+δ),dλx3:=ϵ/(| kϕ |+δ). \begin{eqnarray} \textrm{d}\lambda_{x^1} &:=& \epsilon \ / \left( \left| k^r \right| + \delta \right)\!,\\ \textrm{d}\lambda_{x^2} &:=& \epsilon \ \text{min} \left(x^{\theta}, 1 - x^{\theta} \right) / \left( \left| k^{\theta} \right| + \delta \right)\!, \\ \textrm{d}\lambda_{x^3} &:=& \epsilon \ / \left( \left| k^{\phi} \right| + \delta \right)\!.\end{eqnarray}

Here, δ is a very small (positive) number that protects against dividing by 0, while ϵ is a (positive) scaling parameter by which one can influence the scale of all steps.

2.3 Initial conditions: the virtual camera

Specific to the case of a Kerr black hole, consider a distant observer whose inclination angle with respect to the black-hole rotation axis is given by i so that an inclination angle of 90° means the observer is in the black-hole equatorial plane, while an inclination angle of 0° means that we are looking at the black hole along the direction of its spin axis. In the observer’s image plane, which is oriented so that its vertical axis is aligned with the black-hole spin axis (for any non-zero inclination angle), we define the impact parameters α (the distance from the black-hole rotation axis) and β (the distance in the direction perpendicular to α). The wave vector kα is then constructed following Cunningham & Bardeen (1972) as L=αE1cos2i,Q=E2[ β2+cos2i(α21) ],kt=E,kϕ=L,kθ=sign(β)| QL2cot2θ+E2cos2θ |, \begin{eqnarray} L&=& -\alpha E \sqrt{1-\cos^2{i} }\,,\\ Q&=& E^2 \left[ \beta^2 + \cos^2{i} \left(\alpha^2-1\right) \right]\!, \\ k_t&=&-E, \\ k_{\phi}&=&L, \\ k_{\theta}&=&\text{sign}(\beta)\, \sqrt{\left| Q-L^2 \cot^2{\theta} + E^2 \cos^2{\theta} \right|}\,,\end{eqnarray} where E is the wave vector’s total energy, L is the projection of the angular momentum parallel to the black- hole spin axis, and Q is the Carter constant (Carter 1968). The radial component of the wave vector, kr, is fixed by demanding that it is a null vector, that is, kαkα = 0 (kr may be positive or negative, corresponding to out- and ingoing rays, respectively). Boyer-Lindquist (BL) coordinates (Boyer & Lindquist 1967) are used to construct the initial wave vector.

2.4 Coordinate systems and transformations

One of the main purposes of RAPTOR is to integrate the radiative-transfer problems generic black-hole spacetimes such as those proposed in alternative to GR theories of gravity (Rezzolla & Zhidenko 2014). Hence, null-geodesic integration and the radiative-transfer equations described in the next section are formulated in a way that is independent of the choice of coordinate system or of the geometry of the spacetime. In view of this, RAPTOR has been constructed so as to switch easily among various grids and geometries. In particular, when considering the solution of the radiative-transfer equation near black holes, it is important that the coordinate system is accurate near the horizon, and compatible with GRMHD simulations; the latter customarily adopt a spherical-polar coordinate system using a logarithmic scale for the radial coordinate and a denser polar coordinate mapping near the equatorial plane (so-called modified coordinate systems, see, e.g., Gammie et al. 2003). In this paper, we utilized four different coordinate systems for the Kerr spacetime, namely: the aforementioned Boyer-Lindquist coordinates, the modified Boyer-Lindquist (MBL) coordinates, the logarithmic Kerr-Schild (KS) coordinates (Kerr & Schild 1965), and the modified Kerr-Schild (MKS) coordinates (Gammie et al. 2003). Some of the transformation laws between these coordinate systems are given explicitly in Appendix A, while a test of the code performance is presented in Appendix B.

3 Radiative transfer

Having previously computed the relevant null geodesics, an algorithm is needed that will perform radiative-transfer calculations along them. In this section we introduce the relevant equations. Our present algorithm does not include radiation refraction effects due to the plasma (which is a good approximation if the radiation frequency is greater than the plasma frequency, νp=8980ne1/2$\nu_p=8980\, \ n_{\textrm{e}}^{1/2}$, where ne is the electron number density), all forms of scattering, and polarization although all of these effects can be incorporated in a ray-tracing simulations (see, e.g., Broderick 2006; Dolence et al. 2009; or Dexter 2016). However, RAPTOR integrates the radiative transfer equations taking into account changes in the plasma structure during the light transport (Sect. 5), which is usually neglected. Hence, our code is suitable for first-principles study of time variability of mock observations of accreting black holes or any other compact objects surrounded by plasma.

3.1 Covariant radiative-transfer equation

The transfer equation for the Lorentz invariant quantity Iνν3, where Iν is the specific intensity of radiation at frequency ν, is given by (Lindquist 1966): ddλ(Iνν3)=jνν2ναν(Iνν3),\begin{equation*} \frac{\textrm{d} }{\textrm{d}\lambda} \left( \frac{I_{\nu}}{\nu^3} \right) = \frac{j_{\nu}}{\nu^2} - \nu \alpha_{\nu} \left(\frac{I_{\nu}}{\nu^3}\right)\,,\end{equation*}(30) where again λ is the affine parameter, which we defined to be increasing as the ray travels from the plasma toward the observer, ν is the photon’s frequency, jν is the plasma emission coefficient, and αν is the plasma absorptivity. We note that all of these physical quantities are computed in an inertial frame that is co-moving with the plasma (hereafter the fluid frame). In the present case of unpolarized radiative transfer, the necessary transformation between frames can be achieved simply by computing the ray’s frequency in the fluid frame: ν=kαuα,\begin{equation*} \nu=-k^{\alpha} u_{\alpha}\,,\end{equation*}(31) and using ν to relate the fluid frame emission and absorption coefficients to their Lorentz-invariant counterparts, so that we do not have to construct the fluid frame explicitly, as is the case with polarized radiative transfer.

The intensity seen by the observer, Iν,obs=Iν(λobs)$I_{\nu,\textrm{obs}} = I_{\nu}\left(\lambda_{\textrm{obs}}\right)$, is then obtained by integrating Eq. (30) from λ0 to λobs and subsequently converting from the Lorentz-invariant quantity Iνν3 to the specific intensity in the observer frame using Iν,obs=Iνν3νobs3.\begin{equation*} I_{\nu,\textrm{obs}} = \frac{I_{\nu}}{\nu^3} \nu_{\textrm{obs}}^3\,.\end{equation*}(32)

Although it is possible to integrate Eq. (30) directly, more accurate numerical results can be obtained by employing the formal solution to the transfer equation (see e.g., Dexter & Agol 2009), which recasts Iν as a function of the optical depth τν given by: τν(λ)=λ0λν ανdλ.\begin{equation*} \tau_{\nu} \left(\lambda\right)=\int_{\lambda_0}^{\lambda} \nu \alpha_{\nu}\textrm{d}\lambda'\,.\end{equation*}(33)

We note that the optical depth, which describes the fraction of photons that pass through a certain absorbing volume, is a Lorentz-invariant quantity. The formal solution to the radiative-transfer equation is then Iνν3(τν)=Iνν3(τν,0)exp(τν)+τν,0τνexp (τντν )jνν3ανdτν ,\begin{equation*} \frac{I_{\nu}}{\nu^3} \left( \tau_{\nu} \right) = \frac{I_{\nu}}{\nu^3} \left( \tau_{\nu,0} \right) \exp{\left(-\tau_{\nu}\right)}+ \int_{\tau_{\nu,0}}^{\tau_{\nu}} \exp{-\left( \tau_{\nu} -\tau_{\nu}' \right)} \frac{j_{\nu}}{\nu^3 \alpha_{\nu}} \textrm{d}\tau_{\nu}'\,,\end{equation*}(34) where τν,0 defines the location along the null geodesic where integration begins. We can repeatedly solve Eq. (34) for each integration step. Assuming that jν is constant over the step, we obtain Iνν3(τν)=Iνν3(τν,0)exp(τν)+jνν3αν(1exp(τν)).\begin{equation*} \frac{I_{\nu}}{\nu^3} \left( \tau_{\nu} \right) = \frac{I_{\nu}}{\nu^3} \left( \tau_{\nu,0} \right) \exp{\left(-\tau_{\nu}\right)}+ \frac{j_{\nu}}{\nu^3 \alpha_{\nu}} \left( 1 - \exp{\left(-\tau_{\nu}\right)} \right)\,.\end{equation*}(35)

The reason for which using Eq. (35) yields better numerical results than direct integration of Eq. (30) with, for example,an explicit Euler scheme, is that in the latter case, the intensity may become negative if we take too large an integration step whenever jν/ν2<ναν(Iν/ν3)${j_{\nu}}/{\nu^2}<\nu \alpha_{\nu} \left( {I_{\nu}}/{\nu^3} \right)$, thus producing grossly incorrect results. Equation (34), on the other hand, contains an integrand that is always positive.

An evenmore numerically advantageous method for calculating the intensity seen by the observer can be obtained by integrating Iν,obs in the opposite direction along the null geodesic with respect to the previous schemes, in other words, from the observer toward the plasma, by splitting Eq. (35) into separate equations for Iν and τν (Younsi et al. 2012). In fact, in this direction, Iν,obs must be a monotonically increasing function of the affine parameter λ¯$\bar{\lambda}$, which we defined to increase in the opposite spatial direction of the previously used affine parameter λ ( λ¯$\bar{\lambda}$ increases as the ray travels further away from the observer). This is because the specific intensity of the ray seen by the observer can only increase, never decrease, by continued integration further away from the camera (see Figs. 1 and 2 for an illustration of the difference between the two strategies).

This method offers three additional advantages over the two methods described above. Firstly, it allows simultaneous integration of the null geodesic and of the specific intensity, as well as cutting off the null-geodesic integration when the optical depth of thematerial between the current location and the camera becomes higher than a threshold value (any radiation emitted beyond this point will be severely attenuated and thus be negligible for the observer). Secondly, it relieves the need for a data structure to store the geodesic in memory before performing radiative-transfer calculations (since we simply integrate Iν,obs along with the geodesic itself). Thirdly, with this method, it is possible to compute appropriate integration step-sizes for both thenull geodesic and the radiative-transfer integration, and then pick the minimum of the two. This avoids situations where the null-geodesic integration, performed separately as if in a vacuum, takes a large step through a plasma that is optically thick at a range of frequencies of interest, yielding inaccurate radiative-transfer calculations.

An expression for Iν,obs can be constructed by considering a ray travelling backward from the camera into a radiating plasma. At each point along the ray’s path, we computed the optical depth of the material between the current location, λ, and the observer’s location, λobs as τν,obs(λ)=λobsλαν (λ)ν dλ.\begin{equation*} \tau_{\nu,\textrm{obs}}\left(\lambda\right) = \int^ {\lambda} _ {\lambda_{\textrm{obs}}} \alpha_{\nu} (\lambda&#x0027;) \ \nu \ \textrm{d}\lambda&#x0027;. \end{equation*}(36)

We can then compute the local invariant emission coefficient, (jν/ν2)$\left({j_{\nu}}/{\nu^2}\right)$, and scale it by exp(τobs)$\exp{\left(-\tau_{\textrm{obs}}\right)}$, resulting in the following expression for the contribution of point λ on the geodesic to the total observed intensity: ddλ¯(Iν,obsνobs3)=jνν2exp(τν,obs(λ¯ )).\begin{equation*} \frac{\textrm{d}}{\textrm{d}\bar{\lambda}}\left( \frac{I_{\nu,\textrm{obs}}}{\nu_{\textrm{obs}}^3} \right) = \frac{j_{\nu}}{\nu^2} \exp{\left(-\tau_{\nu,\textrm{obs}}\left(\bar{\lambda}\right)\right)}\,.\end{equation*}(37)

Integrating over the geodesic then yields the total invariant intensity at the observer, Iν,obs/νobs3${I_{\nu,\textrm{obs}}}/{\nu_{\textrm{obs}}^3}$, which is converted to Iν,obs using Eq. (32) as before.

We have implemented all three integration strategies discussed in this section in RAPTOR and found that integration of Eq. (37) produces the most accurate results in the least amount of time.

thumbnail Fig. 1

Radiative-transfer variables along a particular null geodesic that intersects a radiating plasma near a Kerr black hole (see Fig. 2). Top: local specific intensity Iν (dashed red curve), which is computed by integrating Eq. (34) in the direction of increasing affine parameter λ, and of the specific intensity seen by the observer, Iν,obs (solid black curve), which is computed by integrating Eq. (37) in the direction of decreasing λ. The intensity is normalized with respect to the observed intensity in both cases, so that we expect both curves to approach unity with continued integration, which is illustrated using the blue guideline. We note that Iν is a non-monotonic function of λ while Iν,obs is a monotonic function of λ. We also notethat for Iν,obs and τν,obs, integration proceeds from right to left in these plots, and that Iν,obs converges much faster than Iν. Bottom: optical depth for the same ray.

thumbnail Fig. 2

Synchrotron emission map created using a GRMHD simulation (see Sect. 4.2.2) made using the HARM code (Gammie et al. 2003). Intensity is given in units of Jy pixel−2. The observer frequency is 100 GHz, the inclination angle is 30 degrees, and the disk-dominated emission model discussed in Sect. 5 is used. Note the optically-thick accretion disk and strong emission to the left of the black-hole shadow (this region appears bright due to relativistic beaming). The ray investigated in Fig. 1 is marked by a white dot in this image. This particular ray, travelling from the plasma to the observer, first passes through the bright, relativistically-boosted region, and then through an optically-thick, non-boosted region of the disk, suggesting that the specific intensity along this ray will sharply increase, then decrease, before reaching the observer. Figure 1 shows that this is indeed the case.

4 Code verification

Since the program consists of two parts, namely the integration of the geodesics and the integration of the radiative-transfer equation, correct results must be verified for both. In Sect. 4.1 we verify the correct integration of null geodesics, while in Sect. 4.2 we focus on the radiative-transfer computations.

4.1 Verification of geodesic integration

In his seminal work, Carter (1968) presented three conserved quantities associated with the orbits of photons (or particles) in the Kerr spacetime: E=kt,L=kϕ,Q=kθ2+cos2θ[ a2(μ2kt2)+kϕ2/sin2θ ], \begin{eqnarray} E&=&-k_t,\\ L&=&k_{\phi}, \\ Q&=& k_{\theta}^2 &#x002B; \cos^2{\theta} \left[ a^2 \left( \mu^2 - k_t^2 \right) &#x002B; k_{\phi}^2 / \sin^2{\theta} \right]\!,\end{eqnarray} where Q is the so-called Carter constant. Figure 3 shows, in terms of the L1 -error norms, that these quantities are conserved as expected and that the errors converge respectively to second and fourth order in step-size for the Verlet and RK4 algorithms, for all coordinate systems.

Another interesting test for the geodesic integration comes from considering those null geodesics in the Kerr spacetime that have a complex morphology, looping around the horizon many times before plunging in or escaping. Such pathological geodesics are a good test for the code’s performance in a worst-case scenario because even small errors lead to deviations (e.g., absorption into the event horizon). Table 1 shows the parameters for two such geodesics.

Since geokerr is a semi-analytical code, it provides an excellent reference for the accuracy of a numerical scheme. Plots of the null geodesics described in Table 1, produced by both geokerr and RAPTOR, are shown in Fig. 4.

thumbnail Fig. 3

Convergence plots for the L1-error norms of the conserved quantities E (dashed blue), L (solid black), and Q (dotted red) for the orbit with parameters i = 90°, α = −3.22, β = 1.12, a = 0.998 with different integrator settings. The errors are computed at a fixed coordinate time tfinal. Two guide lines with slopes −2 (solid) and −4 (dashed) are drawn. The +, −, and ×-symbols represent respectively L, Q, and E, for the RK4integrator. The square, hexagon, and circle symbols represent the same quantities for the Verlet integrator.

Table 1

Parameters for the two “difficult” null geodesics under investigation.

thumbnail Fig. 4

Comparison of null geodesics computed by the semi-analytical integrator geokerr to those computed by our fully numerical code. In each case, the geodesic represented by the black dots was computed using geokerr while the geodesic represented by the white dotted line is the output of RAPTOR (dots were chosen for the former geodesic because its variable step-size can otherwise create interpolation issues). The gray spheroid represents the black hole’s outer event horizon. MKS coordinates were used with ϵ = 0.001. The parameters for these geodesics are listed in Table 1.

4.2 Verification of radiative-transfer calculations

4.2.1 Emission line profiles and images of a thin accretion disk

The first model we investigated revolves around line emission profiles emitted from a thin accretion disk, which has been studied by, among others, Luminet (1979) and Laor (1991), and reproduced in Schnittman & Bertschinger (2004, see also Schnittman & Rezzolla 2006, and Dexter & Agol 2009). The model involves a steady state, optically thick, geometrically thin accretion disk which is emitting monochromatic radiation (Novikov & Thorne 1973). The disk extends from the black hole’s innermost stable circular orbit (ISCO), which depends on the black hole spin a (Bardeen et al. 1972), to an outer radius of 15 M. The emission coefficient is proportional to 1∕r2 and there is no radiation absorption. An image of the disk is shown in Fig. 5 (note the effects of relativistic beaming, which brightens the parts of the disk that move toward the observer). Due to relativistic beaming and the gravitational redshift, theline emission is broadened. We computed the spectrum a distant observer would receive by recording the intensity carried by each ray as well as its redshift (which is partly gravitational and partly due to the disk’s velocity).

Figures 6a–d show the spectra recorded by a distant observer for different black-hole spin values (positive/negative spin values refer to prograde/retrograde disk orbits, respectively). These results show a very good agreement with Fig. 5 in Dexter & Agol (2009).

thumbnail Fig. 5

Intensity map of the thin disk model described in Sect. 3. Lensed images of up to tenth order are taken into account, where the order of an image is determined by the number of ray crossings of the equatorial plane. Higher-order images are ignored in the computation of the thin disk line spectra (Figs. 6a–d).

thumbnail Fig. 6

Redshift spectra of the thin disk model described in Sect. 3 for four different coordinate systems. The five different spin parameters examined in these plots are (in descending order for the peaked curves above EobsEem = 1): − 0.99, −0.5, 0, 0.5, 0.99. The results may be compared with with Schnittman & Bertschinger (2004) and Dexter & Agol (2009).

thumbnail Fig. 7

Intensity maps at 230 GHz for the comparison test, with a resolution of 4096 × 4096 pixels. The RAPTOR output (top left panel) and BHOSS output (top right panel) show excellent agreement in total flux density. The relative difference between the output of both codes is plotted in the bottom left panel. The deviations become quite large in the periphery of the image; since the intensity in these regions is low, however, they do not contribute significantly to the integrated flux density, as can be seen in the absolute difference between the two codes (bottom right panel).

4.2.2 Synchrotron images of accretion flow simulated with BHAC

As a final test for our radiative-transfer integrator, we performed a radiative-transfer simulation through GRMHD simulations of hot accretion flow onto a SMBH with properties matching those observed in Sagittarius A* (Sgr A*). The simulations are produced using the BHAC three-dimensional (3D) GRMHD code (Porth et al. 2017). During these calculations, the performance of RAPTOR is monitored.

The dominant emission mechanism of many low-frequency (radio and millimeter wavelengths) models of Sgr A* is continuum synchrotron emission from a relativistically hot magnetized plasma, that is, with Θ e := kBTemec2 ≳ 1, with kB, Te, and me being the Boltzmann constant, the electron temperature and mass, respectively. The synchrotron emission and absorption coefficients depend on the electron distribution function. Here, and in the remaining part the paper, we assumed that the electrons have a thermal, relativistic (Maxwell-Jüttner) distribution function: neTH(γ)=neTHγγ21exp(γ/Θe)ΘeK2(1/Θe),\begin{equation*} n_{\textrm{e}}^{\textrm{TH}}(\gamma)=\frac{n_{\textrm{e}}^{\textrm{TH}} \gamma \sqrt{\gamma^2-1} \exp{\left(-\gamma/{{\mathrm{\Theta}}}_{\textrm{e}}\right)}}{ {{\mathrm{\Theta}}}_{\textrm{e}} K_2\left(1/{{\mathrm{\Theta}}}_{\textrm{e}}\right)}\,, \end{equation*}(41) where γ is an electron’s Lorentz factor and K2 is the modified Bessel function of the second kind. The normalization constant neTH$n_{\textrm{e}}^{\textrm{TH}}$ is the total electron number density, given by integrating the distribution function over all possible electron Lorentz factors: neTH=1neTH (γ)dγ$n_{\textrm{e}}^{\textrm{TH}}=\int_1^{\infty} n_{\textrm{e}}^{\textrm{TH}}\left(\gamma\right) \mathrm{d}\gamma$.

The synchrotron emission coefficient jν of an ensemble of electrons is obtained by integrating the synchrotron emission coefficient of a single electron over the electron energies described by the above distribution function. Since the above expression contains a Bessel function, direct integration is time-consuming. In order to reduce the required computing time for radiative-transfer calculations,we used an approximate formula for the synchrotron emission coefficient provided by Leung et al. (2011): jνTH(ν,θ)=2πe2neTHνs3cK2(Θe1)(X1/2+211/12X1/6)2exp(X1/3),\begin{equation*} j^{\textrm{TH}}_{\nu}(\nu,\theta)=\frac{\sqrt{2} \pi {\textrm{e}}^2 n_{\textrm{e}}^{\textrm{TH}} \nu_s}{3 c K_2({{\mathrm{\Theta}}}_{\textrm{e}}^{-1})} \left(X^{1/2}&#x002B;2^{11/12}X^{1/6}\right)^2 \exp\left(-X^{1/3}\right)\!,\end{equation*}(42) where X is a dimensionless quantity given by X:=ννs,\begin{equation*} X:=\frac{\nu}{\nu_{\textrm{s}}}, \end{equation*}(43) and νs is the critical frequency for the synchrotron emission: νs=29(eB2πmec)Θe2sinθ.\begin{equation*} \nu_{\textrm{s}}=\frac{2}{9} \left(\frac{eB}{2 \pi m_{\textrm{e}} c}\right) {{\mathrm{\Theta}}}_{\textrm{e}}^2 \sin \theta\,. \end{equation*}(44)

Here, B is the magnetic field in the inertial frame, θ is the angle between the photon wave vector kμ and the magnetic field four-vector bμ in the fluid frame, and e is the unit electric charge. The angle θ is calculated by using Eq. 73 in Dexter (2016). Here, we used CGS units, so that the B field is given in (Gauss) and ne is given in (cm −3). The synchrotron emission coefficient therefore has units of (ergs s−1 Hz−1 cm−3). In this test, we assumed that K2(Θe1)=2Θe2$K_2\left({{\mathrm{\Theta}}}_{\textrm{e}}^{-1}\right)=2\,{{\mathrm{\Theta}}}_{\textrm{e}}^2$, which is an approximation. However, evaluating properly the Bessel function can yield differences in the integrated flux on the order of a few percent at most.

As shown in Leung et al. (2011), Eq. (42) is a good approximation of the true synchrotron emission coefficient for a range of electron temperatures Θe and frequencies ν. For θ = 30°, the relative error of the approximate emission coefficient formula is less than 1% for Θ e > 0.5, and ννc > 10 (where νc = eB∕2πmec = 2.8 × 106B Hz is the electron cyclotron frequency). For θ = 80°, the error is less than 1% when Θe > 0.5 and ννc > 104. In our models, the typical magnetic field strength is B ≃ 10 Gauss, so νc ≃ 107 Hz. Hence, when modeling the emission at frequencies around ν = 1011 Hz, the approximate synchrotron emission coefficient formula given by Eq. (42) is very accurate.

The synchrotron self-absorption coefficient for a thermal distribution of electrons is derived from Kirchhoff’s law, ανTH=jνTH/Bν$\alpha^{\textrm{TH}}_{\nu} = j^{\textrm{TH}}_{\nu}/B_{\nu}$, where ανTH$\alpha^{\textrm{TH}}_{\nu}$ is given in (cm−1) and Bν is the Planck function: Bν:=2hν3c21exp(hν/(mec2Θe))1.\begin{equation*} {B}_{\nu}:=\frac{ 2 h \nu^3}{c^2} \frac{1}{\exp{\left( h\nu/ (m_{\textrm{e}} c^2 {{\mathrm{\Theta}}}_{\textrm{e}}) \right)} - 1}\,. \end{equation*}(45)

BHAC (and similar GRMHD codes such as HARM) employ geometrized units, so that to carry out radiative-transfer calculations using the GRMHD simulation data for the plasma variables we must scale the GRMHD variables using the rest-mass density scaling factor ρ0:=M/L3$\rho_0:=\mathcal{M}/\mathcal{L}^3$ and the magnetic field strength scaling factor B0:=c4πρ0$B_0:=c\sqrt{4 \pi \rho_0}$. Here, L=GM/c2${\mathcal L}=GM/c^2$ and T=GM/c3${\mathcal T} = GM/c^3$ are the simulation’s length and time scale factors, respectively; they are functions of the black hole’s mass only. The mass unit, M${\mathcal{ M}}$, is a free parameter of the model. The electron number density used in the synchrotron emission/absorption coefficient formulae is then calculated using ne=ρρ0(me+mp)cm3.\begin{equation*} n_{\mathrm{e}} = \rho \frac{\rho_0}{(m_{\textrm{e}}&#x002B;m_{\textrm{p}})} \, \mathrm{cm}^{-3}\,. \end{equation*}(46)

In our GRMHD model, the temperature of protons Tp is proportional to the ratio of the plasma’s pressure and density, so that it is a scale-free quantity. The electron temperature Te, which is essential to calculating the synchrotron emissivities, is parametrized by the proton-to-electron temperature ratio, which can be either constant or a function of GRMHD data variables. The key parameters for the test simulation are listed in Table 2, where τcutoff represents the optical depth at which integration is terminated (radiation emitted past this optical depth will have a negligible effect on theimage).

It is found that, when using 10 CPU cores, RAPTOR integrates 10 707 geodesics per second, while with one GPU unit, RAPTOR integrates 104 900 geodesics per second. The total run time for an image of 2000 × 2000 pixels was less than one minute using a GPU. A more detailed description of the code performance is given in Appendix B.

Figure 7 (top left panel) presents an image computed by RAPTOR of our GRMHD accretion flow simulation created in BHAC. We compared our results to images produced by another radiative transfer code, BHOSS (Younsi, in prep.; top right panel),which uses a different set of algorithms to RAPTOR. The total fluxes from both codes as a function of image resolution are given in Table 3. BHOSS and RAPTOR converge to almost identical total flux values, with a relative difference of 0.06% at a resolution of4096 × 4096 pixels. The percentage difference for every pixel in both images is presented in the bottom left panel, while the absolute difference between both images is shown in the bottom right panel. The overall structure of the images is consistent; the largest percentage differences are found in regions of low specific intensity, whose contribution to the observed flux density is negligible (see bottom right panel).

A possible source of the differences between BHOSS and RAPTOR is the fact that the two codes employ different approaches for computing step-sizes. BHOSS uses an algorithm that depends on the optical depth of the plasma, while RAPTOR bases its step-size purely on the geometry of spacetime. This results in different sampling strategies which, although not a dominant factor in the total flux, can nonetheless result in large deviations in a plot of the relative difference between the two images. Looking at the images and total fluxes, we conclude that the codes give consistent results while using different methods to solve the radiative transport and geodesic equations. The GRMHD file used in this comparison is included with the RAPTOR code.

Table 2

Setup for the comparison test between BHOSS and RAPTOR.

Table 3

Integrated flux density computed by RAPTOR and BHOSS for the model described in Sect. 4.2.2, as well as the relative error, showing convergence of the output of the two codes.

5 Time-dependent radiative transfer in GRMHD simulations

GRMHD simulations dump their data in so-called snapshots – instantaneous states of the plasma captured at discrete moments during the simulation. When creating images based on a series of GRMHD snapshots using radiative-transfer calculations,it is either possible to ignore a geodesic’s time coordinate, thereby treating the GRMHD snapshot as static while the rays propagate (this is normally referred to as the fast-light approximation), or it is possible to keep track of the geodesic’s time coordinate, interpolating between different GRMHD snapshots so as to obtain the plasma conditions that are correct not only in space but also in time (this is normally referred to as the slow-light approximation).

In order to generate the results of this section, we relaxed the assumption of staticity of the GRMHD simulation during radiative-transfer calculations and thus implement the slow-light approximation with the goal of improving the accuracy of our model in predicting the properties of the accretion flow onto a SMBH. In such relativistic plasmas, the effects of selecting the fast-/slow-light approximation can be arbitrarily great or small based on the geometry and observer under consideration. For instance, Dexter et al. (2010) considered the differences between fast-light and slow-light in the context of a particular accreting black-hole model and concluded that the differences were minimal. Here, we return to this problem as new models with more complex electron thermodynamics have been developed. Overall, we are here interested in verifying the fast-light approximation in a broader context.

In GRMHD simulations such as those performed by HARM2D or BHAC, only the heavy ions are simulated. In radiative processes, however, ions are not the dominant source of emission, and we therefore need a description to couple the electrons in the plasma to their ionic counterparts. To do so, we implemented a one-fluid model in which the coupling between the two species changes throughout the simulation volume as a function of the βp plasma parameter (Mościbrodzka et al. 2016) TpTe=Rlow11+βp2+Rhighβp21+βp2,\begin{equation*} \frac{T_{\mathrm{p}}}{T_{\mathrm{e}}} = R_{\textrm{low}}\frac{1}{1&#x002B;\beta_{\textrm{p}}^2} &#x002B; R_{\textrm{high}} \frac{\beta_{\textrm{p}}^2}{1&#x002B;\beta_{\textrm{p}}^2}\,, \vspace*{-6pt} \end{equation*}(47) where βp := PgasPmag is the ratio of gas pressure to magnetic-field pressure Pmag = B2∕2, and Rlow and Rhigh are two free parameters. In strongly magnetized plasmas, βp ≪ 1 and TpTeRlow. In weakly magnetized plasmas, on the other hand, βp ≫ 1 and so TpTeRhigh.

The models used in this section are motivated by qualitatively reproducing the observed spectrum of Sgr A* (Shcherbakov et al. 2012). Our primary focus, however, is on investigating the difference (if any) between the fast-light and slow-light paradigms, rather than on reproducing the source in great detail. More precisely, the parameters assumed for our modeling are that the SMBH has a mass of M = 4 × 106 M and is at a distance of d = 7.88 × 103 pc (Boehle et al. 2016), that the observer has an inclination of 60° and performs observationsat frequencies of 22, 43, 86, and 230 GHz.

5.1 Time calibration

When comparing slow and fast-light simulations it is important to describe how the results align when comparing them. The reason for this is that a single image from a slow-light calculation uses data from many GRMHD slices, so that it is no longer possible to associate an image with a specific GRMHD slice, as is possible in the case of a fast-light calculation. This also means that a large number of GRMHD slices are needed for slow-light calculations: the slices of GRMHD data should extend from the moment in time when the first ray enters the simulation volume until the moment when the last ray leaves it. When taking curvature into account, these moments are difficult to compute and depend on the initial conditions of the camera rays: some images can contain rays that pass close to the event horizon, circling the black hole many times before escaping (see Fig. 4), thus delaying their exit time, potentially indefinitely for pathological rays. We here neglected the contribution of these rays for two reasons; first, the optical depth along such a ray would cause virtually all emission beyond a certain value for the affine parameter to be absorbed; second, rays that orbit the black hole for a an increasing number of times are increasingly rare, thus contributing only marginally to our images.

In practice, we established the alignment by introducing an empirically determined time delay in our rays’ initial time coordinate in such a way that light curves from the fast-light and slow-light simulations at an inclination angle of 90° coincide; this is effectively equivalent to translating the slow-light light curve with respect to the fast-light light curve on the time axis.

5.2 Results

The model whose emission is dominated by the disk is characterized by a mass scale factor, M=5.03×1015M$\mathcal{M}=5.03 \times 10^{-15}\,M_{\odot}$ and the weak-magnetization electron-proton temperature ratio Rhigh = Rlow = 1. Slow-light images of the accretion disk at our 4 VLBI frequencies are presented in Fig. 8 (we do not report the corresponding fast-light images as they are virtually indistinguishable). Light curves for both the slow-light and fast-light simulations, along with residuals, are presented in Fig. 9, while normalized light curves at all frequencies for the slow-light simulation of the disk-emission model are shown in Fig. 10.

Similarly, the model whose emission is dominated by the jet is characterized by a mass scale factor M=2.515×1013M$\mathcal{M}=2.515 \times 10^{-13} M_{\odot}$ and the weak-magnetization electron-proton temperature ratio Rhigh = 25 (while Rlow = 1). In this case, slow-light images of the accretion flow at all VLBI frequencies are shown in Fig. 11, while the light curves of fast- and slow-light simulations are reported in Fig. 12; finally the normalized slow-light light curves at all frequencies are shown in Fig. 13.

We found that the difference between the fast-light and slow-light approaches is systematically below 5% in all cases, suggesting that the fast-light approximation is a good one for the model presently under consideration, a result that is in line with the findings of Dexter et al. (2010).

As a concluding remark, we note that we have considered radiative-transfer calculations of the unpolarized component of synchrotron radiation. This is motivated by the fact that observations show that linear and circular polarization of Sgr A* are less than a few percent (Bower et al. 2003). Although small, the polarization is nonzero and we here speculate that the differences between the two approaches may become more pronounced when considering the polarized components of the radiation.

thumbnail Fig. 8

Images of our slow-light-simulation of the disk emission dominated model at VLBI frequencies. The flux density is given in units of Jy pixel−2.

thumbnail Fig. 9

Light curves for slow-light (solid) and fast-light (dashed) for the disk emission dominated model at VLBI frequencies. Residuals are displayed below the light curves.

thumbnail Fig. 10

Normalized light curves of slow-light simulations at the VLBI frequencies (230 GHz (solid), 86 GHz (dashed), 43 GHz (solid and dotted), 22 GHz (dotted)) for viewing angle of 60 degrees for our disk dominated model.

thumbnail Fig. 11

Images of our slow-light-simulation of the jet emission dominated model at VLBI frequencies. Flux density is given in units of Jy pixel−2.

thumbnail Fig. 12

Light curves for slow-light (solid) and fast-light (dashed) for the jet emission dominated model at VLBI frequencies. Residuals are displayed below the light curves.

thumbnail Fig. 13

Normalized light curves of slow-light simulations at the VLBI frequencies (230 GHz (solid), 86 GHz (dashed), 43 GHz (solid and dotted), 22 GHz (dotted)) for viewing angle of 60° for our jet dominated model.

6 Summary

We have introduced RAPTOR, a new time-dependent radiative-transfer code capable of producing physically accurate images of black-hole accretion disks as calculated by GRMHD simulations in particular, and of performing radiative-transfer calculations in general astrophysical problems that involve radiative transfer and strong gravity in general. The code achieves this result by integrating null geodesics in arbitrary spacetimes and then performing time-dependent radiative transport along the geodesics to ultimately construct images, light curves, and spectra. Furthermore, RAPTOR is capable of time-dependent computations, in which the characteristics of a single image may depend on a range of input data in the time domain and it can be run on both CPUs and GPUs.

We have verified correctness of our geodesic calculations by investigating the conservation of constants of motion and comparing our results to the semi-analytical code geokerr, our results being in good agreement. The same procedure was applied to our radiative-transfer computations: we performed a number of tests of our various integration schemes and reproduced results from the literature.

As an additional verification step, we compared our code directly to the another recently developed radiative-transfer code: BHOSS (Younsi, in prep.). We considered a complex scenario that involves a particular set of GRMHD data along with a physical radiative model and produced images of the accretion flows using both codes. The result was a convergence of the total flux density as computed by the two codes, which rely on different integration algorithms for both null geodesics and radiative transfer, to a relative error of less than 0.01% (see Fig. 7), demonstrating that our implementations are highly consistent.

An important validation of our code has come from neglecting a commonly made assumption that the physical properties of the underlying plasma do not vary during the propagation of the radiation (fast-light approximation). We have therefore studied the difference between the slow-light and fast-light paradigms in radiative models of accretion flows onto SMBHs. The differences between slow-light and fast-light can be arbitrarily large or utterly negligible, depending on the physical conditions. In context we have considered, where we have investigated radiative models based on 2D GRMHD data, we conclude that the effects of switching between the fast-light and slow-light paradigms on the appearance of this particular model’s accretion flow are smaller than 5% across the VLBI frequencies we examined.

While these results are in agreement with the findings of Dexter et al. (2010) we note that this conclusion may be influenced by the fact that we have investigated unpolarized radiative transfer only. In conclusion, the RAPTOR code – and its further developments in terms of the possibility of treating polarized radiative transfer – may be used to compare synthetic images of SMBH accretion flows to mm-VLBI data from the Event Horizon Telescope Collaboration1 and to extract physical properties of the black-hole system (e.g., spin, inclination) or to test the predictions of GR about the size and shape of the black-hole shadow. The code has many potential applications in other astrophysical problems, such as radiative transfer near a neutron star or a binary black-hole system. It is also well-suited to creating material for outreach purposes, such as virtual-reality movies of black hole environments (Davelaar et al., in prep.).

Finally, we note that because the electron distribution function of the plasma is an important factor in determining radiative properties, reducing the number of assumptions made about this function may have an appreciable effect on the synthetic observational data one may generate using our models. In view of this, we have recently added a more general particle distribution function than the one presented here, relaxing the assumption that the electrons are in a thermal distribution by adding accelerated particles and thereby improving the accuracy of radiative models. The results of this analysis will be presented in a distinct and forthcoming paper (Davelaar et al. 2018).

Acknowledgements

This work is supported by the ERC Synergy Grant “BlackHoleCam: Imaging the Event Horizon of Black Holes” (Grant 610058). Z.Y. acknowledges support from an Alexander von Humboldt Fellowship. This research has made use of NASA’s Astrophysics Data System. Some of the simulations in this work were performed on the LOEWE cluster in CSC in Frankfurt.

Appendix A: Coordinate Transformations

Here, we listcertain non-trivial coordinate transformations that are used in RAPTOR. In what follows, the BL coordinates are denoted by (t, r, θ, ϕ), and the KS coordinates by (t˜,r,θ,ϕ˜)$(\tilde{t},r,\theta,\tilde{\phi})$.

A.1:

BL-KS

The transformations of the coordinate vector between BL and KS coordinates is given by (see e.g., Font et al. 1999): t˜ =t+MlnΔ+2M2r+rln(rr+rr),ϕ˜ =ϕ+ar+rln(rr+rr),t˜ ˙ =t˙+2MrΔr˙,ϕ˜ ˙ =ϕ˙+aΔr˙, \begin{eqnarray*} \tilde{t} &=& t &#x002B; M\ln{{\mathrm{\Delta}}} &#x002B; \frac{2M^{2}}{r_{&#x002B;}-r_{-}}\ln \left( \frac{r-r_{&#x002B;}}{r-r_{-}} \right) \ , \\ \tilde{\phi} &=& \phi &#x002B; \frac{a}{r_{&#x002B;}-r_{-}}\ln \left( \frac{r-r_{&#x002B;}}{r-r_{-}} \right) \ ,\\ \dot{\tilde{t}} &=& \dot{t} &#x002B; \frac{2Mr}{{{\mathrm{\Delta}}}}\dot{r} \ ,\\ \dot{\tilde{\phi}} &=& \dot{\phi} &#x002B; \frac{a}{{{\mathrm{\Delta}}}} \dot{r} \ , \end{eqnarray*} where an overdot denotes differentiation with respect to the affine parameter, λ, r±:=M±M2a2$r_{\pm}:= M \pm \sqrt{M^{2}-a^{2}}$ denotes the outer(inner) event horizon radius, Δ = r2 − 2Mr + a2 := (rr+)(rr) and M is the black-hole mass. It is important to note that these transformations are valid only in the region of spacetime exterior to the black-hole horizon.

Four-vectors transform differently. In RAPTOR, the initial contravariant wave vector k0μ$k^{\mu}_0$ is always constructed using BL coordinates, and must be transformed to KS coordinates. This is accompanied by the following transformation matrix (McKinney & Gammie 2004): kα¯ =(12r/Δ00010000100a/Δ01 )kα,\begin{equation*} k^{\bar{\alpha}} = \renewcommand{\arraystretch}{1.2} \left( \begin{array}{cccc} 1 & 2r/{{\mathrm{\Delta}}} & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 &1 & 0 \\ 0& a/{{\mathrm{\Delta}}}& 0 & 1 \end{array} \right) k^{{\alpha}}\,, \end{equation*}(A.5) where kα denotes the wave vector in BLcoordinates, kα¯ $k^{\bar{\alpha}}$ is the wave vector in KS coordinates. The reverse transformation is given by kα=(12r/Δ00010000100a/Δ01 )kα¯ .\begin{equation*} k^{{\alpha}} = \renewcommand{\arraystretch}{1.2} \left( \begin{array}{cccc} 1 & -2r/{{\mathrm{\Delta}}} & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 &1 & 0 \\ 0& -a/{{\mathrm{\Delta}}}& 0 & 1 \end{array} \right) k^{\bar{\alpha}}\,. \end{equation*}(A.6)

A.2:

KS-MKS

The modified Kerr-Schild coordinates (MKS), as used by, for example, Gammie et al. (2003), are denoted by (t˜,x1,x2,ϕ˜)$(\tilde{t},x^{1},x^{2},\tilde{\phi})$. Some of these quantities may be expressed in terms of conventional KS coordinates as: x1=ln(rr0),x˙ 1=r˙ rr0,x˙ 2=θ˙ π[ 1+(1h)cos(2πx2) ], \begin{eqnarray} x^{1} &=& \ln \left( r - r_{0} \right),\\ \dot{x}^{1} &=& \frac{\dot{r}}{r-r_{0}},\\ \dot{x}^{2} &=& \frac{\dot{\theta}}{ \pi \left[ 1 &#x002B; \left( 1 - h \right) \cos \left( 2\pi x^{2} \right) \right]},\end{eqnarray} where 0 ≤ h ≤ 1 is obtained from the GRMHD data and stretches the zenith coordinate near the poles and the equatorial plane. Notice that we cannot obtain x2(θ) algebraically as this requires solving a transcendental equation; we must find it numerically, via the inverse transformation x2θ, which can be written in closed form. This transformation, along with the corresponding inverse transformations for Eqs. (A.7), (A.8), and (A.9), may be written as: r=r0+expx1,θ=πx2+12(1h)sin(2πx2),r˙ =x˙ 1(rr0),θ˙ =πx˙ 2[ 1+(1h)cos(2πx2) ]. \begin{eqnarray} r &=& r_{0} &#x002B; \exp{x^{1}},\\ \theta &=& \pi x^{2} &#x002B; \frac{1}{2}\left( 1-h \right)\sin \left( 2\pi x^{2} \right)\!,\\ \dot{r} &=& \dot{x}^{1} \left( r - r_{0} \right)\!,\\ \dot{\theta} &=& \pi \dot{x}^{2}\left[ 1 &#x002B; \left(1-h \right)\cos \left(2\pi x^{2} \right) \right]\!.\end{eqnarray}

To perform the transformation θx2, we must resort to numerically (indeed iteratively) seeking a value x2 that satisfies Eq. (A.11), and this is readily performed using the Newton-Raphson method. For a function f(x) the solution to f(x) = 0 may be found iteratively as: xn+1=xnf(xn)f(xn),\begin{equation*} x_{n&#x002B;1} = x_{n} - \frac{f(x_{n})}{f&#x0027;(x_{n})} \,, \end{equation*}(A.14) where f′(xn) := df(xn)∕dxn and the index n denotes the iterative step. For MKS coordinates we have: f(xn2)=[ πxn2+12(1h)sin(2πxn2)θ ],f(xn2)=π[ 1+(1h)cos(2πxn2) ], \begin{eqnarray*} f(x^{2}_{n}) &=& \left[\pi x^{2}_{n} &#x002B; \frac{1}{2}\left( 1-h \right)\sin \left( 2\pi x^{2}_{n} \right) - \theta \right] \ , \\ f&#x0027;(x^{2}_{n}) &=& \pi \left[ 1 &#x002B; \left(1-h \right)\cos \left(2\pi x^{2}_{n} \right) \right] \,, \end{eqnarray*} since θ/xn2=0$\partial\theta/\partial x^{2}_{n}=0$ and θ is constant in the above iterative scheme. One must start with a trial value for x021$x^{2}_{0}\ll 1$ and then iterate from there. Since x2 ∈ [0, 1], if xn+12<0$x^{2}_{n&#x002B;1}<0$ or xn+12>1$x^{2}_{n&#x002B;1}>1$ then reset xn+12$x^{2}_{n&#x002B;1}$ to a small value (e.g., 0.05). We also apply the above reset if f(xn2)0$f&#x0027;(x^{2}_{n}) \rightarrow 0$. Finally, we define a appropriate convergence criterion, namely |xn+12xn2|<ε$|x^{2}_{n&#x002B;1} - x^{2}_{n}| < \varepsilon$, where ε is the error tolerance we find acceptable.

Appendix B: Code performance

As mentioned in the Introduction, an important added value of RAPTOR is that it is a hybrid code that can be compiled for both CPUs and GPUs. Two distinct parallelization methods are implemented in the code; one is OpenMP2, with which it is possible to run the code on multiple CPU cores; the other is OpenACC, with which it is possible to run the code on both the CPU and GPU. We have verified and tested the performance of the code in these environments by considering a radiative-transfer calculation through our BHAC GRMHD simulation. The model parameters are listed in Table B.1. More specifically, we investigate how the performance of RAPTOR scales with the number of threads that are employed. This is done by running the same setup (Table B.1) on the same hardware (Table B.2) multiple times, using a different number of cores each time.

Table B.1

Numerical parameters for the code performance tests.

thumbnail Fig. B.1

Run time (left) and speed-up factor (right) for RAPTOR using OpenMP and OpenACC.

Table B.2

Description of the hardware on which our performance tests were executed.

The scalability is measured by calculating the speed-up factor, which is defined as S=T#threads/Tsingle thread,\begin{equation*} \textrm{S} = T_{\textrm{\#threads}} / T_{\textrm{single\ thread}}\,, \end{equation*}(B.1) where T is the run time of the code for a given amount of threads.

The results of our runs can be found in Fig. B.1 and they show that the code scales sub-linearly with the number of cores, as is expected, since communication overhead increases with an increasing number of threads; again, as expected, the GPU runs outperform the CPU ones. Interestingly, the OpenMP implementation slightly outperforms OpenACC, but this is not surprising, since OpenACC lacks hyper-threading support for CPUs, which is instead provided with OpenMP. When using 10 CPU-cores, RAPTOR can integrate 10 707 geodesics per second, while with one GPU unit, RAPTOR integrates 104 900 geodesics per second.

One reason why the difference between GPU and CPU performance is relatively small is the additional time required for data transfer andkernel booting operations in the GPU based implementation. We therefore also rendered a large image (2000 × 2000 pixels) on both the CPU and GPU, to check whether the difference between CPU and GPU performance increases. The average run times are 3 minutes and 58 seconds on one CPU, and 39 seconds on one GPU, respectively. As expected, the difference in performanceis substantially increased under these conditions.

These total run times also include data read (~1 s) and output generation (~0.2 s) operations. Overall, the calculation of the image on the GPU took 2.5 s.

References

  1. Abbott, B. P., Abbott, R., Abbott, T. D., et al. 2016, Phys. Rev. Lett., 116, 061102 [Google Scholar]
  2. Bardeen, J. M., Press, W. H., & Teukolsky, S. A. 1972, ApJ, 178, 347 [NASA ADS] [CrossRef] [Google Scholar]
  3. Beloborodov, A. M. 2002, ApJ, 566, L85 [NASA ADS] [CrossRef] [Google Scholar]
  4. Boehle, A., Ghez, A. M., Schödel, R., et al. 2016, ApJ, 830, 17 [NASA ADS] [CrossRef] [Google Scholar]
  5. Bower, G. C., Wright, M. C. H., Falcke, H., & Backer, D. C. 2003, ApJ, 588, 331 [NASA ADS] [CrossRef] [Google Scholar]
  6. Boyer, R. H., & Lindquist, R. W. 1967, J. Math. Phys., 8, 265 [NASA ADS] [CrossRef] [Google Scholar]
  7. Broderick, A. E. 2006, MNRAS, 366, L10 [NASA ADS] [CrossRef] [Google Scholar]
  8. Carter, B. 1968, Phys. Rev., 174, 1559 [NASA ADS] [CrossRef] [Google Scholar]
  9. Chan, C.-k., Psaltis, D., & Özel, F. 2013, ApJ, 777, 13 [NASA ADS] [CrossRef] [Google Scholar]
  10. Chan, C.-k., Medeiros, L., Ozel, F., & Psaltis, D. 2017, ApJ, submitted, [arXiv:1706.07062] [Google Scholar]
  11. Chirenti, C. & Rezzolla, L. 2016, Phys. Rev. D, 94, 084016 [NASA ADS] [CrossRef] [Google Scholar]
  12. Cunningham, C. T. & Bardeen, J. M. 1972, ApJ, 173, L137 [NASA ADS] [CrossRef] [Google Scholar]
  13. Davelaar, J., Moscibrodzka, M., Bronzwaer, T., & Falcke, H. 2018, A&A, 612, A34 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  14. De Falco, V., Falanga, M., & Stella, L. 2016, A&A, 595, A38 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  15. Dexter, J. 2016, MNRAS, 462, 115 [NASA ADS] [CrossRef] [Google Scholar]
  16. Dexter, J., & Agol, E. 2009, ApJ, 696, 1616 [NASA ADS] [CrossRef] [Google Scholar]
  17. Dexter, J., Agol, E., Fragile, P. C., & McKinney, J. C. 2010, ApJ, 717, 1092 [NASA ADS] [CrossRef] [Google Scholar]
  18. Doeleman, S. S., Weintroub, J., Rogers, A. E. E., et al. 2008, Nature, 455, 78 [NASA ADS] [CrossRef] [PubMed] [Google Scholar]
  19. Doeleman, S. S., Fish, V. L., Schenck, D. E., et al. 2012, Science, 338, 355 [NASA ADS] [CrossRef] [PubMed] [Google Scholar]
  20. Dolence, J. C., Gammie, C. F., Mościbrodzka, M., & Leung, P. K. 2009, ApJS, 184, 387 [NASA ADS] [CrossRef] [Google Scholar]
  21. Falcke, H., & Markoff, S. B. 2013, Class. Quant. Grav., 30, 244003 [Google Scholar]
  22. Falcke, H., Melia, F., & Agol, E. 2000, ApJ, 528, L13 [NASA ADS] [CrossRef] [PubMed] [Google Scholar]
  23. Fish, V., Akiyama, K., Bouman, K., et al. 2016, Galaxies, 4, 54 [NASA ADS] [CrossRef] [Google Scholar]
  24. Font, J. A., Ibáñez, J. M., & Papadopoulos, P. 1999, MNRAS, 305, 920 [NASA ADS] [CrossRef] [Google Scholar]
  25. Gammie, C. F., McKinney, J. C., & Tóth, G. 2003, ApJ, 589, 444 [Google Scholar]
  26. Genzel, R., Eisenhauer, F., & Gillessen, S. 2010, Rev. Mod. Phys., 82, 3121 [NASA ADS] [CrossRef] [Google Scholar]
  27. Ghez, A. M., Salim, S., Weinberg, N. N., et al. 2008, ApJ, 689, 1044 [NASA ADS] [CrossRef] [Google Scholar]
  28. Goddi, C., Falcke, H., Kramer, M., et al. 2017, Int. J. Mod. Phys. D, 26, 02 [Google Scholar]
  29. Johnson, M. D., Fish, V. L., Doeleman, S. S., et al. 2015, Science, 350, 1242 [NASA ADS] [CrossRef] [Google Scholar]
  30. Kerr, R. P., & Schild, A. 1965, In IV Centenario Della Nascita di Galileo Galilei, A new class of vacuum solutions of the Einstein field equations, 1564 222 [NASA ADS] [Google Scholar]
  31. Konoplya, R., Rezzolla, L., & Zhidenko, A. 2016, Phys. Rev. D, 93, 064015 [NASA ADS] [CrossRef] [Google Scholar]
  32. Laor, A. 1991, ApJ, 376, 90 [NASA ADS] [CrossRef] [Google Scholar]
  33. Leung, P. K., Gammie, C. F., & Noble, S. C. 2011, ApJ, 737, 21 [NASA ADS] [CrossRef] [Google Scholar]
  34. Lindquist, R. W. 1966, Ann. Phys., 37, 487 [NASA ADS] [CrossRef] [Google Scholar]
  35. Luminet, J.-P. 1979, A&A, 75, 228 [NASA ADS] [Google Scholar]
  36. McKinney, J. C., & Gammie, C. F. 2004, ApJ, 611, 977 [NASA ADS] [CrossRef] [Google Scholar]
  37. Moscibrodzka, M., & Gammie, C. F. 2018, MNRAS, 475, 43 [NASA ADS] [CrossRef] [Google Scholar]
  38. Mościbrodzka, M., Gammie, C. F., Dolence, J. C., Shiokawa, H., & Leung, P. K. 2009, ApJ, 706, 497 [NASA ADS] [CrossRef] [Google Scholar]
  39. Mościbrodzka, M., Falcke, H., & Shiokawa, H. 2016, A&A, 586, A38 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  40. Noble, S. C., Leung, P. K., Gammie, C. F., & Book, L. G. 2007, Class. Quant. Grav., 24, 259 [Google Scholar]
  41. Novikov, I. D., & Thorne, K. S. 1973, In Astrophysics of black holes, eds. Dewitt, B. S., & Dewitt, C., Black Holes (Les Astres Occlus), 343 [Google Scholar]
  42. Parfrey, K., & Tchekhovskoy, A. 2017, ApJ, 851, L34 [NASA ADS] [CrossRef] [Google Scholar]
  43. Porth, O., Olivares, H., Mizuno, Y., et al. 2017, Comput. Astrophys. Cosmol., 4, 1 [Google Scholar]
  44. Poutanen, J., & Beloborodov, A. M. 2006, MNRAS, 373, 836 [NASA ADS] [CrossRef] [Google Scholar]
  45. Rezzolla, L., & Zhidenko, A. 2014, Phys. Rev. D, 90, 084009 [NASA ADS] [CrossRef] [MathSciNet] [Google Scholar]
  46. Schnittman, J. D., & Bertschinger, E. 2004, ApJ, 606, 1098 [NASA ADS] [CrossRef] [Google Scholar]
  47. Schnittman, J. D., & Rezzolla, L. 2006, ApJ, 637, L113 [NASA ADS] [CrossRef] [Google Scholar]
  48. Shcherbakov, R. V., & Huang, L. 2011, MNRAS, 410, 1052 [NASA ADS] [CrossRef] [Google Scholar]
  49. Shcherbakov, R. V., Penna, R. F., & McKinney, J. C. 2012, ApJ, 755, 133 [NASA ADS] [CrossRef] [Google Scholar]
  50. Swope, W. C., Andersen, H. C., Berens, P. H., & Wilson, K. R. 1982, J. Chem. Phys., 76, 637 [NASA ADS] [CrossRef] [Google Scholar]
  51. Takahashi, R., & Umemura, M. 2017, MNRAS, 464, 4567 [NASA ADS] [CrossRef] [Google Scholar]
  52. Viergutz, S. U. 1993, A&A, 272, 355 [NASA ADS] [Google Scholar]
  53. Younsi, Z., Wu, K., & Fuerst, S. V. 2012, A&A, 545, A13 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
  54. Younsi, Z., Zhidenko, A., Rezzolla, L., Konoplya, R., & Mizuno, Y. 2016, Phys. Rev. D, 94, 084025 [NASA ADS] [CrossRef] [Google Scholar]

All Tables

Table 1

Parameters for the two “difficult” null geodesics under investigation.

Table 2

Setup for the comparison test between BHOSS and RAPTOR.

Table 3

Integrated flux density computed by RAPTOR and BHOSS for the model described in Sect. 4.2.2, as well as the relative error, showing convergence of the output of the two codes.

Table B.1

Numerical parameters for the code performance tests.

Table B.2

Description of the hardware on which our performance tests were executed.

All Figures

thumbnail Fig. 1

Radiative-transfer variables along a particular null geodesic that intersects a radiating plasma near a Kerr black hole (see Fig. 2). Top: local specific intensity Iν (dashed red curve), which is computed by integrating Eq. (34) in the direction of increasing affine parameter λ, and of the specific intensity seen by the observer, Iν,obs (solid black curve), which is computed by integrating Eq. (37) in the direction of decreasing λ. The intensity is normalized with respect to the observed intensity in both cases, so that we expect both curves to approach unity with continued integration, which is illustrated using the blue guideline. We note that Iν is a non-monotonic function of λ while Iν,obs is a monotonic function of λ. We also notethat for Iν,obs and τν,obs, integration proceeds from right to left in these plots, and that Iν,obs converges much faster than Iν. Bottom: optical depth for the same ray.

In the text
thumbnail Fig. 2

Synchrotron emission map created using a GRMHD simulation (see Sect. 4.2.2) made using the HARM code (Gammie et al. 2003). Intensity is given in units of Jy pixel−2. The observer frequency is 100 GHz, the inclination angle is 30 degrees, and the disk-dominated emission model discussed in Sect. 5 is used. Note the optically-thick accretion disk and strong emission to the left of the black-hole shadow (this region appears bright due to relativistic beaming). The ray investigated in Fig. 1 is marked by a white dot in this image. This particular ray, travelling from the plasma to the observer, first passes through the bright, relativistically-boosted region, and then through an optically-thick, non-boosted region of the disk, suggesting that the specific intensity along this ray will sharply increase, then decrease, before reaching the observer. Figure 1 shows that this is indeed the case.

In the text
thumbnail Fig. 3

Convergence plots for the L1-error norms of the conserved quantities E (dashed blue), L (solid black), and Q (dotted red) for the orbit with parameters i = 90°, α = −3.22, β = 1.12, a = 0.998 with different integrator settings. The errors are computed at a fixed coordinate time tfinal. Two guide lines with slopes −2 (solid) and −4 (dashed) are drawn. The +, −, and ×-symbols represent respectively L, Q, and E, for the RK4integrator. The square, hexagon, and circle symbols represent the same quantities for the Verlet integrator.

In the text
thumbnail Fig. 4

Comparison of null geodesics computed by the semi-analytical integrator geokerr to those computed by our fully numerical code. In each case, the geodesic represented by the black dots was computed using geokerr while the geodesic represented by the white dotted line is the output of RAPTOR (dots were chosen for the former geodesic because its variable step-size can otherwise create interpolation issues). The gray spheroid represents the black hole’s outer event horizon. MKS coordinates were used with ϵ = 0.001. The parameters for these geodesics are listed in Table 1.

In the text
thumbnail Fig. 5

Intensity map of the thin disk model described in Sect. 3. Lensed images of up to tenth order are taken into account, where the order of an image is determined by the number of ray crossings of the equatorial plane. Higher-order images are ignored in the computation of the thin disk line spectra (Figs. 6a–d).

In the text
thumbnail Fig. 6

Redshift spectra of the thin disk model described in Sect. 3 for four different coordinate systems. The five different spin parameters examined in these plots are (in descending order for the peaked curves above EobsEem = 1): − 0.99, −0.5, 0, 0.5, 0.99. The results may be compared with with Schnittman & Bertschinger (2004) and Dexter & Agol (2009).

In the text
thumbnail Fig. 7

Intensity maps at 230 GHz for the comparison test, with a resolution of 4096 × 4096 pixels. The RAPTOR output (top left panel) and BHOSS output (top right panel) show excellent agreement in total flux density. The relative difference between the output of both codes is plotted in the bottom left panel. The deviations become quite large in the periphery of the image; since the intensity in these regions is low, however, they do not contribute significantly to the integrated flux density, as can be seen in the absolute difference between the two codes (bottom right panel).

In the text
thumbnail Fig. 8

Images of our slow-light-simulation of the disk emission dominated model at VLBI frequencies. The flux density is given in units of Jy pixel−2.

In the text
thumbnail Fig. 9

Light curves for slow-light (solid) and fast-light (dashed) for the disk emission dominated model at VLBI frequencies. Residuals are displayed below the light curves.

In the text
thumbnail Fig. 10

Normalized light curves of slow-light simulations at the VLBI frequencies (230 GHz (solid), 86 GHz (dashed), 43 GHz (solid and dotted), 22 GHz (dotted)) for viewing angle of 60 degrees for our disk dominated model.

In the text
thumbnail Fig. 11

Images of our slow-light-simulation of the jet emission dominated model at VLBI frequencies. Flux density is given in units of Jy pixel−2.

In the text
thumbnail Fig. 12

Light curves for slow-light (solid) and fast-light (dashed) for the jet emission dominated model at VLBI frequencies. Residuals are displayed below the light curves.

In the text
thumbnail Fig. 13

Normalized light curves of slow-light simulations at the VLBI frequencies (230 GHz (solid), 86 GHz (dashed), 43 GHz (solid and dotted), 22 GHz (dotted)) for viewing angle of 60° for our jet dominated model.

In the text
thumbnail Fig. B.1

Run time (left) and speed-up factor (right) for RAPTOR using OpenMP and OpenACC.

In the text

Current usage metrics show cumulative count of Article Views (full-text article views including HTML views, PDF and ePub downloads, according to the available data) and Abstracts Views on Vision4Press platform.

Data correspond to usage on the plateform after 2015. The current usage metrics is available 48-96 hours after online publication and is updated daily on week days.

Initial download of the metrics may take a while.