Feature

Working together on Linear Collider software tools

Within the Linear Collider community there is a long tradition of sharing the core software tools needed for detector studies and physics benchmarking. A large software suite is required to cover the whole chain from event generation and subsequent simulation of particles in the detector to full event reconstruction and physics interpretation. Constantly improving and maintaining these tools, keeping up with modern standards and ensuring compatibility with the detector concepts (ILD, SiD, CLIC) and detector R&D efforts is a huge task that requires substantial resources.

In this context twelve experts from CERN, DESY, KEK, Glasgow and Tokyo met for the Linear Collider Software Hands-on Week earlier this year at CERN. As the title suggests, participants rolled up their sleeves to fix loose ends on the iLCSoft software chain for simulation and reconstruction and the corresponding iLCDirac grid production tool. Rather than staring at slide presentations, participants had fun in one-on-one programming sessions during the five-day workshop.

Among the objectives was the transition of the complete iLCSoft suite from SVN to Github; allowing more flexibility for the track reconstruction; and solving some issues in the particle flow reconstruction.

The transition to Github (https://github.com/ilcsoft) makes the development of the software much easier for both casual and core developers, as the integration of new code is both easier and better to control. While the number of people able to write to the central repositories has been dramatically reduced, everyone can now submit Pull Requests to offer bug fixes or new features for the iLCSoft packages. If the Pull Request passes the continuous integration checks, i.e. it compiles and doesn’t fail any tests, and passes through code review, it will be merged into the repository. Incidentally the creation of new iLCSoft releases will also be made easier and more automatic, reducing the burden on core developers.

Besides the work on the software infrastructure, time was also spent to remove outdated assumptions from the reconstruction software. The encoding string describing detector IDs fields and numbers can now be changed to suit every linear collider detector concept. However, this seemingly small change required modifications in basically all tracking packages. Presenting a good chance to get to know a large fraction of the iLCSoft code, it became a task for some of the newest iLCSoft developers. Smaller modifications were also necessary in the new glue code between the geometry description DD4hep and the PandoraPFA particle flow reconstruction framework.

Discussions and hands-on work were also done about the computing resources and the iLCDirac grid interface. Plans were made for the sharing of the computing resources in the ILC VO used for the upcoming large scale Monte Carlo productions, and the production scripts were modified and tested in small productions, and now suit the needs of different naming schemes.

All in all the hands-on workshop was an intense but successful week, bringing benefits to the whole linear collider community.