/GateContrib

User-oriented public repository of Gate (macros, examples and user contributions)

Primary LanguageC++

GateContrib

(Warning: this is yet a tentative & experimental Gate sub-project. Contributions and suggestions welcome)

Gate, based on Geant4 library, allows to perform various Monte-Carlo simulations in the field of medical physics. Gate can be used in numerous ways and for a lot of different applications. This repository contains Gate simulation examples, mostly provided by users, in order to help sharing knowledge.

PLEASE INSTALL GIT-LFS FIRST: this is required ! This repository contains data (binary files), stored with git-lfs extension.

Find below a step-by-step tutorial to install git-lfs:

  1. If your operating system package manager provides "git-lfs", then follow the usual procedures to install it. For instance, on recent Ubuntu releases you can install it with sudo apt install git-lfs. If this installation is successful, then go to step (3). Else proceed to (1).
  2. Download the Git LFS extension for versioning large files
  3. Untar, install and set up the Git command line extension
    tar -xzf git-lfs-linux-amd64-2.0.1.tar.gz
    cd git-lfs-2.0.1
    sudo ./install.sh
    If your installation was succesful, your terminal should display the following message:
    Git LFS initialized
    Note that you only have to set up Git LFS once.
  1. Clone the Gate user-oriented repository, using LFS:
    git lfs clone https://github.com/OpenGATE/GateContrib.git
    Note that the git lfs clone https://github.com/OpenGATE/GateContrib.git command operates exactly like git clone and takes all the same arguments, but manages binary files (not only text files).
    The output of the executing commande should be:
    Cloning into 'GateContrib'...
    remote: Counting objects: 21076, done.
    remote: Compressing objects: 100% (61/61), done.
    remote: Total 21076 (delta 36), reused 0 (delta 0), pack-reused 21012
    Receiving objects: 100% (21076/21076), 13.96 MiB | 3.76 MiB/s, done.
    Resolving deltas: 100% (14211/14211), done.
    Checking connectivity... done.
    Downloading dosimetry/Radiotherapy/example10/data/phantom.raw (3.25 MB)
    Downloading dosimetry/Radiotherapy/example2/data/patient-2mm.raw (3.36 MB)
    ...
    Checking out files: 100% (549/549), done.

Warning - This is user-oriented, the provided examples are not tested and may not work. The OpenGate collaboration is not responsible of any contents.


How to contribute ?

  • Prepare your example as a pull-request. Clone this repository in your github account, commit your example in your cloned repository, then ask us to integrate your proposal via the "New pull request" button.
  • Your simulation must be in a separate folder. You can put it in the folder imaging or dosimetry or misc.
  • Example must contains:
    • a readme.md file that describe the example, the authors, the date and Gate version
    • 3 folders mac/ data/ output/. The first will contains all macros (.mac files), the second all data files needed as input for the simulations. Results should be written in the output/ folder.
    • Simulation should be run by a command such as Gate mac/main.mac
  • It is also possible to contribute via analysis tools. If you developed a killer python script or C++ code useful for Gate simulation, feel free to share it here !

http://www.opengatecollaboration.org

References collaboration papers: