Skip to content

Commit

Permalink
Merge branch 'CRPropa:master' into cringe_reproduction
Browse files Browse the repository at this point in the history
  • Loading branch information
JulienDoerner authored Dec 12, 2023
2 parents dbcc92a + 9f0ab3b commit a88e05a
Show file tree
Hide file tree
Showing 99 changed files with 3,819 additions and 13,744 deletions.
42 changes: 34 additions & 8 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,51 @@
# CRPropa vNext
## CRPropa vNext

### Bug fixes:

### New features:

### Interface changes:

### Features that are deprecated and will be removed after this release

### Removed features

### New plugins and resources linked on the webpages


## CRPropa 3.2.1

### Bug fixes:
* Re-added ToroidalHaloField and LogarithmicSpiralField models. Note, that the class name was also corrected in spelling: TorroidalHaloField --> ToroidalHaloField
* Synchronized signature of ParticleSplitting constructor

### New features:
* new candidate property tagOrigin to trace back which source or which interaction created the candidate
* new interace for massdistributions given on a Grid1f
* grids can be restricted to the volume without repetition
* sourceFeature to sample the source position from a given massdistribution
* New candidate property tagOrigin to trace back which source or which interaction created the candidate
* New interface for massdistributions given on a Grid1f
* Grids can be restricted to the volume without repetition (clipVolume parameter)
* SourceFeature to sample the source position from a given massdistribution
* EBL model from Saldana-Lopez et al. 2021
* New module CandidateSplitting for better statistics at high energies for e.g. diffusive shock acceleration
* New advection fields for modeling diffusive shock acceleration at 1D planar, oblique and spherical shocks

### Interface changes:
* Weight column in hdf-Output is now called "W", which is the same as for TextOutput.

### Features that are deprecated and will be removed after this release
* ObserverPoint will be renamed into Observer1D.
* AMRMagenticField - underlying library (saga) is no longer supported.

### New plugins and resources linked on the webpages:
* AMRMagneticField - underlying library (saga) is no longer supported.

### Removed features
* External extensions DINT and Eleca, which can be replaced with the
EM*-modules combined with the thinning option for reasonable computation
times.

### New plugins and resources linked on the webpages:
* FieldlineIntegrator
* grplinst
* monopole
* ROOTOutputPlugin


## CRPropa 3.2

Expand Down
12 changes: 12 additions & 0 deletions CITATION.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
@ARTICLE{crpropa3.2,
author = {{Alves Batista}, Rafael and {Becker Tjus}, Julia and {D{\"o}rner}, Julien and {Dundovic}, Andrej and {Eichmann}, Bj{\"o}rn and {Frie}, Antonius and {Heiter}, Christopher and {Hoerbe}, Mario R. and {Kampert}, Karl-Heinz and {Merten}, Lukas and {M{\"u}ller}, Gero and {Reichherzer}, Patrick and {Saveliev}, Andrey and {Schlegel}, Leander and {Sigl}, G{\"u}nter and {van Vliet}, Arjen and {Winchen}, Tobias},
title = "{CRPropa 3.2 - an advanced framework for high-energy particle propagation in extragalactic and galactic spaces}",
journal = {Journal of Cosmology and Astroparticle Physics},
year = 2022,
volume = {9},
eid = {035},
pages = {035},
doi = {10.1088/1475-7516/2022/09/035},
eprint = {2208.00107}
}

41 changes: 17 additions & 24 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ else(APPLE)
endif(APPLE)

project(CRPropa Fortran C CXX)
set(CRPROPA_RELEASE_VERSION 3.2+) # Update for new release
set(CRPROPA_RELEASE_VERSION 3.2.1+) # Update for new release

set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})

Expand Down Expand Up @@ -164,16 +164,6 @@ add_subdirectory(libs/sophia)
list(APPEND CRPROPA_EXTRA_LIBRARIES sophia gfortran)
list(APPEND CRPROPA_EXTRA_INCLUDES libs/sophia)

# DINT (provided)
add_subdirectory(libs/dint)
list(APPEND CRPROPA_EXTRA_LIBRARIES dint)
list(APPEND CRPROPA_EXTRA_INCLUDES libs/dint/include)

# EleCa (provided)
add_subdirectory(libs/EleCa)
list(APPEND CRPROPA_EXTRA_LIBRARIES eleca)
list(APPEND CRPROPA_EXTRA_INCLUDES libs/EleCa/include)

# GlacticMagneticLenses
option(ENABLE_GALACTICMAGETICLENS "Galactic Magnetic Lens" ON)
option(INSTALL_EIGEN "Install provided EIGEN headers" OFF)
Expand Down Expand Up @@ -242,7 +232,7 @@ if(FFTW3F_FOUND)
endif(FFTW3F_FOUND)

# Quimby (optional for SPH magnetic fields)
option(ENABLE_QUIMBY "Quimby Support" ON)
option(ENABLE_QUIMBY "Quimby Support" OFF)
if(ENABLE_QUIMBY)
find_package(Quimby)
if(QUIMBY_FOUND)
Expand Down Expand Up @@ -336,16 +326,18 @@ endif(APPLE)
# Download data files (interaction data, masses, decay data ...)
# ----------------------------------------------------------------------------
OPTION(DOWNLOAD_DATA "Download CRPropa data files" ON)
set(CRPROPA_DATAFILE_VER "2022-07-06")
set(CRPROPA_DATAFILE_VER "2023-10-20")
if(DOWNLOAD_DATA)
message("-- Downloading data file from crpropa.desy.de ~ 65 MB")
message("-- Downloading data files from sciebo ~ 73 MB")
file(DOWNLOAD
https://www.desy.de/~crpropa/data/interaction_data/data-${CRPROPA_DATAFILE_VER}.tar.gz-CHECKSUM
${CMAKE_BINARY_DIR}/data-${CRPROPA_DATAFILE_VER}.tar.gz-CHECKSUM)
https://ruhr-uni-bochum.sciebo.de/public.php/webdav/data-${CRPROPA_DATAFILE_VER}.tar.gz-CHECKSUM
${CMAKE_BINARY_DIR}/data-${CRPROPA_DATAFILE_VER}.tar.gz-CHECKSUM
USERPWD "3juW9sntQX2IWBS")
file(STRINGS ${CMAKE_BINARY_DIR}/data-${CRPROPA_DATAFILE_VER}.tar.gz-CHECKSUM DATA_CHECKSUM LIMIT_COUNT 1 LENGTH_MINIMUM 32 LENGTH_MAXIMUM 32)
file(DOWNLOAD
https://www.desy.de/~crpropa/data/interaction_data/data-${CRPROPA_DATAFILE_VER}.tar.gz
https://ruhr-uni-bochum.sciebo.de/public.php/webdav/data-${CRPROPA_DATAFILE_VER}.tar.gz
${CMAKE_BINARY_DIR}/data-${CRPROPA_DATAFILE_VER}.tar.gz
USERPWD "3juW9sntQX2IWBS"
EXPECTED_MD5 "${DATA_CHECKSUM}")
message("-- Extracting data file")
else()
Expand Down Expand Up @@ -381,7 +373,6 @@ add_library(crpropa SHARED
src/ParticleMass.cpp
src/ParticleState.cpp
src/PhotonBackground.cpp
src/PhotonPropagation.cpp
src/ProgressBar.cpp
src/Random.cpp
src/Source.cpp
Expand All @@ -391,23 +382,23 @@ add_library(crpropa SHARED
src/module/Acceleration.cpp
src/module/Boundary.cpp
src/module/BreakCondition.cpp
src/module/CandidateSplitting.cpp
src/module/DiffusionSDE.cpp
src/module/EMCascade.cpp
src/module/EMDoublePairProduction.cpp
src/module/EMInverseComptonScattering.cpp
src/module/EMPairProduction.cpp
src/module/EMTripletPairProduction.cpp
src/module/ElasticScattering.cpp
src/module/ElectronPairProduction.cpp
src/module/HDF5Output.cpp
src/module/MomentumDiffusion.cpp
src/module/NuclearDecay.cpp
src/module/Observer.cpp
src/module/Output.cpp
src/module/OutputShell.cpp
src/module/ParticleCollector.cpp
src/module/PhotoDisintegration.cpp
src/module/PhotoPionProduction.cpp
src/module/PhotonEleCa.cpp
src/module/PhotonOutput1D.cpp
src/module/PropagationBP.cpp
src/module/PropagationCK.cpp
Expand Down Expand Up @@ -625,10 +616,6 @@ if(ENABLE_TESTING)
target_link_libraries(testDensity crpropa gtest gtest_main pthread ${COVERAGE_LIBS})
add_test(testDensity testDensity)

add_executable(testDINT test/testDINT.cpp)
target_link_libraries(testDINT crpropa gtest gtest_main pthread ${COVERAGE_LIBS})
add_test(testDINT testDINT)

add_executable(testPropagation test/testPropagation.cpp)
target_link_libraries(testPropagation crpropa gtest gtest_main pthread ${COVERAGE_LIBS})
add_test(testPropagation testPropagation)
Expand Down Expand Up @@ -657,6 +644,9 @@ if(ENABLE_TESTING)
target_link_libraries(testAdiabaticCooling crpropa gtest gtest_main pthread ${COVERAGE_LIBS})
add_test(testAdiabaticCooling testAdiabaticCooling)

add_executable(testCandidateSplitting test/testCandidateSplitting.cpp)
target_link_libraries(testCandidateSplitting crpropa gtest gtest_main pthread ${COVERAGE_LIBS})
add_test(testCandidateSplitting testCandidateSplitting)

if(WITH_GALACTIC_LENSES)
add_executable(testGalacticMagneticLens test/testMagneticLens.cpp)
Expand All @@ -677,6 +667,9 @@ if(ENABLE_TESTING)
CONFIGURE_FILE(test/testDiffusionSDE.py testDiffusionSDE.py COPYONLY)
add_test(testDiffusionSDE ${PYTHON_EXECUTABLE} testDiffusionSDE.py)

CONFIGURE_FILE(test/testMomentumDiffusion.py testMomentumDiffusion.py COPYONLY)
add_test(testMomentumDiffusion ${PYTHON_EXECUTABLE} testMomentumDiffusion.py)

CONFIGURE_FILE(test/testPythonExtension.py testPythonExtension.py COPYONLY)
add_test(testPythonExtension ${PYTHON_EXECUTABLE} testPythonExtension.py)
endif(ENABLE_PYTHON AND PYTHONLIBS_FOUND)
Expand Down
19 changes: 18 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,15 @@
CRPropa3
CRPropa
========

![stable release](https://img.shields.io/badge/stable\_release-3.2.0-darkblue)
[![Build status](https://github.com/crpropa/crpropa3/actions/workflows/testing.yml/badge.svg)](https://github.com/crpropa/crpropa3/actions/)
[![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/CRPropa/CRPropa3.svg)](https://isitmaintained.com/project/CRPropa/CRPropa3)
[![Percentage of issues still open](https://isitmaintained.com/badge/open/CRPropa/CRPropa3.svg)](https://isitmaintained.com/project/CRPropa/CRPropa3)

[![DOI:10.1088/1475-7516/2022/09/035](http://img.shields.io/badge/DOI-10.1088/1475-7516/2022/09/035.svg)](<https://doi.org/10.1088/1475-7516/2022/09/035>)
[![arXiv](https://img.shields.io/badge/arXiv-2208.00107-b31b1b.svg)](https://arxiv.org/abs/2208.00107)
[![ascl:2208.016](https://img.shields.io/badge/ascl-2208.016-blue.svg?colorB=262255)](https://ascl.net/2208.016)

CRPropa is a publicly available simulation framework to study the propagation
of ultra-high-energy nuclei up to iron on their voyage through an
(extra)galactic environment. It takes into account: pion production,
Expand Down Expand Up @@ -61,3 +66,15 @@ as well as [additional publications](https://crpropa.github.io/CRPropa3/pages/ho
An extensive list of publications using CRPropa can be found via
[inSPIRE](https://inspirehep.net/search?ln=en&ln=en&p=refersto%3Arecid%3A1322902+or+refersto%3Arecid%3A1432676+or+refersto%3Arecid%3A1242078&of=hb&action_search=Search&sf=earliestdate&so=d&rm=&rg=25&sc=0).


## Plugins
Plugins are extensions of the core CRPropa framework, but they are not maintained by the CRPropa developer team. Instructions to install plugins can be found in the [documentation](https://crpropa.github.io/CRPropa3/pages/example_notebooks/extending-CRPropa/extending-CRPropa.html#Plugins:-Integrate-Custom-C++-Code-to-CRPropa%E2%80%99s-Python-Steering).

Make sure to correctly cite the plugins when using them.

| Name | Purpose | Link |
| ---- | ------- | ---- |
| FieldlineIntegrator | Magnetic Field Analysis | <https://github.com/lukasmerten/CRPropa_FieldLineIntegrator> |
| grplinst | Plasma Instabilities | <https://github.com/rafaelab/grplinst> |
| monopole | Magnetic Monopole Studies | https://github.com/chchristie/monopole/tree/main |
| ROOTOutputPlugin | Output into root file format | https://github.com/CRPropa/ROOTOutputPlugin |
2 changes: 2 additions & 0 deletions doc/pages/AdditionalResources.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ Additional Resources
- Data for the strong extragalactic magnetic fields by `Alves Batista et al.
<https://arxiv.org/abs/1704.05869>`__ can be downloaded
`here <https://syncandshare.desy.de/index.php/s/Fo5xceXtwtk5Exo>`__.
- Data for the Galactic mass distribution by `Mertsch et al. (2020) <https://arxiv.org/abs/2012.15770>`__ can be found
`here <https://syncandshare.desy.de/index.php/s/aR8wkqYYkDyfWgs>`__.


Note that these resources are completely external to CRPropa. We cannot supply any kind of additional information nor can we offer support on how to use them.
Loading

0 comments on commit a88e05a

Please sign in to comment.