Black Hole Spectra¶
Black hole spectra can be generated by combining a BlackHoles (for particle, BlackHole for parametric) object with an EmissionModel, translating the physical properties of the blackhole(s) (e.g. mass, accretion_rate, etc.) to a spectral energy distribution.
These models are described in detail in the emission model docs. Here, we’ll use an instance of a UnifiedAGN model for demonstration purposes.
The following sections demonstrate the generation of combined spectra (which is the same for both parametric and particle BlackHoles) and per-particle spectra.
[1]:
import numpy as np
from unyt import K, Mpc, Msun, cm, deg, yr
from synthesizer import Grid
from synthesizer.emission_models import (
Greybody,
UnifiedAGN,
)
from synthesizer.emission_models.attenuation import PowerLaw
from synthesizer.parametric import BlackHole
# Get the NLR and BLR grids
nlr_grid = Grid("test_grid_agn-nlr")
blr_grid = Grid("test_grid_agn-blr")
# Initialise the BlackHole object setting most of the key attributes
blackhole = BlackHole(
mass=1e8 * Msun,
inclination=60 * deg,
accretion_rate_eddington=0.1,
covering_fraction_nlr=0.1,
covering_fraction_blr=0.1,
metallicity=0.01,
theta_torus=20 * deg,
)
# Initialise the UnifiedAGN model
uniagn = UnifiedAGN(
nlr_grid,
blr_grid,
ionisation_parameter_nlr=0.01,
hydrogen_density_nlr=1e4 * cm**-3,
ionisation_parameter_blr=0.1,
hydrogen_density_blr=1e10 * cm**-3,
torus_emission_model=Greybody(1000 * K, 1.5),
)
Integrated spectra¶
To generate integrated spectra we simply call the component’s get_spectra method. This method will populate the component’s spectra attribute with a dictionary containing Sed objects for each spectra in the EmissionModel. It will also return the spectra at the root of the EmissionModel.
[2]:
# Get the spectra using a unified agn model (instantiated elsewhere)
spectra = blackhole.get_spectra(uniagn)
fig, ax = blackhole.plot_spectra(
show=True,
ylimits=(10**27.5, 10**34.0),
figsize=(10, 8),
)
print(blackhole.model_param_cache)
{'disc_incident_masked': {'inclination': unyt_quantity(60., 'degree'), 'theta_torus': unyt_array(20., 'degree'), 'torus_edgeon_cond': unyt_quantity(80., 'degree'), 'mass': unyt_quantity(1.e+08, 'Msun'), 'log10mass': array(8.), 'accretion_rate_eddington': np.float64(3.827e+32), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5000000000000001), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.1), 'hydrogen_density': unyt_quantity(1.e+09, 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'incident', 'emitter': 'blackhole', 'masks': 'torus_edgeon_cond < 90 degree'}, 'disc_transmitted_nlr_full': {'inclination': unyt_quantity(60., 'degree'), 'theta_torus': unyt_array(20., 'degree'), 'torus_edgeon_cond': unyt_quantity(80., 'degree'), 'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5000000000000001), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.01), 'hydrogen_density': unyt_quantity(10000., 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'transmitted', 'emitter': 'blackhole', 'masks': 'torus_edgeon_cond < 90 degree'}, 'disc_transmitted_blr_full': {'inclination': unyt_quantity(60., 'degree'), 'theta_torus': unyt_array(20., 'degree'), 'torus_edgeon_cond': unyt_quantity(80., 'degree'), 'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5000000000000001), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.1), 'hydrogen_density': unyt_quantity(1.e+09, 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'transmitted', 'emitter': 'blackhole', 'masks': 'torus_edgeon_cond < 90 degree'}, 'full_reprocessed_nlr': {'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.01), 'hydrogen_density': unyt_quantity(10000., 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'nebular', 'emitter': 'blackhole'}, 'full_reprocessed_blr': {'inclination': unyt_quantity(60., 'degree'), 'theta_torus': unyt_array(20., 'degree'), 'torus_edgeon_cond': unyt_quantity(80., 'degree'), 'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.1), 'hydrogen_density': unyt_quantity(1.e+09, 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'nebular', 'emitter': 'blackhole', 'masks': 'torus_edgeon_cond < 90 degree'}, 'disc_incident_isotropic': {'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.1), 'hydrogen_density': unyt_quantity(1.e+09, 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'incident', 'emitter': 'blackhole'}, 'disc_transmitted_nlr_isotropic_full': {'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.01), 'hydrogen_density': unyt_quantity(10000., 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'transmitted', 'emitter': 'blackhole'}, 'disc_transmitted_blr_isotropic_full': {'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.1), 'hydrogen_density': unyt_quantity(1.e+09, 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'transmitted', 'emitter': 'blackhole'}, 'full_continuum_nlr': {'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.01), 'hydrogen_density': unyt_quantity(10000., 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'nebular_continuum', 'emitter': 'blackhole'}, 'disc_incident': {'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5000000000000001), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.1), 'hydrogen_density': unyt_quantity(1.e+09, 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'incident', 'emitter': 'blackhole'}, 'full_continuum_blr': {'inclination': unyt_quantity(60., 'degree'), 'theta_torus': unyt_array(20., 'degree'), 'torus_edgeon_cond': unyt_quantity(80., 'degree'), 'log10mass': array(8.), 'log10accretion_rate_eddington': np.float64(32.5828584622245), 'cosine_inclination': np.float64(0.5), 'metallicity': np.float64(0.01), 'metallicities': np.float64(0.01), 'ionisation_parameter': np.float64(0.1), 'hydrogen_density': unyt_quantity(1.e+09, 'cm**(-3)'), 'bolometric_luminosity': unyt_quantity(1.2567868e+45, 'erg/s'), 'bolometric_luminosities': unyt_quantity(1.2567868e+45, 'erg/s'), 'extract': 'nebular_continuum', 'emitter': 'blackhole', 'masks': 'torus_edgeon_cond < 90 degree'}, 'disc_escaped': {'transmission_fraction_escape': np.float64(0.8), 'apply_to': 'disc_incident_masked', 'transformer': "CoveringFraction(covering_attrs=('transmission_fraction_escape',))", 'emitter': 'blackhole'}, 'disc_transmitted_nlr': {'transmission_fraction_nlr': np.float64(0.1), 'apply_to': 'disc_transmitted_nlr_full', 'transformer': "CoveringFraction(covering_attrs=('transmission_fraction_nlr',))", 'emitter': 'blackhole'}, 'disc_transmitted_blr': {'transmission_fraction_blr': np.float64(0.1), 'apply_to': 'disc_transmitted_blr_full', 'transformer': "CoveringFraction(covering_attrs=('transmission_fraction_blr',))", 'emitter': 'blackhole'}, 'nlr': {'covering_fraction_nlr': np.float64(0.1), 'apply_to': 'full_reprocessed_nlr', 'transformer': "CoveringFraction(covering_attrs=('covering_fraction_nlr',))", 'emitter': 'blackhole'}, 'blr': {'covering_fraction_blr': np.float64(0.1), 'apply_to': 'full_reprocessed_blr', 'transformer': "CoveringFraction(covering_attrs=('covering_fraction_blr',))", 'emitter': 'blackhole'}, 'torus': {'temperature': unyt_array(1000., 'K'), 'emissivity': np.float64(1.5), 'generator': 'Greybody(scaler=disc_incident_isotropic, temperature=1000.0 K, emissivity=1.5, optically_thin=True, lam_0=100.0 μm)', 'emitter': 'blackhole'}, 'disc_escaped_isotropic': {'covering_fraction_blr': np.float64(0.1), 'covering_fraction_nlr': np.float64(0.1), 'apply_to': 'disc_incident_isotropic', 'transformer': "EscapingFraction(covering_attrs=('covering_fraction_blr', 'covering_fraction_nlr'))", 'emitter': 'blackhole'}, 'disc_transmitted_nlr_isotropic': {'covering_fraction_nlr': np.float64(0.1), 'apply_to': 'disc_transmitted_nlr_isotropic_full', 'transformer': "CoveringFraction(covering_attrs=('covering_fraction_nlr',))", 'emitter': 'blackhole'}, 'disc_transmitted_blr_isotropic': {'covering_fraction_blr': np.float64(0.1), 'apply_to': 'disc_transmitted_blr_isotropic_full', 'transformer': "CoveringFraction(covering_attrs=('covering_fraction_blr',))", 'emitter': 'blackhole'}, 'nlr_continuum': {'covering_fraction_nlr': np.float64(0.1), 'apply_to': 'full_continuum_nlr', 'transformer': "CoveringFraction(covering_attrs=('covering_fraction_nlr',))", 'emitter': 'blackhole'}, 'blr_continuum': {'covering_fraction_blr': np.float64(0.1), 'apply_to': 'full_continuum_blr', 'transformer': "CoveringFraction(covering_attrs=('covering_fraction_blr',))", 'emitter': 'blackhole'}, 'disc_transmitted_weighted_combination': {'combine': ['disc_escaped', 'disc_transmitted_nlr', 'disc_transmitted_blr'], 'emitter': 'blackhole'}, 'line_regions': {'combine': ['nlr', 'blr'], 'emitter': 'blackhole'}, 'disc_averaged_without_torus': {'combine': ['disc_escaped_isotropic', 'disc_transmitted_nlr_isotropic', 'disc_transmitted_blr_isotropic'], 'emitter': 'blackhole'}, 'disc_transmitted': {'combine': ['disc_transmitted_weighted_combination'], 'emitter': 'blackhole'}, 'disc_averaged': {'torus_fraction': array(0.22222222), 'apply_to': 'disc_averaged_without_torus', 'transformer': "EscapingFraction(covering_attrs=('torus_fraction',))", 'emitter': 'blackhole'}, 'disc': {'combine': ['disc_transmitted'], 'emitter': 'blackhole'}, 'intrinsic': {'combine': ['disc', 'nlr', 'blr', 'torus'], 'emitter': 'blackhole'}}
Including dust attenuation¶
We can also generate spectra including attenuation and emission from diffuse dust along the line of sight to the black hole. This is now possible directly with the UnifiedAGN by passing a dust curve. The optical depth (tau_v) must be available on the emitter (the blackhole) or set by the emission model.
[3]:
tau_v = 0.5
# Initialise the UnifiedAGN model
uniagn_attenuated = UnifiedAGN(
nlr_grid,
blr_grid,
ionisation_parameter_nlr=0.01,
hydrogen_density_nlr=1e4 * cm**-3,
ionisation_parameter_blr=0.1,
hydrogen_density_blr=1e10 * cm**-3,
torus_emission_model=Greybody(1000 * K, 1.5),
diffuse_dust_curve=PowerLaw(slope=-1.0),
tau_v=tau_v,
)
We then follow the same process of calling get_spectra with the new model. The plot here shows luminosity rather than spectral energy density.
[4]:
spectra = blackhole.get_spectra(uniagn_attenuated)
fig, ax = blackhole.plot_spectra(
quantity_to_plot="luminosity",
figsize=(6, 4),
spectra_to_plot=["intrinsic", "attenuated"],
)
The spectra returned by get_spectra is the “dust_emission” spectra at the root of the emission model.
[5]:
print(spectra)
+----------------------------------------------------------------------------------------------------+
| SED |
+---------------------------+------------------------------------------------------------------------+
| Attribute | Value |
+---------------------------+------------------------------------------------------------------------+
| redshift | 0 |
+---------------------------+------------------------------------------------------------------------+
| ndim | 1 |
+---------------------------+------------------------------------------------------------------------+
| nlam | 9244 |
+---------------------------+------------------------------------------------------------------------+
| shape | (9244,) |
+---------------------------+------------------------------------------------------------------------+
| lam (9244,) | 1.30e-04 Å -> 2.99e+11 Å (Mean: 9.73e+09 Å) |
+---------------------------+------------------------------------------------------------------------+
| nu (9244,) | 1.00e+07 Hz -> 2.31e+22 Hz (Mean: 8.51e+19 Hz) |
+---------------------------+------------------------------------------------------------------------+
| lnu (9244,) | 0.00e+00 erg/(Hz*s) -> 1.45e+31 erg/(Hz*s) (Mean: 1.12e+29 erg/(Hz*s)) |
+---------------------------+------------------------------------------------------------------------+
| bolometric_luminosity | 3.823289995010006e+44 erg/s |
+---------------------------+------------------------------------------------------------------------+
| energy (9244,) | 4.14e-08 eV -> 9.56e+07 eV (Mean: 3.52e+05 eV) |
+---------------------------+------------------------------------------------------------------------+
| frequency (9244,) | 1.00e+07 Hz -> 2.31e+22 Hz (Mean: 8.51e+19 Hz) |
+---------------------------+------------------------------------------------------------------------+
| llam (9244,) | 0.00e+00 erg/(s*Å) -> 3.59e+41 erg/(s*Å) (Mean: 1.88e+39 erg/(s*Å)) |
+---------------------------+------------------------------------------------------------------------+
| luminosity (9244,) | 0.00e+00 erg/s -> 1.80e+45 erg/s (Mean: 1.24e+43 erg/s) |
+---------------------------+------------------------------------------------------------------------+
| luminosity_lambda (9244,) | 0.00e+00 erg/(s*Å) -> 3.59e+41 erg/(s*Å) (Mean: 1.88e+39 erg/(s*Å)) |
+---------------------------+------------------------------------------------------------------------+
| luminosity_nu (9244,) | 0.00e+00 erg/(Hz*s) -> 1.45e+31 erg/(Hz*s) (Mean: 1.12e+29 erg/(Hz*s)) |
+---------------------------+------------------------------------------------------------------------+
| wavelength (9244,) | 1.30e-04 Å -> 2.99e+11 Å (Mean: 9.73e+09 Å) |
+---------------------------+------------------------------------------------------------------------+
However, all the spectra are stored within a dictionary under the spectra attribute.
[6]:
print(blackhole.spectra)
{'disc_incident_masked': <synthesizer.emissions.sed.Sed object at 0x7f2eec159ea0>, 'disc_transmitted_nlr_full': <synthesizer.emissions.sed.Sed object at 0x7f2eec9816f0>, 'disc_transmitted_blr_full': <synthesizer.emissions.sed.Sed object at 0x7f2eec9828f0>, 'full_reprocessed_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2eec9836a0>, 'full_reprocessed_blr': <synthesizer.emissions.sed.Sed object at 0x7f2eec982b90>, 'disc_incident_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2eec981690>, 'disc_transmitted_nlr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e977ef7c0>, 'disc_transmitted_blr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e992a74f0>, 'full_continuum_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e992a7400>, 'disc_incident': <synthesizer.emissions.sed.Sed object at 0x7f2e992a65c0>, 'full_continuum_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e992a7580>, 'disc_escaped': <synthesizer.emissions.sed.Sed object at 0x7f2e97834f40>, 'disc_transmitted_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e978351b0>, 'disc_transmitted_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e97835030>, 'nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e978351e0>, 'blr': <synthesizer.emissions.sed.Sed object at 0x7f2e97835270>, 'torus': <synthesizer.emissions.sed.Sed object at 0x7f2e977efee0>, 'disc_escaped_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e97834f10>, 'disc_transmitted_nlr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e97835300>, 'disc_transmitted_blr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e97835120>, 'nlr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e97835360>, 'blr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e97834fa0>, 'disc_transmitted_weighted_combination': <synthesizer.emissions.sed.Sed object at 0x7f2e992a6860>, 'line_regions': <synthesizer.emissions.sed.Sed object at 0x7f2e992a72e0>, 'disc_averaged_without_torus': <synthesizer.emissions.sed.Sed object at 0x7f2e978350c0>, 'disc_transmitted': <synthesizer.emissions.sed.Sed object at 0x7f2e97835180>, 'disc_averaged': <synthesizer.emissions.sed.Sed object at 0x7f2e97835450>, 'disc': <synthesizer.emissions.sed.Sed object at 0x7f2e97835150>, 'intrinsic': <synthesizer.emissions.sed.Sed object at 0x7f2e978354b0>, 'attenuated': <synthesizer.emissions.sed.Sed object at 0x7f2e97835600>}
Particle spectra¶
To demonstrate the particle spectra functionality we first generate some mock particle black hole data, and initialise a BlackHoles object.
[7]:
from synthesizer.particle import BlackHoles
# Make fake properties
n = 4
masses = 10 ** np.random.uniform(low=7, high=9, size=n) * Msun
coordinates = np.random.normal(0, 1.5, (n, 3)) * Mpc
accretion_rates = 10 ** np.random.uniform(low=-2, high=1, size=n) * Msun / yr
metallicities = np.full(n, 0.01)
# And get the black holes object
blackholes = BlackHoles(
masses=masses,
coordinates=coordinates,
accretion_rates=accretion_rates,
metallicities=metallicities,
ionisation_parameter_nlr=0.01,
hydrogen_density_nlr=1e4 * cm**-3,
ionisation_parameter_blr=0.1,
hydrogen_density_blr=1e10 * cm**-3,
)
To generate a spectra for each black hole (per particle) we use the same emission model, but we need to tell the model to produce a spectrum for each particle. This is done by setting the per_particle flag to True on the model.
[8]:
uniagn_attenuated.set_per_particle(True)
With that done we just call the same get_spectra method on the component, and the particle spectra will be stored in the particle_spectra attribute of the component.
[9]:
spectra = blackholes.get_spectra(uniagn_attenuated, verbose=True)
Again, the returned spectra is the “dust_emission” spectra from the root of the model.
[10]:
print(spectra)
+------------------------------------------------------------------------------------------------------+
| SED |
+-----------------------------+------------------------------------------------------------------------+
| Attribute | Value |
+-----------------------------+------------------------------------------------------------------------+
| redshift | 0 |
+-----------------------------+------------------------------------------------------------------------+
| ndim | 2 |
+-----------------------------+------------------------------------------------------------------------+
| nlam | 9244 |
+-----------------------------+------------------------------------------------------------------------+
| shape | (4, 9244) |
+-----------------------------+------------------------------------------------------------------------+
| lam (9244,) | 1.30e-04 Å -> 2.99e+11 Å (Mean: 9.73e+09 Å) |
+-----------------------------+------------------------------------------------------------------------+
| nu (9244,) | 1.00e+07 Hz -> 2.31e+22 Hz (Mean: 8.51e+19 Hz) |
+-----------------------------+------------------------------------------------------------------------+
| lnu (4, 9244) | 0.00e+00 erg/(Hz*s) -> 1.18e+31 erg/(Hz*s) (Mean: 3.45e+28 erg/(Hz*s)) |
+-----------------------------+------------------------------------------------------------------------+
| bolometric_luminosity (4,) | 1.22e+43 erg/s -> 3.53e+44 erg/s (Mean: 1.39e+44 erg/s) |
+-----------------------------+------------------------------------------------------------------------+
| energy (9244,) | 4.14e-08 eV -> 9.56e+07 eV (Mean: 3.52e+05 eV) |
+-----------------------------+------------------------------------------------------------------------+
| frequency (9244,) | 1.00e+07 Hz -> 2.31e+22 Hz (Mean: 8.51e+19 Hz) |
+-----------------------------+------------------------------------------------------------------------+
| llam (4, 9244) | 0.00e+00 erg/(s*Å) -> 2.70e+41 erg/(s*Å) (Mean: 9.07e+38 erg/(s*Å)) |
+-----------------------------+------------------------------------------------------------------------+
| luminosity (4, 9244) | 0.00e+00 erg/s -> 1.35e+45 erg/s (Mean: 4.51e+42 erg/s) |
+-----------------------------+------------------------------------------------------------------------+
| luminosity_lambda (4, 9244) | 0.00e+00 erg/(s*Å) -> 2.70e+41 erg/(s*Å) (Mean: 9.07e+38 erg/(s*Å)) |
+-----------------------------+------------------------------------------------------------------------+
| luminosity_nu (4, 9244) | 0.00e+00 erg/(Hz*s) -> 1.18e+31 erg/(Hz*s) (Mean: 3.45e+28 erg/(Hz*s)) |
+-----------------------------+------------------------------------------------------------------------+
| wavelength (9244,) | 1.30e-04 Å -> 2.99e+11 Å (Mean: 9.73e+09 Å) |
+-----------------------------+------------------------------------------------------------------------+
While the spectra produced by get_particle_spectra are stored in a dictionary under the particle_spectra attribute.
[11]:
print(blackholes.particle_spectra)
{'disc_incident_masked': <synthesizer.emissions.sed.Sed object at 0x7f2e97835d20>, 'disc_transmitted_nlr_full': <synthesizer.emissions.sed.Sed object at 0x7f2eec983760>, 'disc_transmitted_blr_full': <synthesizer.emissions.sed.Sed object at 0x7f2eec983460>, 'full_reprocessed_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e977eebf0>, 'full_reprocessed_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473fe80>, 'disc_incident_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473cfa0>, 'disc_transmitted_nlr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f940>, 'disc_transmitted_blr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473ee60>, 'full_continuum_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f880>, 'full_continuum_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d4e0>, 'disc_incident': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d420>, 'disc_escaped': <synthesizer.emissions.sed.Sed object at 0x7f2e9473ce50>, 'disc_transmitted_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d360>, 'disc_transmitted_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473feb0>, 'nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473cd90>, 'blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c100>, 'torus': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f9d0>, 'disc_escaped_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d150>, 'disc_transmitted_nlr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d000>, 'disc_transmitted_blr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c7c0>, 'blr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c9a0>, 'nlr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c8e0>, 'disc_transmitted_weighted_combination': <synthesizer.emissions.sed.Sed object at 0x7f2e9473ca00>, 'line_regions': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f280>, 'disc_averaged_without_torus': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f340>, 'disc_transmitted': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f400>, 'disc_averaged': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f6d0>, 'disc': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c910>, 'intrinsic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473ffd0>, 'attenuated': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f310>}
Integrating spectra¶
The integrated spectra are automatically produced alongside per particle spectra. However, if we wanted to explictly get the integrated spectra from the particle spectra we just generated (for instance if we had made some modification after generation), we can call the integrate_particle_spectra method. This method will sum the individual spectra and populate the spectra dictionary.
Note, we can also integrate individual spectra using the Sed.sum() method.
[12]:
print(blackholes.spectra)
blackholes.integrate_particle_spectra()
print(blackholes.spectra)
fig, ax = blackholes.plot_spectra(
show=True, ylimits=(10**28.5, 10**34.0), figsize=(9, 7.2)
)
{'disc_incident_masked': <synthesizer.emissions.sed.Sed object at 0x7f2e977eed10>, 'disc_transmitted_nlr_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473faf0>, 'disc_transmitted_blr_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f520>, 'full_reprocessed_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f490>, 'full_reprocessed_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f820>, 'disc_incident_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473fee0>, 'disc_transmitted_nlr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f9a0>, 'disc_transmitted_blr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f8e0>, 'full_continuum_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d5d0>, 'full_continuum_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d480>, 'disc_incident': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d630>, 'disc_escaped': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d180>, 'disc_transmitted_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f8b0>, 'disc_transmitted_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c520>, 'nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d300>, 'blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c070>, 'torus': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d030>, 'disc_escaped_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473cfd0>, 'disc_transmitted_nlr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c2b0>, 'disc_transmitted_blr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c880>, 'blr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e9473cee0>, 'nlr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c940>, 'disc_transmitted_weighted_combination': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f250>, 'line_regions': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f2e0>, 'disc_averaged_without_torus': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f3a0>, 'disc_transmitted': <synthesizer.emissions.sed.Sed object at 0x7f2e9473ffa0>, 'disc_averaged': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f3d0>, 'disc': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c8b0>, 'intrinsic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f6a0>, 'attenuated': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c280>}
{'disc_incident_masked': <synthesizer.emissions.sed.Sed object at 0x7f2eec983730>, 'disc_transmitted_nlr_full': <synthesizer.emissions.sed.Sed object at 0x7f2e977eed10>, 'disc_transmitted_blr_full': <synthesizer.emissions.sed.Sed object at 0x7f2eec9aa110>, 'full_reprocessed_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473cf10>, 'full_reprocessed_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f520>, 'disc_incident_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f490>, 'disc_transmitted_nlr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f820>, 'disc_transmitted_blr_isotropic_full': <synthesizer.emissions.sed.Sed object at 0x7f2e9473fee0>, 'full_continuum_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f9a0>, 'full_continuum_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f8e0>, 'disc_incident': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d5d0>, 'disc_escaped': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d480>, 'disc_transmitted_nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d630>, 'disc_transmitted_blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d180>, 'nlr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f8b0>, 'blr': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c520>, 'torus': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d300>, 'disc_escaped_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c070>, 'disc_transmitted_nlr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473d030>, 'disc_transmitted_blr_isotropic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473cfd0>, 'blr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c2b0>, 'nlr_continuum': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c880>, 'disc_transmitted_weighted_combination': <synthesizer.emissions.sed.Sed object at 0x7f2e9473cee0>, 'line_regions': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c940>, 'disc_averaged_without_torus': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f250>, 'disc_transmitted': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f2e0>, 'disc_averaged': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f3a0>, 'disc': <synthesizer.emissions.sed.Sed object at 0x7f2e9473ffa0>, 'intrinsic': <synthesizer.emissions.sed.Sed object at 0x7f2e9473f3d0>, 'attenuated': <synthesizer.emissions.sed.Sed object at 0x7f2e9473c8b0>}
Printing Used Parameters¶
During spectra generation, emission models cache the parameters they extract and use from the emitter. These cached parameters can be printed in a nicely formatted table to inspect which values were actually used by each model.
[13]:
# Print the cached parameters used by the models
blackholes.print_used_parameters()
+----------------------------------------------------------------------------------------------+
| MODEL: DISC_INCIDENT_MASKED |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 1.00 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.10 |
+------------------------------------+---------------------------------------------------------+
| extract | 'incident' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| masks | 'torus_edgeon_cond < 90 degree' |
+------------------------------------+---------------------------------------------------------+
| inclination | 0.0 degree |
+------------------------------------+---------------------------------------------------------+
| theta_torus | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| torus_edgeon_cond | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| mass (4,) | 1.07e+07 Msun -> 9.62e+08 Msun (Mean: 4.67e+08 Msun) |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| accretion_rate_eddington (4,) | 2.16e+30 -> 5.06e+33 (Mean: 1.51e+33) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000000000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_NLR_FULL |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 1.00 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.01 |
+------------------------------------+---------------------------------------------------------+
| extract | 'transmitted' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| masks | 'torus_edgeon_cond < 90 degree' |
+------------------------------------+---------------------------------------------------------+
| inclination | 0.0 degree |
+------------------------------------+---------------------------------------------------------+
| theta_torus | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| torus_edgeon_cond | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_BLR_FULL |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 1.00 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.10 |
+------------------------------------+---------------------------------------------------------+
| extract | 'transmitted' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| masks | 'torus_edgeon_cond < 90 degree' |
+------------------------------------+---------------------------------------------------------+
| inclination | 0.0 degree |
+------------------------------------+---------------------------------------------------------+
| theta_torus | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| torus_edgeon_cond | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000000000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: FULL_REPROCESSED_NLR |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 0.50 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.01 |
+------------------------------------+---------------------------------------------------------+
| extract | 'nebular' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: FULL_REPROCESSED_BLR |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 0.50 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.10 |
+------------------------------------+---------------------------------------------------------+
| extract | 'nebular' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| masks | 'torus_edgeon_cond < 90 degree' |
+------------------------------------+---------------------------------------------------------+
| inclination | 0.0 degree |
+------------------------------------+---------------------------------------------------------+
| theta_torus | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| torus_edgeon_cond | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000000000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: DISC_INCIDENT_ISOTROPIC |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 0.50 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.10 |
+------------------------------------+---------------------------------------------------------+
| extract | 'incident' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000000000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_NLR_ISOTROPIC_FULL |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 0.50 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.01 |
+------------------------------------+---------------------------------------------------------+
| extract | 'transmitted' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_BLR_ISOTROPIC_FULL |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 0.50 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.10 |
+------------------------------------+---------------------------------------------------------+
| extract | 'transmitted' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000000000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: FULL_CONTINUUM_BLR |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 0.50 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.10 |
+------------------------------------+---------------------------------------------------------+
| extract | 'nebular_continuum' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| masks | 'torus_edgeon_cond < 90 degree' |
+------------------------------------+---------------------------------------------------------+
| inclination | 0.0 degree |
+------------------------------------+---------------------------------------------------------+
| theta_torus | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| torus_edgeon_cond | 10.0 degree |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000000000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: FULL_CONTINUUM_NLR |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 0.50 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.01 |
+------------------------------------+---------------------------------------------------------+
| extract | 'nebular_continuum' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+----------------------------------------------------------------------------------------------+
| MODEL: DISC_INCIDENT |
+------------------------------------+---------------------------------------------------------+
| Attribute | Value |
+------------------------------------+---------------------------------------------------------+
| cosine_inclination | 1.00 |
+------------------------------------+---------------------------------------------------------+
| ionisation_parameter | 0.10 |
+------------------------------------+---------------------------------------------------------+
| extract | 'incident' |
+------------------------------------+---------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------------+---------------------------------------------------------+
| log10mass (4,) | 7.03e+00 -> 8.98e+00 (Mean: 8.09e+00) |
+------------------------------------+---------------------------------------------------------+
| log10accretion_rate_eddington (4,) | 3.03e+01 -> 3.37e+01 (Mean: 3.19e+01) |
+------------------------------------+---------------------------------------------------------+
| metallicities (4,) | 1.00e-02 -> 1.00e-02 (Mean: 1.00e-02) |
+------------------------------------+---------------------------------------------------------+
| hydrogen_density | 10000000000.0 cm**(-3) |
+------------------------------------+---------------------------------------------------------+
| bolometric_luminosities (4,) | 6.15e+43 erg/s -> 1.78e+45 erg/s (Mean: 7.03e+44 erg/s) |
+------------------------------------+---------------------------------------------------------+
+-----------------------------------------------------------------------------------------------------+
| MODEL: DISC_ESCAPED |
+------------------------------+----------------------------------------------------------------------+
| Attribute | Value |
+------------------------------+----------------------------------------------------------------------+
| transmission_fraction_escape | 0.80 |
+------------------------------+----------------------------------------------------------------------+
| apply_to | 'disc_incident_masked' |
+------------------------------+----------------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('transmission_fraction_escape',))" |
+------------------------------+----------------------------------------------------------------------+
| emitter | 'blackhole' |
+------------------------------+----------------------------------------------------------------------+
+-----------------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_NLR |
+---------------------------+-------------------------------------------------------------------+
| Attribute | Value |
+---------------------------+-------------------------------------------------------------------+
| transmission_fraction_nlr | 0.10 |
+---------------------------+-------------------------------------------------------------------+
| apply_to | 'disc_transmitted_nlr_full' |
+---------------------------+-------------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('transmission_fraction_nlr',))" |
+---------------------------+-------------------------------------------------------------------+
| emitter | 'blackhole' |
+---------------------------+-------------------------------------------------------------------+
+-----------------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_BLR |
+---------------------------+-------------------------------------------------------------------+
| Attribute | Value |
+---------------------------+-------------------------------------------------------------------+
| transmission_fraction_blr | 0.10 |
+---------------------------+-------------------------------------------------------------------+
| apply_to | 'disc_transmitted_blr_full' |
+---------------------------+-------------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('transmission_fraction_blr',))" |
+---------------------------+-------------------------------------------------------------------+
| emitter | 'blackhole' |
+---------------------------+-------------------------------------------------------------------+
+---------------------------------------------------------------------------------------+
| MODEL: NLR |
+-----------------------+---------------------------------------------------------------+
| Attribute | Value |
+-----------------------+---------------------------------------------------------------+
| covering_fraction_nlr | 0.10 |
+-----------------------+---------------------------------------------------------------+
| apply_to | 'full_reprocessed_nlr' |
+-----------------------+---------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('covering_fraction_nlr',))" |
+-----------------------+---------------------------------------------------------------+
| emitter | 'blackhole' |
+-----------------------+---------------------------------------------------------------+
+---------------------------------------------------------------------------------------+
| MODEL: BLR |
+-----------------------+---------------------------------------------------------------+
| Attribute | Value |
+-----------------------+---------------------------------------------------------------+
| covering_fraction_blr | 0.10 |
+-----------------------+---------------------------------------------------------------+
| apply_to | 'full_reprocessed_blr' |
+-----------------------+---------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('covering_fraction_blr',))" |
+-----------------------+---------------------------------------------------------------+
| emitter | 'blackhole' |
+-----------------------+---------------------------------------------------------------+
+-------------------------------------------------------------------------------------------------------------------------------------+
| MODEL: TORUS |
+-------------+-----------------------------------------------------------------------------------------------------------------------+
| Attribute | Value |
+-------------+-----------------------------------------------------------------------------------------------------------------------+
| emissivity | 1.50 |
+-------------+-----------------------------------------------------------------------------------------------------------------------+
| generator | 'Greybody(scaler=disc_incident_isotropic, temperature=1000.0 K, emissivity=1.5, optically_thin=True, lam_0=100.0 μm)' |
+-------------+-----------------------------------------------------------------------------------------------------------------------+
| emitter | 'blackhole' |
+-------------+-----------------------------------------------------------------------------------------------------------------------+
| temperature | 1000.0 K |
+-------------+-----------------------------------------------------------------------------------------------------------------------+
+---------------------------------------------------------------------------------------------------------------+
| MODEL: DISC_ESCAPED_ISOTROPIC |
+-----------------------+---------------------------------------------------------------------------------------+
| Attribute | Value |
+-----------------------+---------------------------------------------------------------------------------------+
| covering_fraction_blr | 0.10 |
+-----------------------+---------------------------------------------------------------------------------------+
| covering_fraction_nlr | 0.10 |
+-----------------------+---------------------------------------------------------------------------------------+
| apply_to | 'disc_incident_isotropic' |
+-----------------------+---------------------------------------------------------------------------------------+
| transformer | "EscapingFraction(covering_attrs=('covering_fraction_blr', 'covering_fraction_nlr'))" |
+-----------------------+---------------------------------------------------------------------------------------+
| emitter | 'blackhole' |
+-----------------------+---------------------------------------------------------------------------------------+
+---------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_NLR_ISOTROPIC |
+-----------------------+---------------------------------------------------------------+
| Attribute | Value |
+-----------------------+---------------------------------------------------------------+
| covering_fraction_nlr | 0.10 |
+-----------------------+---------------------------------------------------------------+
| apply_to | 'disc_transmitted_nlr_isotropic_full' |
+-----------------------+---------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('covering_fraction_nlr',))" |
+-----------------------+---------------------------------------------------------------+
| emitter | 'blackhole' |
+-----------------------+---------------------------------------------------------------+
+---------------------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_BLR_ISOTROPIC |
+-----------------------+---------------------------------------------------------------+
| Attribute | Value |
+-----------------------+---------------------------------------------------------------+
| covering_fraction_blr | 0.10 |
+-----------------------+---------------------------------------------------------------+
| apply_to | 'disc_transmitted_blr_isotropic_full' |
+-----------------------+---------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('covering_fraction_blr',))" |
+-----------------------+---------------------------------------------------------------+
| emitter | 'blackhole' |
+-----------------------+---------------------------------------------------------------+
+---------------------------------------------------------------------------------------+
| MODEL: BLR_CONTINUUM |
+-----------------------+---------------------------------------------------------------+
| Attribute | Value |
+-----------------------+---------------------------------------------------------------+
| covering_fraction_blr | 0.10 |
+-----------------------+---------------------------------------------------------------+
| apply_to | 'full_continuum_blr' |
+-----------------------+---------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('covering_fraction_blr',))" |
+-----------------------+---------------------------------------------------------------+
| emitter | 'blackhole' |
+-----------------------+---------------------------------------------------------------+
+---------------------------------------------------------------------------------------+
| MODEL: NLR_CONTINUUM |
+-----------------------+---------------------------------------------------------------+
| Attribute | Value |
+-----------------------+---------------------------------------------------------------+
| covering_fraction_nlr | 0.10 |
+-----------------------+---------------------------------------------------------------+
| apply_to | 'full_continuum_nlr' |
+-----------------------+---------------------------------------------------------------+
| transformer | "CoveringFraction(covering_attrs=('covering_fraction_nlr',))" |
+-----------------------+---------------------------------------------------------------+
| emitter | 'blackhole' |
+-----------------------+---------------------------------------------------------------+
+------------------------------------------------------------------------+
| MODEL: DISC_TRANSMITTED_WEIGHTED_COMBINATION |
+----------+-------------------------------------------------------------+
| Attribute | Value |
+----------+-------------------------------------------------------------+
| emitter | 'blackhole' |
+----------+-------------------------------------------------------------+
| combine | [disc_escaped, disc_transmitted_nlr, disc_transmitted_blr,] |
+----------+-------------------------------------------------------------+
+------------------------+
| MODEL: LINE_REGIONS |
+----------+-------------+
| Attribute | Value |
+----------+-------------+
| emitter | 'blackhole' |
+----------+-------------+
| combine | [nlr, blr] |
+----------+-------------+
+---------------------------------------------------------------------+
| MODEL: DISC_AVERAGED_WITHOUT_TORUS |
+----------+----------------------------------------------------------+
| Attribute | Value |
+----------+----------------------------------------------------------+
| emitter | 'blackhole' |
+----------+----------------------------------------------------------+
| combine | [disc_escaped_isotropic, disc_transmitted_nlr_isotropic, |
| | disc_transmitted_blr_isotropic, ] |
+----------+----------------------------------------------------------+
+------------------------------------------------------+
| MODEL: DISC_TRANSMITTED |
+----------+-------------------------------------------+
| Attribute | Value |
+----------+-------------------------------------------+
| emitter | 'blackhole' |
+----------+-------------------------------------------+
| combine | [disc_transmitted_weighted_combination, ] |
+----------+-------------------------------------------+
+-------------------------------------------------------------------------+
| MODEL: DISC_AVERAGED |
+----------------+--------------------------------------------------------+
| Attribute | Value |
+----------------+--------------------------------------------------------+
| apply_to | 'disc_averaged_without_torus' |
+----------------+--------------------------------------------------------+
| transformer | "EscapingFraction(covering_attrs=('torus_fraction',))" |
+----------------+--------------------------------------------------------+
| emitter | 'blackhole' |
+----------------+--------------------------------------------------------+
| torus_fraction | 0.1111111111111111 |
+----------------+--------------------------------------------------------+
+---------------------------------+
| MODEL: DISC |
+----------+----------------------+
| Attribute | Value |
+----------+----------------------+
| emitter | 'blackhole' |
+----------+----------------------+
| combine | [disc_transmitted, ] |
+----------+----------------------+
+------------------------------------+
| MODEL: INTRINSIC |
+----------+-------------------------+
| Attribute | Value |
+----------+-------------------------+
| emitter | 'blackhole' |
+----------+-------------------------+
| combine | [disc, nlr, blr, torus] |
+----------+-------------------------+
+--------------------------------------+
| MODEL: ATTENUATED |
+-------------+------------------------+
| Attribute | Value |
+-------------+------------------------+
| tau_v | 0.50 |
+-------------+------------------------+
| apply_to | 'intrinsic' |
+-------------+------------------------+
| transformer | 'PowerLaw(slope=-1.0)' |
+-------------+------------------------+
| emitter | 'blackhole' |
+-------------+------------------------+