A Cunningham transfer function integrator written in the Zig programming language. Constructs relativistic lineprofile spectra for use with SpectralFitting.jl, HEASoft's XSPEC, and beyond. This code integrates pre-computed Green's function / Cunningham transfer functions with an interpolated emissivity function, solving
on energy grids
The pre-computed transfer functions in
To install into XSPEC, follow the guide in the release description. The latest pre-computed table model is currently v0.1.0, and can be downloaded directly from here.
- Note: this model is compatible with XSPEC v12.13 onwards, and will not compile for older versions due to breaking changes in the generated model wrappers.
Note that building from source is not reqiured in order to use this model. See the Usage section above.
To build the static library from source, compile with Zig 0.12.0-dev.1647+325e0f5f0:
git clone https://github.com/fjebaker/lineprofiles \
&& cd lineprofiles \
&& zig build -Doptimize=ReleaseFast xspec
A number of different models are included in the source code, and additional models can be tailored to meet specific needs. A la carte:
-
kline
: lineprofiles with power-law emissivities of the form$\varepsilon(r) = r^{-\alpha}$ .
Parameter | Description |
---|---|
a |
Unitless black hole spin |
incl |
Observer inclination |
eline |
Energy of central line (e.g. Fe K$\alpha$ 6.4 keV) |
alpha |
Emissivity powerlaw index |
rmin |
Inner radius of the accretion disc |
rout |
Outer radius of the accretion disc |
kline5
: lineprofiles with emissivity given as an interpolated power-law between 5 knots.
Parameter | Description |
---|---|
a |
Unitless black hole spin |
incl |
Observer inclination |
eline |
Energy of central line (e.g. Fe K$\alpha$ 6.4 keV) |
alpha |
Emissivity powerlaw index beyond e5
|
rmin |
Inner radius of the accretion disc |
rout |
Outer radius of the accretion disc |
e1 to e5
|
Emissivity interpolation knots (see Emissivity interpolation) |
kconv
: convolutional analog ofkline
.
Parameter | Description |
---|---|
a |
Unitless black hole spin |
incl |
Observer inclination |
alpha |
Emissivity powerlaw index |
rmin |
Inner radius of the accretion disc |
rout |
Outer radius of the accretion disc |
kconv5
: convolutional analog ofkline5
.
Parameter | Description |
---|---|
a |
Unitless black hole spin |
incl |
Observer inclination |
alpha |
Emissivity powerlaw index beyond e5
|
rmin |
Inner radius of the accretion disc |
rout |
Outer radius of the accretion disc |
e1 to e5
|
Emissivity interpolation knots (see Emissivity interpolation) |
The emissivity function in klineN
and kconvN
is calculated with a linear interpolation in
where the different
The cutoff radius
This interpolation regime is in order to mimic the different emissivity functions of a disc irradiated by some arbitrary, axis-symmetric ionizing flux. The ionizing flux may itself be a consequence of different coronal models for the black hole. Fitting the emissivity functions should thereby allow the model to infer general properties about e.g. the morphology or position of the corona.
For example, the ionizing flux of a lamp post corona around a maximally spinning black hole at height