This is a repository for developing any DUNE geometries with gegede forked from tyleralion/duneggd. Initially it was for the Fine-Grained Tracker (FGT) and has since grown to include support for several detectors.
See the gegede installation page for the prerequisites – we will mainly be using GDML export (libxml2), so you need not worry about the ROOT parts if you dont already have ROOT. It is not necessary to install gegede directly, as described on the installation page, but you will need virtualenv:
$ wget https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.11.tar.gz $ tar -xf virtualenv-1.11.tar.gz $ python virtualenv-1.11/virtualenv.py ggdvenv
You will also need this repository:
$ git clone https://github.com/DUNE/duneggd.git
Each time you log onto your machine, you need to activate your virtual envoronment, setup duneggd, and set your python path:
$ source ggdvenv/bin/activate $ cd duneggd/ $ python setup.py develop # install for configuration-only use $ export PYTHONPATH=`pwd`/python
If you intend to write python code (develop builders), then use “python setup.py develop” so that any changed code is recompiled each run. If you are just changing configuration files, “python setup.py install” will skip this recompilation, drawing from the distribution created at setup instead.
Now you are ready to run the geometry generation! The command is gegede-cli, and takes several arguments (type “gegede-cli -h” to see each option.) Here is the minimum command to create a geometry:
$ cd python/duneggd/fgt/ $ gegede-cli fgt.cfg -w World -o fgt.gdml
“World” is the name of the top builder, as set in the configuration file fgt.cfg, and “fgt.gdml” is the intended output name. This will overwrite files existing in that name so be careful! The intended export format is interpreted from the -o name, in this case being GDML. Using “fgt.root” would have exported to ROOT format.