Introduction to GAMOS: A Geant4-Based Framework for Medicine-Oriented Simulations
Introduction to GAMOS: A Geant4-Based Framework for Medicine-Oriented Simulations
Overview
GAMOS, short for Geant4-based Architecture for Medicine-Oriented Simulations, is a Monte Carlo simulation framework built upon the powerful Geant4 toolkit. Designed with both simplicity and flexibility in mind, GAMOS enables users—especially those without deep C++ or Geant4 expertise—to run complex simulations with minimal coding, while still offering full access to Geant4’s advanced capabilities.
Purpose and Capabilities
GAMOS was developed to serve two main goals:
-
🧩 Ease of Use: New users can simulate their projects without writing C++ code, using intuitive input files instead.
-
🛠️ Extensibility: Advanced users can integrate custom components and leverage the full power of Geant4 without limitations.
To support detailed analysis and optimization, GAMOS includes tools for:
-
Controlling simulation verbosity
-
Generating histograms for various variables
-
Scoring physical quantities
-
Streamlining simulation workflows
The framework consists of a core engine and a suite of domain-specific applications tailored for medical physics, radiation transport, imaging, and more.
Directory Structure
After installing GAMOS (e.g., version 6.2.0), the following directories are available:
-
source: Contains the C++ source code. Advanced users may modify or extend this.
-
examples: Includes basic simulation examples. Running
examples/test/test.inis recommended as a first step. -
tutorials: Offers nine step-by-step tutorials covering topics such as PET, SPECT, Compton Cameras, Radiotherapy, Shielding, Gamma Spectrometry, and X-Ray imaging. Each tutorial includes exercises, outputs, and solutions.
-
analysis: Provides utilities for post-simulation data analysis.
-
data: Stores data files accessed by GAMOS algorithms during runtime.
The Plug-in Concept
One of GAMOS’s most powerful features is its plug-in architecture, which allows users to dynamically select and combine simulation components—geometry, physics lists, user actions, histograms, etc.—without recompiling the code.
🔌 This modularity means users can:
-
Load components at runtime via simple text input files
-
Create and integrate custom modules
-
Mix and match GAMOS and user-defined components seamlessly
This approach is similar to how web browsers use plug-ins to extend functionality (e.g., video playback), even if the browser developers never anticipated those specific extensions.
GAMOS implements plug-ins using the CERN-developed ROOT package, ensuring robust data handling and visualization capabilities.
Conclusion
GAMOS bridges the gap between accessibility and power in Monte Carlo simulations. Whether you're a student, researcher, or developer, GAMOS provides a scalable, user-friendly platform for simulating medical and radiation physics scenarios. With its modular design, rich tutorials, and plug-in flexibility, GAMOS stands out as a versatile tool for both beginners and experts in the field.