victor serbo, slac30 september 2004, interlaken, switzerland jassimapp plugin for jas3: interactive...

20
Victor Serbo, SLAC 30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann, M. (SLAC) Johnson, T. (SLAC) Minamimoto, K. (Naruto University of Education) Murakami, K. (KEK) Nagamatsu, M. (Naruto University of Education) Suzuki, E. (Naruto University of Education) Turri, M. (SLAC) Yoshida, H. (Naruto University of Education)

Upload: vivian-mckenzie

Post on 22-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

JASSimApp plugin for JAS3: Interactive Geant4 GUI

Serbo, Victor (SLAC) - presenterDonszelmann, M. (SLAC)Johnson, T. (SLAC)Minamimoto, K. (Naruto University of Education)Murakami, K. (KEK)Nagamatsu, M. (Naruto University of Education)Suzuki, E. (Naruto University of Education)Turri, M. (SLAC) Yoshida, H. (Naruto University of Education)

Page 2: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Outline

Purpose JAS3 Components and Status Conclusion

Page 3: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Purpose

Create a “complete” user interface to Geant4: control of Geant4 application, geometry definition, data analysis, event visualization

easy to use easy to customize easy to distribute and install platform independent

Useful for small experiments, beam tests, medical, etc.

Page 4: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Java Analysis Studio (JAS3)

Interactive Analysis Tool (http://jas.freehep.org/jas3) easy to customize by writing specific modules

or “plugins” Easy to learn/use GUI Uses JAIDA for analysis (http://jaida.freehep.org) WIRED4 plugin for Event Display

(http://wired.freehep.org) Record loop: run, stop, step, … Platform independent

Page 5: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Components Geant4 control

Sent commands to Geant4 and receive output

Data Analysis AIDA (with remote capabilities)

Geometry builder using MOMO

Event Display WIRED4, DAWN

Access to Geant4 physics quantities at event level for dynamic data analysis

Page 6: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

JAS3

(Java)

JAS3

(Java)

Geant4 control I

Geant4 Application (C++)

Geant4 Application (C++)

JNI LayerJNI Layer Java RMI Server

Java RMI Server

Geant4 Plugin

(Java RMI Client)

Geant4 Plugin

(Java RMI Client)

Page 7: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Geant4 control II Client/Server mode. Use Java RMI. Based on the GAG (GEANT4 Adaptive GUI) by

Hajime Yoshida and team at Naruto University Use special G4UIrmi (extend G4VBasicShell)

Starts Java VM and Java RMI Server Uses JNI to communicate between C++ and Java

JAS3 Plugin works as RMI client to pass commands to Geant4 and receive the output

Page 8: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Geant4 control III

// #include "G4UIterminal.hh"

#include "G4UIrmi.hh“

int main(int argc, char** argv) {

……………

// session = new G4UIterminal();

session = new G4UIrmi();

…………….

}

Page 9: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Advantages Can connect/disconnect to running

Geant4 application (local or remote)

Java multithreading Can connect to multiple Geant4 Can use Geant4 “abort” command to

stop the /run/beamOn command without exiting the application

Page 10: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Geant4 Command Tree

Console

Parameter Panel

Command History List

Page 11: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Status Issue Geant4 commands

by typing them in a console by clicking on a “command-tree” by executing Macros (only server-side file) keep command history

Redirect Geant4 output to JAS3 console, file data, error stream

Control Geant4 execution via the JAS3 Record Loop (not yet) run, stop, step

Page 12: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Data Analysis Is based on AIDA standard and uses Java

implementation of AIDA (JAIDA) Ability to view predefined Geant4

histograms Use JAIDA through AIDAJNI Utilize Remote Capabilities of JAIDA Histograms update in real time

Ability to define new analysis objects from the client – is desirable but not easy. Currently under discussion.

Page 13: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Page 14: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

MOMO Allows interactive creation of Geant4

geometries and physics. Written mainly by Hajime Yoshida and

team at Naruto University Output is C++ code or XML Can run as JAS3 Plugin More information on MOMO:

http://erpc1.naruto-u.ac.jp/~geant4/index.html

Page 15: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Page 16: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

XML Output Status Momo plugin can now save the table in the

form of GDML (Geometry Description Markup Language) and load the GDML file to fill the Momo tables.

The following items are persistent now: Materials; from scratch and compound Solids (except HYPES, Polygons and Polycones which aren't

defined in GDML yet) Logical volumes (except attributes which are lacking in

GDML)

This is work in progress.

Page 17: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Event Display Geant4 events can be viewed with WIRED and

DAWN …but not in real time

JAS3 has a WIRED4 plugin Events can be displayed

one at a time by stepping through the events at the end of a run

Real-time visualization requires control of the Geant4 execution via the record loop streamlining of HepRep

DAWN plugin? Lack of manpower

Page 18: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

WIRED4 – can run as JAS3 plugin

Opening record (or event) based files

causes the run control toolbar

to appear Supports random access and “tagged” data sets

(mainly for event displays)

Page 19: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

Conclusion Working prototype of interactive GUI

for Geant4 Client Works on Windows and Linux Can be distributed as “addition” to Geant4

Still missing: Control of the Geant4 execution via JAS3 record

loop Real-time event display Ability to define new analysis objects “on the fly”

Page 20: Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,

Victor Serbo, SLAC30 September 2004, Interlaken,

Switzerland

More Information Here are some useful links:

FreeHEP Java Library: http://java.freehep.org AIDA Home Page: http://aida.freehep.org JAS3 Home Page: http://jas.freehep.org/jas3 MOMO:

http://erpc1.naruto-u.ac.jp/~geant4/index.html WIRED4: http://wired.freehep.org Geant4 tutorial CD at SLAC:

http://geant4.slac.stanford.edu/g4cd/Welcome.html Report bugs: http://bugs.freehep.org Discussions, questions: http://forum.freehep.org