Bayeux
3.4.1
Core Foundation library for SuperNEMO
|
Bayeux provides a collection of C++ classes and functions designed for the simulation, recording and analysis of data for experimental particle and nuclear physics projects. This functionality is split into several specialized submodules:
datatools : Serializable data structures based on Boost.
brio : A Boost over ROOT I/O serialization system (extends datatools).
cuts : Generic tools for making arbitrary data selections.
materials : Description of isotopes, elements and materials plus tools for input to simulation applications (i.e. GDML/Geant4).
mygsl : C++ wrapper and extensions to the GNU Scientific Library.
geomtools : Generic tools for working with experiment geometries and provide input to simulation tools (i.e. GDML/Geant4).
emfield : Electromagnetic field modelling and management.
genbb_help : C++ wrapper and extensions to the Decay0/GENBB program by Vladimir Tretyak, for input to simulation applications.
genvtx : Vertex random generator tools for input to simulation applications.
dpp : A basic data processing pipeline API.
mctools : Utilities for particle and nuclear physics simulation with a Geant4 interface.
lahague : Utilities for radioprotection and dosimetry.
Bayeux also makes use of some code fragments or contributions written by other people and/or companies/institutions:
Bayeux is distributed under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
If you're reading this online and don't yet have Bayeux installed, an Installation Guide is available. Note that at present Bayeux is only supported on POSIX platforms, and even here not all variants are guaranteed to work!
Once you have an install of Bayeux, the following components are available to build client libraries and applications:
libBayeux : This is the main shared library that embeds all Bayeux's classes from Bayeux's submodules as well as core utilities like system registers of object factories, the datatools
kernel and a few singletons.
bxquery : Request system informations about Bayeux.
bxvariant_inspector : Explore and edit a configuration of variant parameters (class datatools::variant_service
).
bxmaterials_inspector : Inspect the configuration of a manager of materials (class materials::manager
).
bxgeomtools_inspector : Inspect the configuration of a geometry modeling manager (class geomtools::manager
).
bxgeomtools_mkskelcfg : TODO
bxgenbb_inspector : Inspect the configuration of a manager of particle generators (class genbb::manager
).
bxgenbb_mkskelcfg : TODO
bxgenvtx_mkskelcfg : TODO
bxgenvtx_production : Inspect the configuration of a manager of vertex generators (class genvtx::manager
).
bxdpp_processing : Run a pipeline of data processing modules (class dpp::module_manager
).
libBayeux_mctools_geant4 : This is the shared library plugin that embeds the Bayeux/mctools Geant4 interface.
bxg4_production : Run a Geant4 based simulation run (class mctools::g4::manager
).
bxg4_seeds : Generate independant seeding sets for a bunch of Geant4 based simulation runs.
OCD support : Object Configuration Description.
Documents detailing the use and design of Bayeux may be found on under the Related Pages tab if you are reading the HTML documentation, or in the following sections in the printed manual.
TODO