Dependencies

Required Dependencies

These packages are required to compile IceTray.

Name

Description

Local Documentation

CMake

Cross-platform build system

CMake

python

Interpreted programming language

Python

NumPy

Python support for multi-dimensional arrays

Python

Boost

Boost C++ Libraries

Boost

GSL

GNU Scientific Library

CFITSIO

A FITS File Subroutine Library

zlib

Compression Algorithm

IceTray I/O

fftw

Discrete Fourier transform

Dataclasses documentation

Optional Build Dependencies

These dependencies are optional. If not present IceTray will compile with reduced functionality.

Name

Description

Needed for

libarchive

Multi-format archive and compression library

bz2 and tar support for i3 files

Zstandard

Compression Algorithm

zstd compressed i3 files

BLAS

Basic Linear Algebra Subprograms

Millipede, wavedeform

LAPACK

Linear Algebra PACKage

Millipede, wavedeform, I3GulliverLBFGSB

SuiteSparse

Sparse matrix algorithms

Millipede, wavedeform, RoundTripChargeTest

Photospline

Tensor-product B-spline surface evaluation

LeptonInjector, MuonGun, neutrino-generator, Photonics Service, phys-services, spline-reco

ERFA

Essential Routines for Fundamental Astronomy

astro, filterscripts, wimpsim-reader

PAL

Positional Astronomy Library

astro, filterscripts, wimpsim-reader

HDF5

High-performance data management and storage suite

hdfwriter

Boost NumPy

Boost.Python NumPy extension

MuonGun and ml_suite pybindings

HEALPix

Hierarchical Equal Area isoLatitude Pixelization of a sphere

NoiseEngine, DST

SPRNG

Scalable Parallel Random Number Generators Library

SPRNGRandomService

ROOT

Particle physics data analysis

rootwriter, I3GulliverMinuit2

Minuit2

Physics analysis tool for function minimization.

I3GulliverMinuit2

CLHEP

A Class Library for High Energy Physics

clsim, g4-tankresponse

Geant4

Simulation of the passage of particles through matter

clsim, g4-tankresponse

OpenCL

framework for programs that execute across heterogeneous platforms

clsim, ppc

GMP

GNU Multiple Precision Arithmetic Library

make_safeprimes

ZeroMQ

An open-source universal messaging library

clsim client/server

MultiNest

Bayesian inference tool for cosmology and particle physics

I3GulliverMN

NLOpt

library for nonlinear optimization

I3GulliverNLopt

ncurses

Text-based user interfaces

dataio-shovel

CDK

Curses Development Kit

dataio-shovel

OpenGL

3D vector graphics

steamshovel

GLUT

OpenGL Utility Toolkit

steamshovel

Qt5

GUI Widget Toolkit

steamshovel

Other Dependencies

These are not needed at compile time but are necessary for certain functionality

Name

Description

Needed for

SciPy

Python library used for scientific computing

various unit tests

h5py

Pythonic interface to the HDF5 binary data format

various unit tests

PyTables

Python library managing hierarchical datasets

various unit tests

healpy

Python interface for HEALPix C++ library

DST, unit tests

iminuit

Python interface for Minuit2 library

Lilliput

pyzmq

Python bindings for ØMQ.

gcdserver

scikit-learn

machine learning library

Finallevel Filter Diffuse-NuMu

pymongo

Python bindings for MongoDB,

gcdserver

Doxygen

Generate documentation from source code

documentation

Sphinx

intelligent and beautiful documentation

documentation

Breathe

Bridge between the Sphinx and Doxygen documentation systems

documentation

Napoleon

Legible docstrings for python

documentation