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

custom photon fields #218

Closed
wants to merge 83 commits into from
Closed

Conversation

MHoerbe
Copy link
Contributor

@MHoerbe MHoerbe commented Jan 1, 2019

Dear all,

this pull request aims to introduce the following changes to CRPropa:

  1. fully customizable photon fields:
    a) in addition to previous photon fields (CMB, IRBs) there are 8 open slots PF1...PF8 for custom fields
    b) each photon field satisfies a certain format encoding energy- and redshift dependence
    c) the tabulated files needed by the interaction modules can be generated by a central external file
    d) the field slots PF1...PF8 may be modified at will after CRPropa has been installed
    e) the photon field file itself and the tabulated files are stored in the ~/share/crpropa directory
    f) field photons can now be sampled by a class provided in PhotonBackground.cpp
    g) SOPHIA had to undergo significant changes in this process

  2. space- and time dependence
    a) interaction modules support space- and time dependence of photon fields
    b) for this the ScalarGrid4d type has been added which generalizes ScalarGrid to 4 dimensions
    c) interaction modules take a ScalarGrid4d encoding space- and time dependence
    d) ScalarGrid4d comes with its most-needed tools e.g. interpolation, loadGridFromTxt, etc.

  3. discretized version of SOPHIA
    a) a SOPHIA event generator based on histogram data may be used in the PhotoPionProduction
    b) this may be controlled via a new flag in PhotoPionProduction: useTabulatedData = true/false
    c) see issue discretize SOPHIA #213 for details of this implementation
    d) NOTE: this tightly relates to the modified version of SOPHIA that came with 1g)

Looking forward to receiving feedback from you!
All the best,
Mario

- remove internal background photon sampling
- remove unused input- and output parameters
- rename some variables to gain readability
- replace GOTO statements by safe control structures
- implement unified indentation scheme
- simplify functions where appropriate
- add geometry & time dependence of photon field
- implement interpolation routine for ScalarGrid4d
- remove option for non-redshift dependence
- implement histogram version of SOPHIA
- implement geometry and time dependence
- remove option for non-redshift dependence
- implement geometry and time-dependence
- implement histogram version of SOPHIA
- implement a generalized version of SOPHIA's background photon sampling routine
@MHoerbe
Copy link
Contributor Author

MHoerbe commented Jul 17, 2019

As the debate has moved on, this particular PR will be closed. Any discussion is documented #220

@MHoerbe MHoerbe closed this Jul 17, 2019
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

Successfully merging this pull request may close these issues.

2 participants