Comments (9)
Copying @jsitarek's last comment from issue #50
I did some simple calculations using this disk absorption, the details are in the attached notebook
check_tau_disk.ipynb.gzsome conclusions:
- when I define a disk with a given luminosity and integrate back this luminosity but a value that is off by a factor of 2-3, this can be partially because of the simplification of monoenergetic photons at each radius, but what is nasty is the dependence on eta and radius of the disk, which should not be there. The way how the temperatures are computed is a bit complex, with converting back and forth to Eddington luminosity, but there is no dependence on R_in and R_out in the formula, which obviously affects the actual luminosity
- for narrow disk the threshold values that I was getting from simple calcualtions seem to agree with what agnpy computes, however I had to use the "epsilon" parameter from the disk class (see 1) )
- what I do not understand is dependence with distance, shifting the emission region 10 times farther and keeping the threshold the same tau decreased not by 10^2 but by 5 x 10^6, really strange. Tracking this in the code in line 153 of absorption.py there is a factor of 1/l^3 which I do not understand, where 'l' is the distance from the BH. I think there should be a factor that is more or less 1/l^2 from the density of the radiation field (however not exactly, because the distance not to the BH but to the individual disk element should be used), so where does the third l come from?
from agnpy.
No updates here after PR #76, still there is this order-of-magnitude mismatch in the energy threshold where the absorption becomes relevant.
from agnpy.
Hi @cosimoNigro
something came to my mind, in addition to those problems that we have with the disk luminosity, do you compute those optical depths on disk radiation for movement along the jet axis, or at the angle corresponding to the jet angle. This is a similar problem like we had with other absorption classes, but for the disk this is much more important and can produce really huge differences because of its small size
EDIT, since you mentioned in the previous post that it is after PR#76, you probably already tested it, but just to be sure...
from agnpy.
Hello @jsitarek,
in an attempt to revive this long-standing issue I created this notebook re-implementing from scratch the formula for the absorption from Finke 2016 and comparing it against another formula, for the same absorption, obtained by Dermer et al, in a 2009 paper (see references in the notebook).
The issue remains, I am not able to reproduce any of the absorptions on Disk that we have in the agnpy data.
Still, the formulas of Finke and Dermer match exactly - not so surprisingly, of course, assumptions and ingredients are the same.
I don't know what I am doing wrong and I am really lost. I thought we might be calculating the energy of the disk wrongly, but the external Compton SEDs (that use the same functions) match nicely with the data. Additionally for implementing the Dermer 2009 formula I re-defined everything and used nothing from agnpy.
Also, on the paper side, I produced nice crosschecks plots for all the processes BUT this - I will share them with you soon. I don't know how to proceed if we do not get a decent match with the Disk absorption... but maybe we can continue this discussion in private.
Please check the notebook if you have time, I wrote in the cells also the formulas I have used.
Thanks!
P.S. in the disk case we are just assuming mu_s = 1
.
from agnpy.
Hi @cosimoNigro
I started looking into this.
You wrote that the formulae from Dermer and Finke match, however I think this is not the case. There are two errors in the last cell, you plot twice Finke's points, and also Dermer's formula is evaluated from R_in to R_in (resulting in zeros), rather from R_in to R_out
from agnpy.
ops, sorry I will correct it asap!
from agnpy.
some more thoughts about this.
I was trying to follow the R, l, mu, .... dependences of the density of photons
basically epsilon ~ T ~ R^-3/4. The total amount of energy radiated goes as T^4, but you need to divide by epsilon so you end up with T^3, the BB emission is angle dependent and go as ~mu, and on top of this you should have 1/x^2 from the R^2 law.
and integration is over R, so dS = 2pi R dR
so n ~ R^-9/4 * x^-2 * mu * R
and since
x = l / mu
you get n ~ R^-5/4 * l^-2 * mu ^3
this is more or less what is in Dermer formula (1 + R^2/l^2)^-3/2 = mu^3
but in Finke's formula you get mu^-3, this is strange
BTW, fi(R) in both formulas are completely different, but this is not very important
from agnpy.
I've spend some more time on that, and here is the update.
I tried to implement it from scratch using Dermer's scalings, but integrating in log space of R and also computing the photon density explicitely. I got something that have the shape of your Finke's implementation, but missing a 2/3 factor (I'm not sure if I got all the 4 pi's right). Nevertheless the main problem, i.e. shifts in energy w.r.t. Dermer's plot are still there.
I'm wondering if we understand all the paramters used in Dermer's plot. For example, I'm pretty sure that R_out is not 200. In the paper they integrate up to infinity and the distance in X axis between the three red lines is the same, which would work better with larger R_out,
from agnpy.
Hi @cosimoNigro,
I have some more news about this disk absorption. I still have no idea why there is a difference w.r.t. Dermer's and Finke's papers (except of what I wrote in the previous post). I also did not investigate this factor of 2/3, because it is small comparing to those differences.
I did however some comparisons with an old paper https://ui.adsabs.harvard.edu/abs/2008MNRAS.391..624S/abstract
It is not directly comparable, because in that paper we were not assuming monoenergetic approximation (and not assuming supression at the smallest radii), but using the full BB spectrum, and also different basic parameters are used, but I tried to translate one to another.
The tau values in that paper are not as steep as from those two reimplemented functions, but this can be due to the monoenergetic approximation in agnpy functions.
The threshold itself also looks a bit higher than in the paper (note that for comparisons with Finke and Dermer it was the other way around !)
More worrying is a difference by a factor of a few in the absolute value, which can be also somewhat affected by this approximation, but I do not think that the effect can be so large.
details in the attached notebook
disk_abs_vs_sb2008.tar.gz
from agnpy.
Related Issues (20)
- Introducing a Particle class HOT 1
- Incompatibility between astropy 5.0.1 and agnpy 0.1.8 ? HOT 1
- bug when simulation of gammapy datasets with an agnpy spectrum model HOT 9
- Absorption calculation stability HOT 1
- Add sherpa and gammapy among the dependencies (add them to install_requires in setup.py) HOT 4
- Add a CITATION.cff file?
- TypeError: __init__() got an unexpected keyword argument 'is_norm' HOT 3
- Bullet points of lists disappear on Read the Docs HOT 1
- Error in the EBL absorption HOT 1
- Error in InterpolatedDistribution HOT 11
- Discrepancy between AGNpy and LeHa code in proton synchrotron
- Add the synchrotron proton to the models available for fitting
- Issue with fitting MWL SED using agnpy HOT 7
- Return the different SED components after a fit HOT 2
- Problem about load_absorption_table in class EBL HOT 2
- Problem about load_absorption_table in class EBL
- Move the tests to the subdirectory of each module. HOT 1
- Fitting of a MWL BL Lac SED: Fit doesn't converge. HOT 1
- d_L parameter in blob definition spoiling older code and examples
- Logging is silently disabled on agnpy import HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from agnpy.