Skip to content

ranieremenezes/easyfermi

Repository files navigation

easyfermi

easyfermiDocsBadge

ci

The easiest way to analyze Fermi-LAT data.

easyfermi is a solution to facilitate Fermi-LAT data analysis by providing an intuitive graphical interface to interact with the Fermi science tools.

If you would like to support easyfermi's maintenance, consider buying us a coffee:

Buy Me A Coffee

Requirements

Installation

The following instructions assume an installation of conda or mamba (i.e. a faster version of conda).

Mamba-based installation

In the terminal, run:

mamba create --name easyfermi -c conda-forge -c fermi python=3.9 "fermitools>=2.2.0" "healpy=1.16.1" "gammapy=1.1" "scipy=1.10.1" "astropy=5.3.3" "pyqt=5.15.9" "astroquery=0.4.6" "psutil=5.9.8" "emcee=3.1.4" "corner=2.2.2"

This will create the virtual environment and install all dependencies. Then activate the environment and install fermipy and easyfermi:

mamba activate easyfermi
pip install fermipy easyfermi
  • (ONLY FOR WINDOWS) Install the libgl1 package:
sudo apt-get install libgl1
  • If you want, you can set easyfermi as an environmental variable. For instance, if you use a Bash shell environment, you can open the .bashrc file in your home and set:
alias easyfermi="mamba activate easyfermi && python -c 'import easyfermi'"

substituting miniforge and mamba by e.g. anaconda and conda if needed. This line of command depends on which distribution of Python you installed and how you set up the mamba/conda environment.

Installation for developers

Another option to install easyfermi is by cloning the GitHub repository:

git clone https://github.com/ranieremenezes/easyfermi.git

Then change to the easyfermi directory and create the environment:

cd easyfermi
mamba env create -f environment.yml
mamba activate easyfermi

Install easyfermi in editable mode:

pip install -e .

Upgrading

You can check your currently installed version of easyfermi with pip show:

pip show easyfermi

If you have easyfermi 2.0.X installed, upgrade your installation to the latest version by running the following command in the easyfermi environment:

pip install easyfermi --upgrade --no-deps

If instead, you have easyfermi 1.X.X installed, please install easyfermi V2 following section Installation.

Uninstalling

In the terminal, run:

mamba deactivate
mamba env remove --name easyfermi

Running

If you defined the variable easyfermi in your shell environment (see Installation), simply type the following in the terminal:

easyfermi

Otherwise, type:

mamba activate easyfermi
python -c "import easyfermi"

Substituting mamba by conda if this is the case for you.

The main window of easyfermi looks like this:

Tutorials and Documentation

Check our tutorials on the easyfermi YouTube channel:

youtube

The documentation of easyfermi can be found here.

Acknowledgments

To acknowledge easyfermi in a publication, please cite de Menezes, R (2022).

Since easyfermi relies on fermipy, gammapy, astropy, and emcee, please also cite Wood et al. 2017, Donath et al. 2023, Astropy Collaboration et al. 2018, and Foreman-Mackey et al. 2013.

The EBL models adopted in easyfermi are from:

If you make use of EBL correction via easyfermi in your publication, please cite the papers corresponding to the adopted EBL models. The EBL data files in this repository were collected from the gammapy repository at https://github.com/gammapy/gammapy-data/tree/main/ebl

I want to thank Clodomir Vianna for helping me design easyfermi, for making the easyfermi logo, and for the several hours of discussion about this project. Clodomir is the one responsible for making easyfermi user-friendly. Thanks to Fabio Cafardo, Lucas Costa Campos, and Raí Menezes for their help and strong support in this project. A big thanks to Alessandra Azzollini, Douglas Carlos, Kaori Nakashima, Lucas Siconato, Matt Pui, and Romana Grossova, the first users/testers of easyfermi.


easyfermi community

Want to be included in the map? Just fill out this short form: https://forms.gle/hcXoxwTHpdpHn24X8

python