|Message: Re: 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)|
> 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).
This is a normally dispersive medium. The index of refraction must not change linearly with rising energy so long as it is monotonically.
> 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.
I don't know of any transparent medium with the property dn(e)/de < 0
> 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
You are correct. I agree that the naming of the methods suggests differently. Yet the implementation simply takes the last entry in a table with increasing energy entries as the maximum. For a normally dispersive medium the index of refraction will be maximal at the highest energy entry.
> (I think the G4MaterialPropertyVector class was > change in the last few years. Maybe before that, the functions did what > there names suggest.).
No, the code has always been like this - even already in the old Geant3 source.
I don't know how realistic it is to generate Cerenkov light in material with absorbtion bands etc.
Perhaps, I should clarify in the documentation that the generation of Cerenkov photons in Geant4 is for 'normally dispersive media'.
To find the maximum in a list of numbers is certainly more time consuming than to simply take the last one. I am not sure that doing so for the vast majority of cases where it's not really required warrants changing the code.
Do you have a use case?
|Inline Depth:||Outline Depth:||Add message:|