160 likes | 174 Views
Learn about the collaborative process involved in developing Geant4 advanced examples, representing real-life experimental situations. Each example is a valuable reference supported by Geant4 and user group collaboration.
E N D
Advanced Examples Maria Grazia Pia, INFN Genova on behalf of the LowE/advanced examples WG http://www.ge.infn.it/geant4/examples/index.html Geant4 D Review, CERN, October 2002
Advanced examples • Advanced examples are complete applications, corresponding to [simplified] typical real-life experimental situations • e.g. a test-beam set-up, a module of a detector etc. • They address a wide set of inter-related issues • the usage of simulation components in a typical experimental environment • complementary “interactive” features (graphics, G/UI) • analysis histogramming, plotting the physics results of the simulation while it is still running etc… • They represent a valuable form of user support • They represent a playgroundto explore experiments’ requirements and to evaluate prototype solutions • …and to make sure that a solution that may be fine for a specific experiment would be fine for the whole Geant4 user community…
Collaboration: G4 + experiments • Advanced examples are developed in close collaboration with user groups • users bring the knowledge of their experimental domain • Geant4 collaborators bring the knowledge of Geant4 and of its wide application domain • The synergy produces a valuable reference for other users • GLAST simulation started from the gammaray_telescope example • underground_physics (developed by UKDM) has become the reference for many experiments at the Gran Sasso Lab • brachytherapy has become a “classic” for radiotherapic dosimetry • the reference is often of general interest, not only specific to the original experimental problem • e.g. question from a cosmic ray experiment user finds a response in underground_physics
History • A directory examples/advanced was created in geant4 since the very first production release in December 1998 • The actual development of Geant4 advanced examples was first proposed by the LowE e.m. WG soon after its creation (spring 2000) • the topics of the advanced examples are not necessarily related to LowE e.m. • e.g. the currently LowE e.m. WG supports an example on LHC calorimetry, and the main LowE support comes from collaborators in a dark matter experiment! • this is an example of the collaborative spirit at the base of Geant4 • The first 3 advanced examples were released in December 2000 • Since then, 2 other advanced examples have been released • 3 “LHC-like” advanced examples have been agreed • originating from test-beam simulations • 2 are at an advanced development stage • …and more advanced examples are spontaneously proposed by users!
The process: inception • Advanced examples are proposed • either spontaneously by experimental groups on topics they consider of interest • or by members of the Geant4 Collaboration, as a response to identified needs of user support (in which case a “volunteer” collaborating user group must be found… which is not always easy!) • The proposed examples are presented to the TSB for inclusion in a future Geant4 release • In several cases the advanced examples have been proposed initially as “workshop projects” in the annual Collaboration Workshop, then evolved into longer term projects • The ex.-developers prepare a description of “what they want the software to do” • which the LowE WG transforms into a simple URD to establish the requirements for the example (the URD is then maintained by the LowE-advanced ex. WG)
The process: construction • Ex.-developers should provide at least an architectural design of the example, in response to the URs • in practice, users are often not familiar with OOAD… • so, pragmatically, we reverse engineer their initial code, and donate them the design models for further evolutions • The design is reviewed with Geant4 collaborators • suggest improvements, better usage of toolkit components etc. • The implementation is done in close collaboration with Geant4 and Anaphe experts • The code is tested by the ex. development group • Of course, all this is carried on through an incremental and iterative process…
The process: deployment • The code is reviewed together with Geant4 collaborators • we would like to do more code reviews, but the resources are limited… • The examples are tested against the candidate release tag prepared by the Release Manager at the end of the system testing phase • A documentation, consisting of a README + web page(s), is provided by the ex.-developers • this is the most difficult thing to get done! • The ex.-developers update the requirements traceability matrix • a lot of effort falls on the LowE WG coordinator… • The LowE WG coordinator assemble the existing material into a cohesive documentation • links to example documentation, URD, design diagrams, results, traceability etc.
The process: maintenance • Advanced examples must be maintained • evolutions in Geant4, in AIDA, in the supported platforms, in the user requirements etc. • Often the whole workload of maintenance falls on the LowE WG • it is a significant workload • as well as the support during the construction phase • Advanced examples facilitate the user support process • Often, the response to a user question is “look into advanced example X, class Y, and you’ll find a solution to a problem quite similar to yours”
Analysis • In real life simulation is often accompanied by analysis • histograms, ntuples to plot relevant physics distributions from the simulation • UR: possibility to plot histograms while the simulation is running, to monitor whether everything looks fine, or to decide when to stop the accumulation of statistics • All advanced examples adopt AIDA (Abstract Interfaces for Data Analysis) • to avoid introducing into Geant4 dependencies from any specific analysis tool • users can choose their preferred analysis system (without having to change one single line of code) by loading the appropriate shared library • documentation in http://www.ge.infn.it/geant4/examples/analysis.html • Close collaboration with the AIDA team • Very valuable support to ex.-developers and users by the Anaphe team
mirror LXe GXe source PMT Underground physics • A liquid Xenon cell, with a typical underground background environment • Record scintillation light in PMs • Physics: neutrons, LowE processes for ions, scintillation, radioactive decay module etc. • Full lab geometry (important for n scattering) • Cavern + door, cupboards, desks in the experimental environment • Xenon vessel accurately reproducing a real prototype • Complex primary generator (GPS)
g telescope • A tracker + a calorimeter + a veto counter • Standard electromagnetic processes • Example of how to build a simple trigger out of digitised signals • How to plot histograms with physics distribution while the simulation is running
X-ray telescope • The first advanced example • Originally a “workshop project” (Geant4 Workshop 1999, hosted by ESA) • A module of a Chandra/XMM-like telescope • Physics for space radiation background studies Well documented example of how to use a variety of visualisation drivers, various (G)UI options, GGE, GPE, histograms, ntuples etc.
sample detector beam Fe lines GaAs lines Scattered photons X-ray fluorescence • Test beam set-up of a typical X-ray analysis • A photon beam impinging on a material sample; the fluorescence spectrum of the material is measured by a semiconductor detector • Physics: Low Energy processes, atomic relaxation
brachytherapy • A general purpose application for the calculation of dose distributions from a radiotherapy source • Fancy geometry to configure different brachyterapy techniques in the same application • How to create/destroy/replace a geometry at run-time • Low energy electromagnetic processes for precise calculation of dose distribution • Developed in collaboration with cancer research groups in hospitals
In preparation • Gravitational wave experiment • Space charging • LHC-like test beam set-ups • Atlas-like forward calorimeter • CMS-like composite calorimeter • LHCb-like RICH • Radioprotection • Contamination from radioactive isotopes in human body (and environment?) • IORT • Model of a compact accelerator • …and more to come • proposed at the G4workshop, discussed yesterday: modular RunManagerfor integration in experiment framework
Conclusions • The advanced examples have been created in response to typical user questions • They offer (simplified) solution to real-life experimental situations • They represent an effective means of user support • They are a playground • to better understand experiments’ requirements • to explore how Geant4 addresses specific experimental issues • Users’ feedback is very positive More information in http://www.ge.infn.it/geant4/examples/index.html