hermes

HERMES is a publicly available computational framework for the line of sight integration over galactic radiative processes which creates sky maps in the HEALPix-compatibile format.

https://github.com/cosmicrays/hermes

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.5%) to scientific vocabulary

Keywords

astroparticle-physics cosmic-rays galactic-radiative-processes gamma-ray-astronomy healpix neutrino-astronomy synchrotron
Last synced: 6 months ago · JSON representation ·

Repository

HERMES is a publicly available computational framework for the line of sight integration over galactic radiative processes which creates sky maps in the HEALPix-compatibile format.

Basic Info
  • Host: GitHub
  • Owner: cosmicrays
  • License: gpl-3.0
  • Language: C++
  • Default Branch: master
  • Homepage:
  • Size: 22 MB
Statistics
  • Stars: 27
  • Watchers: 7
  • Forks: 10
  • Open Issues: 10
  • Releases: 1
Topics
astroparticle-physics cosmic-rays galactic-radiative-processes gamma-ray-astronomy healpix neutrino-astronomy synchrotron
Created about 6 years ago · Last pushed 9 months ago
Metadata Files
Readme Changelog License Citation

README.md

HERMES - High-Energy Radiative MESsengers

Build Status Coverage Status Codacy Badge GitHub arXiv ascl

About

gamma sky map from pi0

HERMES is a publicly available computational framework for the line of sight integration which creates sky maps in the HEALPix-compatibile format of various galactic radiative processes including Faraday rotation, synchrotron and free-free radio emission, gamma-ray emission from pion-decay, bremsstrahlung and inverse-Compton. The name is an acronym for "High-Energy Radiative MESsengers".

The code is written in C++ relying on features of the language's recent revisions (C++11, C++14). Once compiled, HERMES can optionally be used from Python thanks to pybind11 (Python 2.X is not supported). Some components of the code (such as galactic magnetic field models, vector and grid classes) were adopted from CRPropa 3, a code for cosmic ray propagation.

HERMES provides the following integrators:

  • Dispersion measure
  • Rotation measure
  • Free-Free emission
  • Synchrotron emission (with absorption)
  • Pion decay gamma-ray emission
  • Inverse Compton scattering
  • Bremsstrahlung
  • Gamma-ray emissions from Dark Matter annihilation

The complete feature list is documented on github.io.

Quickstart

If Docker or Podman is installed, one can quickly enter a Jupyter notebook with HERMES already built and available:

sh docker run -it --rm -p 8888:8888 quay.io/cosmicrays/jupyter-hermes:latest

The notebook can be accessed via web browser following the link in the output of the above command.

For more details how to use containers see INSTALL - Use with Docker/Podman image and Jupyter Docker Stacks.

Install

For those who know their way around, the make-install procedure is available:

sh mkdir build cd build cmake .. make -j

For detailed installation guides and requirements see INSTALL.

Usage

```python from pyhermes import * from pyhermes.units import TeV, deg, kpc, pc

nside = 512 Egamma = 0.1TeV obs_pos = Vector3QLength(8.0kpc, 0pc, 0pc)

skymap = GammaSkymap(nside, Egamma) mask = RectangularWindow([5deg, 40deg], [-5deg, 90deg]) skymap.setMask(mask)

neutralgas = neutralgas.RingModel(neutralgas.GasType.HI) cosmicrayprotons = cosmicrays.Dragon2D(Proton) pp_crosssection = interactions.Kamae06Gamma()

integrator = PiZeroIntegrator(cosmicrayprotons, neutralgas, ppcrosssection) integrator.setObsPosition(obspos) integrator.setupCacheTable(100, 100, 20)

skymap.setIntegrator(integrator) skymap.compute()

output = outputs.HEALPixFormat("!pizero-dragon2d.fits.gz") skymap.save(output) ```

More examples can be found in the examples repository. Full documentation of the code is available here.

How to cite HERMES

If you have used HERMES in a scientific project that lead to a publication, we'd appreciate you citing the paper associated with it: @ARTICLE{HermesCode, author = {{Dundovic}, A. and {Evoli}, C. and {Gaggero}, D. and {Grasso}, D.}, title = "{Simulating the Galactic multi-messenger emissions with HERMES}", journal = {\aap}, year = 2021, month = sep, volume = {653}, eid = {A18}, pages = {A18}, doi = {10.1051/0004-6361/202140801}, url = {https://doi.org/10.1051/0004-6361/202140801}, archivePrefix = {arXiv}, eprint = {2105.13165}, primaryClass = {astro-ph.HE}, }

Credits

| Name | Institution | |----------------|-----------------------------------------------------| |Andrej Dundovic | Institute for Cosmology and Philosophy of Nature, Križevci, Croatia | |Carmelo Evoli | Gran Sasso Science Institute, L'Aquila, Italy | |Daniele Gaggero | INFN Sezione di Pisa, Pisa, Italy |

Owner

  • Name: DRAGON
  • Login: cosmicrays
  • Kind: organization
  • Email: daniele.gaggero@uam.es

Diffusion Reacceleration and Advection of Galactic cosmic rays: an Open New code

Citation (CITATION.cff)

cff-version: 1.1.0
message: "Please cite the following works when using this software: https://ui.adsabs.harvard.edu/abs/2021ascl.soft07030D"
authors:
- family-names: Dundovic
  given-names: Andrej
- family-names: Evoli
  given-names: Carmelo
- family-names: Gaggero
  given-names: Daniele
title: "HERMES: High-Energy Radiative MESsengers"
version: 1.0.0
date-released: 2021-05-27
identifiers:
 - type: "ascl-id"
   value: "2107.030"
 - type: "doi"
   value: 10.1051/0004-6361/202140801
 - type: "bibcode"
   value: "2021ascl.soft07030D"
abstract: "The HERMES (High-Energy Radiative MESsengers) computational framework for line of sight integration creates sky maps in the HEALPix-compatibile format of various galactic radiative processes, including Faraday rotation, synchrotron and free-free radio emission, gamma-ray emission from pion-decay, bremsstrahlung and inverse-Compton. The code is written in C++ and provides numerous integrators, including dispersion measure, rotation measure, and Gamma-ray emissions from Dark Matter annihilation, among others."

GitHub Events

Total
  • Issues event: 10
  • Watch event: 5
  • Issue comment event: 8
  • Push event: 3
  • Fork event: 2
Last Year
  • Issues event: 10
  • Watch event: 5
  • Issue comment event: 8
  • Push event: 3
  • Fork event: 2

Dependencies

doc/sphinx/sphinx-requirements.txt pypi
  • Sphinx ==1.7.9
  • breathe ==4.10.0
  • exhale ==0.2.3
  • m2r ==0.2.1
  • nbsphinx ==0.3.5
  • recommonmark ==0.6.0
  • sphinx-rtd-theme ==0.4.3
.github/workflows/ci.yml actions
  • actions/cache v2 composite
  • actions/checkout v2 composite
Dockerfile docker
  • $BASE_CONTAINER latest build
lib/pybind11/pyproject.toml pypi
lib/pybind11/setup.py pypi
lib/pybind11/tools/pyproject.toml pypi