Neutrinos are particles produced in highly energetic processes, like those that occur in the sun, nuclear reactors or the big bang. Neutrinos interact only very weakly with other matter (they can pass through the Earth even easier than light passes though glass). This means that a neutrino experiment needs to use huge quantities of neutrinos to ensure that enough interactions will occur to produce results. The MICE collaboration, with some help from the Software Sustainability Institute, will design a crucial part of a neutrino factory, which will create neutrinos in the vast quantities needed.
The strange world of neutrinos
Neutrino physics is a vibrant and quickly changing field. Recent experiments have shown unexpected results, such as neutrinos travelling faster than light, which breaks the "speed limit of the Universe". This could imply that we need more dimensions to explain the Universe, or that the theory of relativity breaks down on the quantum scale. In addition to exploring the obscure and the weird, physicists use neutrinos to answer important questions like "why is the universe made of matter rather than anti-matter?".
Neutrino factories start off with particles that relatively easy to generate - protons. These are fired into a target and the resulting collision produces muons. Muons are unstable and soon decay to produce neutrinos. Muon creation is vital part of the process, but it is a messy business: after the collision, the muons travel in all directions. Cooling the beam of muon particles, by shrinking its cross-section, creates a more directed beam of muons, which improves the efficiency of neutrino generation.
The MICE collaboration
MICE, the Muon Ionization Cooling Experiment, is a UK-based international collaboration of around 100 particle and accelerator physicists. The collaboration is based at the Rutherford Appleton Laboratory and will build a part of a neutrino factory. The neutrino factory is currently in the design report phase, which could lead to a multi-billion-pound facility.
MAUS (MICE Analysis User Software) is a modular, data-analysis package that provides a framework in which various MICE software functionality can communicate. MAUS is designed to support both online analysis of live data and detailed offline data analysis, simulation, and accelerator design.
MAUS and the Software Sustainability Institute
MAUS is structured in a Map-Reduce-style framework to allow parallelisation whether on a physicist's personal machine or in the MICE control room. MAUS is written in Python and also supports C++ components invoked via Python wrappers. The key data structure is a JSON document.
Software engineering ensures that MAUS is both correct and maintainable. This includes comprehensive unit, functional and integration testing, test-coverage checking, and style checking. These tests, and an automated build system, are managed via a continuous integration server with tests that are run nightly. MAUS code that has been released, and work-in-progress, developer-specific versions, are held under version control on LaunchPad - the software collaboration platform. Project documentation is maintained on a wiki, bugs and TODOs managed via an issue tracker and developers interact regularly via an IRC channel and fortnightly teleconferences.
The Software Sustainability Institute is contributing to the development of MAUS and, in particular, we are focusing on online data quality (also known as online reconstruction). Online data quality allows physicists to assess the quality of their data as it is recorded in real time. It is a standard requirement for the software used in particle physics. Our work focuses on:
Converting simulated or live detector data into histograms
Presenting the histograms via a browser-based interface
Implementing parallel execution of data-processing jobs
Updating MAUS to use a database, rather than temporary data files, as a data store
A range of technologies are being used, including the Python's matplotlib drawing library, the Celery distributed task queue, the Django Python web framework and the Apache CouchDB document-oriented database. At the beginning of our collaboration the Institute carried out a software evaluation of MAUS's online resources. You can read the results in a report on the MAUS wiki. The Institute are now working on MAUS's development activities. You can follow progress on the MAUS SSI wiki page.