Kurzbeschreibung

Geant4 (für Geometry and Tracking) ist eine objektorientierte Entwicklungsumgebung zur Monte-Carlo-Simulation der Wechselwirkungen beim Durchgang von Partikeln durch Materie. Das Softwarepaket besteht aus einer Sammlung von Bibliotheken, mit denen der Anwender individuelle Applikationen in der Programmiersprache C++ implementieren kann.

Geant4 wird am CERN entwickelt. Aufgrund seiner universellen Struktur eignet sich Geant4 aber nicht nur für Anwendungen in der Hochenergie- und Kernphysik, sondern ganz allgemein zur Simulation der physikalischen Prozesse beim Strahlungstransport. Beispielhaft seien hier Anwendungen im Bereich der Medizinischen Physik, Dosimetrie, Strahlenschutz, Beschleuniger- und Astrophysik genannt.

Kommunikations- und Informationszentrum (kiz)

  • Helpdesk

    Kontaktieren Sie uns bei Fragen und Problemen zu den Services des kiz:
    Mo - Fr  8 - 18 Uhr
    +49 (0)731/50-30000
    helpdesk(at)uni-ulm.de
    Kundenportal
    [mehr]

  • Service-Points

    An den Service-Points können Sie uns persönlich aufsuchen.
    [mehr]

  • Identitätsmanagement

    Self Service Funktionen des Identitätsmanagementsystems (IDM):

    • Berechtigungen verwalten
    • Dienste abonnieren
    • Passwörter ändern
    • ...

    IDM Self Services
    [mehr]

  • Literatursuche

  • kiz von A bis Z

    Etwa 400 Stichwörter führen Sie direkt zu einer einschlägigen Web-Seite des kiz.
    A-Z-Liste
    Wenn Sie ein Stichwort vermissen, geben Sie uns Nachricht: Redaktion

Verfügbarkeit an der Universität Ulm

Zielsystem/ZielgruppeVerfügbarkeit
bwUniCluster (Karlsruhe) Nein
bwForCluster JUSTUS (Ulm)Nein
kiz CUSS Linux Cluster (Ulm)Ja, nach Laden des Softwaremoduls
kiz Linux Pools (Ulm)Ja, nach Laden des Softwaremoduls
kiz Windows Pools (Ulm)Nein
Uni-Ulm-weiter LizenzzugriffJa (Geant4 Software License)
Externer LizenzzugriffJa (Geant4 Software License)
Softwarebezug StudierendeDie Software kann per Download bezogen werden
Softwarebezug MitarbeiterDie Software kann per Download bezogen werden

Nutzungsbedingungen und Lizenzvereinbarungen

Geant4 steht unter einer kostenfreien Lizenz, der  Geant4 Software License. Diese Lizenz beinhaltet eine ausdrückliche Anti-Patent-Klausel für Software, die entweder vollständig oder in Teilen auf Geant4 basiert. 

Weiterführende Dokumentation

Sehr ausführliche Dokumentationen und weiterführende Links gibt es auf der Geant4 Webseite: http://www.geant4.org/geant4

Spezifische Informationen zur kiz Installation erhalten Sie über das Kommando

module help phys/geant4

Für den Einstieg empfehlen sich insbesondere die Beispielprogramme, die in den Geant4 Installationen des kiz enthalten sind.

Zugriff auf Software (oben genannte Cluster und Pools)

Zur Konfiguration der Arbeitsumgebung für Geant4 wird das Module-System eingesetzt:

module load phys/geant4

Das Verhalten der Geant4 Arbeitsumgebung wird durch eine Reihe von Environmentvariablen kontrolliert. Darüber hinaus existieren Geant4-spezifische  GNUmake Regeln, die das Erzeugen von ausführbaren Programmen erleichtern sollen.

Eine wichtige Environmentvariable ist $G4WORKDIR. Der Inhalt dieser Variablen definiert das Geant4-Arbeitsverzeichnis des Anwenders (Standardwert: $HOME/g4work). Ausführbare Programme befinden sich nach den Geant4-eigenen GNUmake Regeln im Verzeichnis $G4WORKDIR/bin/$G4SYSTEM, temporäre Dateien (z.B. *.o Dateien vom Kompilierprozess) werden in $G4WORKDIR/tmp/$G4SYSTEM geschrieben. Dabei spezifiziert die Variable $G4SYSTEM die Systemarchitektur und den verwendeten Compiler (z.B. "Linux-g++").

Zur Veranschaulichung wird hier exemplarisch gezeigt, wie ein ausführbares Programm mit Geant4 erzeugt werden kann. (Eingaben des Anwenders sind in fetter Schrift gedruckt, die Ausgaben der Programme sind teilweise gekürzt.) Der Quellcode für die Beispielprogramme befindet sich im Verzeichnis $G4INSTALL/examples.

Zunächst wird das Geant4 Modul geladen und ein Arbeitsverzeichnis erstellt:

user@host:~> module load phys/geant4
user@host:~> mkdir -p $G4WORKDIR

Anschliessend kann man den Beispielcode in das Arbeitsverzeichnis kopieren:

user@host:~> cp -r $G4INSTALL/examples $G4WORKDIR

Zur Erzeugung eines ausführbaren Programmes (hier: exampleN02) wechselt man in das Verzeichnis, in dem sich der zugehörige Quellcode befindet:

user@host:~> cd $G4WORKDIR/examples/novice/N02

In der README Datei befinden sich Erläuterungen zu diesem Beispiel. In der Datei GNUmakefile sind die Regeln zur Erzeugung des ausführbaren Programmes definiert. Mit dem make Kommando wird der Übersetzungsprozess gestartet:

user@host:~> make

Making dependency for file exampleN02.cc ...
Making dependency for file src/ExN02TrackerSD.cc ...
Making dependency for file src/ExN02TrackerHit.cc ...
[...]
Compiling exampleN02.cc ...
Using granular libraries ...
Linking exampleN02...
Done!

Das ausführbare Programm befindet sich anschließend im Verzeichnis $G4WORKDIR/bin/$G4SYSTEM und kann direkt ausgeführt werden:

user@host:~> $G4WORKDIR/bin/$G4SYSTEM/exampleN02

Neben der Ausgabe von Textinformationen im Terminal-Fenster sollte zur Laufzeit des Programmes ein Graphik-Fenster mit einer Visualisierung der Simulationsergebnisse (ähnlich der folgenden Graphik) geöffnet werden:

 

 

Hinweis:

Sollte es bei der Visualisierung zu Darstellungsfehlern kommen, empfiehlt es sich, in der Datei vis.mac den Eintrag "/vis/open OGL ..." durch "/vis/open OGLIX ..." oder "/vis/open OGLSX ..." zu ersetzen.

Durch Eingabe von /vis/viewer/set/viewpointThetaPhi -60 30 am Kommandozeilen-Prompt des Programmes lässt sich die Perspektive auf den experimentellen Aufbau ändern. Das Kommando /run/beamOn 10 führt eine erneute Simulation mit 10 einfallenden Partikeln aus. Mit exit kann das Programm beendet werden.

Idle> /vis/viewer/set/viewpointThetaPhi -60 30
Idle> /run/beamOn 10
Idle> exit
user@host:~>

Beachten Sie bitte, dass längere nicht-interaktive Berechnungen auf den Rechnern der oben genannten Cluster immer über das Queuing-System des Clusters ausgeführt werden müssen.

Zum systematischen Einstieg in die Entwicklung eigener Anwendungen empfiehlt es sich, zunächst den Geant4 Users's Guide for Application Developers und den Quellcode für das Beispielprogramm N01 zu studieren.

Hinweis:
Sollte es bei der Visualisierung zu Darstellungsfehlern kommen, empfiehlt es sich, in der Datei vis.mac den Eintrag "/vis/open OGL ..." durch "/vis/open OGLIX ..." oder "/vis/open OGLSX ..." zu ersetzen.

Durch Eingabe von /vis/viewer/set/viewpointThetaPhi -60 30 am Kommandozeilen-Prompt des Programmes lässt sich die Perspektive auf den experimentellen Aufbau ändern. Das Kommando /run/beamOn 10 führt eine erneute Simulation mit 10 einfallenden Partikeln aus. Mit exit kann das Programm beendet werden.

Idle> /vis/viewer/set/viewpointThetaPhi -60 30
Idle> /run/beamOn 10
Idle> exit
user@host:~>

Beachten Sie bitte, dass längere nicht-interaktive Berechnungen auf den Rechnern der oben genannten Cluster immer über das Queuing-System des Clusters ausgeführt werden müssen.

Zum systematischen Einstieg in die Entwicklung eigener Anwendungen empfiehlt es sich, zunächst den Geant4 Users's Guide for Application Developers und den Quellcode für das Beispielprogramm N01 zu studieren.

Ansprechpartner

Bitte wenden Sie sich an unseren Softwaresupport, wenn Sie weitergehende Hilfe benötigen.