Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cherenkov photons wavelength range #17

Open
jsitarek opened this issue Feb 1, 2022 · 11 comments
Open

Cherenkov photons wavelength range #17

jsitarek opened this issue Feb 1, 2022 · 11 comments

Comments

@jsitarek
Copy link
Collaborator

jsitarek commented Feb 1, 2022

Hi @moralejo @Voutsi

sorry for pointing this out only now, maybe it is too late to tweak with this parameter, but I'm wondering if the wavelength range of the Cherenkov photons was optimized for this production?
The one that is in the Corsika input cards is 240 - 900 nm. The QE of LST (and MAGIC PMTs) only reaches 700 nm or so (for LST it is 0.2% at 700nm) I guess it could be cut easily to 700 or 750 nm if you want to be extra secure.
For low wavelengths it is also probably too conservative. The LST plexiglass at 270 nm has a transmission of 0.05% (and of course the atmospheric transmission is also huge).

Since the emitted spectrum is ~lambda^-2 if we skip the 240-270 nm part we would save 15% of Corsika file sizes and processing time, while skipping 700-900 (750-900) nm would save another 10% (7%).

@moralejo
Copy link
Collaborator

moralejo commented Feb 1, 2022

Hi @jsitarek, no, actually we did not discuss at all about the wavelength range. Good point indeed.

I don't see a big problem with changing that for the next phases of the production, i.e. the next declination lines for the training sample, and for the whole test sample.

I wonder how complicated it would be to "trim" the already produced files, so that they are lighter and identical in settings... :)

@maxnoe
Copy link
Member

maxnoe commented Feb 1, 2022

I wonder how complicated it would be to "trim" the already produced files, so that they are lighter and identical in settings... :)

You keep coming up with reasons why we should implement the O part of EventIO into pyeventio.... 🙄

@jsitarek
Copy link
Collaborator Author

jsitarek commented Feb 1, 2022

modifying existing files might be pretty tricky, because we do not store individual photons, but bunches of them (and I guess the wavelength is simulated later on), so you either would need to make the bunch size smaller which would not really help and would end up with a fractional number of photons, or skip every X-th bunch, which would increase (probably very little) the fluctuation

@moralejo
Copy link
Collaborator

moralejo commented Feb 1, 2022

I think the bunches are treated like "single photons". That is, all of them have the same wavelength (and produce a p.e. or not based on it). So that is probably not an issue. But probably not worth to waste time on that, won't make an impact on the total production size if we change it before we move to the next pointings.

@maxnoe
Copy link
Member

maxnoe commented Feb 1, 2022

and I guess the wavelength is simulated later on)

It depends on the settings. If the IACT extension is configured to make the cherenkov angle wavelength dependent (the option is called CERWLEN I think), the wavelength is already drawn at that point. That also implies a bunchsize of 1, if I remember correctly.

EDIT: yes

CERWLEN selects Cherenkov code including the wavelength dependent generation of Cherenkov photons and respects their wavelength dependent refraction of the atmosphere. This
option is only available in connection with the CERENKOV option.

@jsitarek
Copy link
Collaborator Author

jsitarek commented Feb 1, 2022

@maxnoe , @moralejo
indeed, but I think we are not using CERWLEN option, so the standard bunches have only number of photons, without the wavelength. And this CERWLEN option is also tricky, you need much smaller bunch sizes

@moralejo
Copy link
Collaborator

moralejo commented Feb 1, 2022

Still, the files space saving you calculated at low lambda assumes intensity ~ 1/lambda^2, i.e. disregarding atmospheric absorption. In reality it is probably negligible. Then, absorption is evaluated just upon photon bunch creation, right? So the savings in computing will likely be small as well. I am wondering now if it is worth changing it now that the production has started.

@jsitarek
Copy link
Collaborator Author

jsitarek commented Feb 1, 2022

the absorption is taken into account later in sim_telarray and not in corsika. You should have less bunches with smaller wavelenth range so I think those estimates that I did should still hold

@maxnoe
Copy link
Member

maxnoe commented Feb 1, 2022

Then, absorption is evaluated just upon photon bunch creation, right?

This is also settings dependent. You can give already absortion coeffcients to CORSIKA (or rather the IACT extension), which will then apply them already in CORSIKA:

CEFFIC
selects code to respect the atmospheric absorption, mirror reflectivity, and photo-
multiplier quantum efficiency of Cherenkov light. This option is only available in
connection with the CERENKOV option.

You can identify these by looking at the wavelength in the files. If they are negative, these are "photo-electrons" with these efficiencies already applied. I think this setting was used for CTA simulations, but I am not sure...

@jsitarek
Copy link
Collaborator Author

jsitarek commented Feb 1, 2022

@maxnoe I do not think this is how the current LST+MAGIC production is done. The atmosphere absorption options, reflectivities and QE are specified in sim_telarray settings not in Corsika

@maxnoe
Copy link
Member

maxnoe commented Feb 1, 2022

@jsitarek Yes, you are right (at least the current configs in the corsika branch don't have CEFFIC).

But since you were concerned about the CORSIKA file size, I thought I'd mention the possibility

Edit: and I also checked standard PROD5, they also don't use CEFFIC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants