The documentation of ICARUS is spread mainly between:
- ICARUS wiki in GitHub at https://sbnsoftware.github.io/icaruscode_wiki/Wiki; there is also an older Fermilab Redmine wiki
- automatically generated (Doxygen) code documentation at https://icarus-exp.fnal.gov/at_work/software/doc/icaruscode/versionlist.html (requires authentication)
ICARUS software is spread across several repositories under GitHub SBNSoftware. Help yourself:
icaruscodeis the main entry point (code based on art)icarusalgincludes art-independent codeicarus_signal_processingincludes art-independent codeicarus_datadistributes large data filesicarusutilmostly contains experiment customization oflarbatchutilitiessbncodeis code shared with other SBN experimentssbnobjcontains data object definitions shared with SBNsbndaq_artdaq_coreinterfaces with DAQ and holds data objects definitions for ICARUS "raw" data
ICARUS software is in great part based on LArSoft. Here are some shortcuts to its GitHub repositories:
larsoft(umbrella repository)- data product repositories:
larcoreobj, basic geometry data productslardataobj, most simulation and reconstruction data products (not thesimbnamespace)
larcorealg, geometry code and some bsic utilitieslardataalg, some basic service providers (LArProperties,DetectorClocks,DetectorProperties) and utilitieslarevt, with database codelarsim, detector simulation (esp. GEANT4)larana, including calorimetry and optical reconstructionlarreco, most reconstruction algorithms and modulesart, framework underpinning data processing (many support libraries are also in art-framework-suite)
