|Message: Bug in the production of Cherenkov photons?||Not Logged In (login)|
Click on the Forum title, e.g. on the "Forums by Category" page, to read a sequence of postings to the Forum and its threads all in one page. If you are only interested in one thread or the thread following a specific posting, click the thread or the posting, which takes you to a smaller page, which contains only the part you are interested in and may be easier to navigate.
Messages are "chained" if there are only replies at the first level, i.e. 1/1.html, 1/1/1.html etc. In case of "chained" messages the message number is replaced by the icon and there is no indentation.
Inline: Display the subject line only or also the text of the posting(s); for the choice "All" the "Outline" choices are switched off.
|1||0||1||no text / full text of posting|
|2||1||All||text for level 1 only / text for All postings|
Outline: Choose the depth of the posting thread, successive toggle controls provide increasing detail.
|1||2||1||2 levels / 1 level (original posting)|
|2||3||2||3 levels / 2 levels|
|3||3||All||3 levels / all levels (all postings)|
When doing some validation plots, I encountered a problem in the production of Cherenkov photons and I believe it is caused by a bug:|
1) When simulating a material with an energy-independent refraction index, I get a Cherenkov spectrum with the number of photons equally distributed over the full energy range (as expected).
2) When simulating a material with a refraction index that is rising linearly with rising energy (in my case from 1.125 at 1eV to 1.8 at 15eV), everything is fine and the result is a Cherenkov spectrum which shows a decreasing number of photons with decreasing energy/refraction index and which stops at the energy then the refraction index falls below the critical value (n < 1/beta).
3) When simulating the refraction index the other way round (in my case decreasing from 1.8 at 1eV to 1.125 at 15eV), one would expect the same results as before (just the other way round). But the simulation shows a different behaviour: For small beta values (the refractive index falls below the critical value), no photons are produced. For larger beta values (the refractive index is always above the critical value), photons are produced, but they are distributed like in the case of an energy-independent refraction index.
4) To investigate this, I also simulated a more complex refractive index:
The resulting energy distribution
shows, that the simulation limits the refraction index (that is effectively used for the Cherenkov process) to values below the last value specified in the G4MaterialPropertyVector (in my case 1.7 at 15eV). As a result, unexpected plateaus appear in the energy distribution.
I looked into the G4Cerenkov.cc and I think there is mistake in the usage of G4MaterialPropertyVector::GetMinValue() and G4MaterialPropertyVector::GetMaxValue():
The names of the functions suggest that they return the minimal/maximal property (-> refractive index) value that is specified in the G4MaterialPropertyVector. In that case, the line "if (nMax < BetaInverse) -> no photons generated" would be correct. (No Cherenkov photons, if the maximal refractive index is below the critical value)
But actually, these functions just return the first/last entry and not the maximal/minimal one (I think the G4MaterialPropertyVector class was change in the last few years. Maybe before that, the functions did what there names suggest.). This results in the problem described in 3).
The problem described in 4) suggests the conclusion, that The same functions are used in other stages of the creation of Cherenkov photons and leading to the use of wrong refraction index values and thus a wrong number of Cherenkov photons, a wrong energy distribution, and wrong emission angles.
|Inline Depth:||Outline Depth:||Add message:|