Visualization of Geant4 Data: Exploiting Component Architecture through AIDA, HepRep, JAS and WIRED Geant4 Workshop, CERN - 2 October 2002 Joseph Perl.

Slides:



Advertisements
Similar presentations
Physicist Interfaces Project an overview Physicist Interfaces Project an overview Jakub T. Moscicki CERN June 2003.
Advertisements

12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
4 November 2009 Geant4 Data Analysis J. Perl 1 Trivial Data Analysis for Geant4 Joseph Perl, SLAC Geant4 v9.2p02.
1 JBus, A Platform Independent Publish/Subscribe Bus for CWave 2000 M.S. Thesis Defense Joseph W. Longson March 30, 2000.
13 January 2011 Geant4 Data Analysis J. Perl 1 Trivial Data Analysis for Geant4 Joseph Perl, SLAC Geant4 v9.4.
JAS – Distributed Data Analysis Grid Enabled Analysis Workshop Caltech - June 23-25, 2003.
Geant4 Visualization Review
Interfacing Interactive Data Analysis Tools with the Grid: PPDG CS-11 Activity Doug Olson, LBNL Joseph Perl, SLAC ACAT 2002, Moscow 24 June 2002.
Analysis with Geant4 and AIDA Tony Johnson SLAC-Geant4 Workshop February 2002 Tony Johnson.
Installing Geant4 Visualization and Analysis Tools using the Workshop CD Geant4 Workshop SLAC - February 2002 Tony Johnson Joseph Perl.
Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,
Susanna GuatelliGeant4 Workshop 2004 Use of Analysis Tools Geant4 Workshop 2004, Catania Susanna Guatelli, INFN Genova.
Włodzimierz Funika, Filip Szura Automation of decision making for monitoring systems.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
Introduction SOAP History Technical Architecture SOAP in Industry Summary References.
JAS3 – Current Status and Prospects by Victor Serbo, SLAC.
1 8/29/05CS360 Windows Programming Professor Shereen Khoja.
Adapting Legacy Computational Software for XMSF 1 © 2003 White & Pullen, GMU03F-SIW-112 Adapting Legacy Computational Software for XMSF Elizabeth L. White.
Object and component “wiring” standards This presentation reviews the features of software component wiring and the emerging world of XML-based standards.
FreeHEP Java Library Mark Dönszelmann, SLAC CHEP, La Jolla, March 2003.
Java Analysis Studio May Mark Dönszelmann (CERN) Tony Johnson (SLAC)
Java Analysis Studio Status Update 12 May 2000 Altas Software Week Tony Johnson
Advanced Analysis Environments What is the role of Java in physics analysis? Will programming languages at all be relevant? Can commercial products help.
Implementing Design Patterns Using Java St. Louis Java Special Interest Group Eric M. Burke Object Computing, Inc. Presented on July 9, 1998 (updated July.
JAS3 + AIDA LC Simulations Workshop SLAC 19 th May 2003.
JAIDA, AIDA-JNI, JAS3 Status and Plans Mark Dönszelmann, Tony Johnson, Joseph Perl, Victor Serbo, Max Turri AIDA Workshop CERN July 2003.
IX International Workshop on Advanced Computing and Analysis Techniques in Physics Research KEK, Tsukuba, December 2003
Drag and Drop Display and Builder. Timofei B. Bolshakov, Andrey D. Petrov FermiLab.
Lecture 15 Introduction to Web Services Web Service Applications.
JAS/Wired + Geant 4 Tony Johnson July Contents What is JAS? What is WIRED? –Future Directions JAS+AIDA+GAG+Wired + Geant 4= ? Making it easy to.
Java Root IO Part of the FreeHEP Java Library Tony Johnson Mark Dönszelmann
Introduction to World Wide Web Authoring © Directorate of Information Systems and Services University of Aberdeen, 1999 IT Training Workshop.
Copyright © PASS Consulting Corp., Miami 2001 XX/1 XML Application Server.
Writing Extension Modules (Plugins) for JAS 3 Mark Donszelmann Tony Johnson Victor Serbo Max Turri CHEP2004, 27 september-1 october 2004, Interlaken, Switzerland.
V. Serbo, SLAC ACAT03, 1-5 December 2003 Interactive GUI for Geant4 by Victor Serbo, SLAC.
Web Services. Abstract  Web Services is a technology applicable for computationally distributed problems, including access to large databases What other.
Using JAS3 for LCD Analysis Tony Johnson 20 th May 2003.
JAS3 - A general purpose data analysis framework for HENP and beyond Tony Johnson, Victor Serbo, Max Turri, Mark Dönszelmann, Joseph Perl SLAC.
The FreeHEP Java Library ACAT 2000 Fermilab – October 2000 Mark Donszelmann, Julius Hrivnac – CERN Gary Bower, Tony Johnson, Joseph.
SiD Workshop October 2013, SLACDmitry Onoprienko SiD Workshop SLAC, October 2013 Dmitry Onoprienko SLAC, SCA FreeHEP based software status: Jas 3, WIRED,
WIRED 4 An extensible generic Event Display Mark Donszelmann SLAC, Stanford, U.S.A. CHEP2004, 27 september – 1 october Interlaken, Switzerland.
7 June 2005 Visualization & GGE Demo J. Perl 1 HepRep/WIRED DAWN OpenGL Geant4 Visualization & GGE Demo Joseph Perl, SLAC.
AIDA Web Interface Tony Johnson, Victor Serbo, Max Turri AIDA Workshop, CERN, July 2003.
Java Analysis Studio Atlas Software Week February 2000 Tony Johnson
GranSasso, Jul-2002 Andreas Pfeiffer, CERN/IT-API, AIDA Abstract Interfaces for Data Analysis Andreas Pfeiffer CERN IT/API
Java Analysis Studio - Status CHEP 98 - September 1998 Tony Johnson - SLAC Jonas Gifford + Kevin Garwood - University of Victoria.
JACO JACO - Java Access to C++ Objects Mark Dönszelmann and Tony Johnson 25 May 2000.
Kemal Baykal Rasim Ismayilov
NOVA A Networked Object-Based EnVironment for Analysis “Framework Components for Distributed Computing” Pavel Nevski, Sasha Vanyashin, Torre Wenaus US.
GLAST LAT Offline SoftwareCore review, Jan. 17, 2001 Review of the “Core” software: Introduction Environment: THB, Thomas, Ian, Heather Geometry: Joanne.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
WIRED World-Wide Web Interactive Remote Event Display Mark Dönszelmann, IT/API, CERN CHEP 2000, 9 February 2000, Padova, Italy.
FreeHEP, JAS and WIRED Mark Dönszelmann, CERN/IT Charles Loomis, UC, Santa Cruz ATLAS Software Week, 30 November 2000.
GLAST LAT Project Science Tools - 12 June 2002 T. Burnett 1 The Science Analysis Software Development Environment -- for tools too! T. Burnett.
WIRED for LCD Analysis Mark Dönszelmann Linear Collider Simulation Workshop May 19-22, 2003, SLAC.
JAS and JACO – Status Report Atlas Graphics Group August 2000 Tony Johnson.
Features of JAS Plots Plots update in real time. Data for plots can be local or remote (use Java RMI to connect to JAS Data Server). Rich variety of styles.
Summary of the AIDA workshop AIDA Workshop, July What is AIDA  AIDA defines today interfaces for some common analysis data objects  IHistogram,
1 RMI Russell Johnston Communications II. 2 What is RMI? Remote Method Invocation.
LCD WIRED FutureLCD Workshop May Joseph Perl 1 Future Plans for the LCD WIRED Event Display Joseph Perl SLAC Computing Services
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
AIDA Abstract Interfaces for Data Analysis Massimiliano Turri, SLACCHEP, La Jolla, March “The goal of the AIDA project is to define abstract.
Discussion with Blueprint RTAG August 2002 Tony Johnson SLAC.
Object Interaction: RMI and RPC 1. Overview 2 Distributed applications programming - distributed objects model - RMI, invocation semantics - RPC Products.
The Object-Oriented Thought Process Chapter 13
What is RMI? Remote Method Invocation
Potential use of JAS/JAIDA etc. SAS J2EE Review
Project Status and Plan
Java Analysis Studio - Status
Presentation transcript:

Visualization of Geant4 Data: Exploiting Component Architecture through AIDA, HepRep, JAS and WIRED Geant4 Workshop, CERN - 2 October 2002 Joseph Perl User code (e.g. GEANT 4) Analysis tool 1 Analysis tool 2 AIDAAIDA

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 2 Visualization of Geant4 Data: Exploiting Component Architecture through AIDA, HepRep, JAS and WIRED Component Architecture/Generic Interfaces Component Architecture/Generic Interfaces AIDA for data visualization and analysis AIDA for data visualization and analysis IntroductionIntroduction Current use architectureCurrent use architecture Proposed use architectureProposed use architecture HepRep for single event visualization HepRep for single event visualization IntroductionIntroduction Current use architectureCurrent use architecture Proposed use architectureProposed use architecture Demo WIRED reading HepRep files Demo WIRED reading HepRep files Demo JAS reading AIDA files Demo JAS reading AIDA files

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 3 Component Architecture / Generic Interfaces Component Architecture Component Architecture Use the same data visualization/analysis tool for G4 data as for other experimental data.Use the same data visualization/analysis tool for G4 data as for other experimental data. Experiment or collaboration need only agree on the interfaces with which they will fill or send data.Experiment or collaboration need only agree on the interfaces with which they will fill or send data. The end user (physicist, astronomer, doctor) is free to choose whatever desktop tool they prefer.The end user (physicist, astronomer, doctor) is free to choose whatever desktop tool they prefer. Depends on Generic Interfaces Depends on Generic Interfaces Well defined (AIDA 3.0, HepRep2)Well defined (AIDA 3.0, HepRep2) FlexibleFlexible Language neutralLanguage neutral

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 4 AIDA for Data Visualization and Analysis Abstract Interfaces for Data Analysis (AIDA) is an analysis interface that can be used with several different analysis packages Abstract Interfaces for Data Analysis (AIDA) is an analysis interface that can be used with several different analysis packages JAS Picture Here such assuch as JAS JAS Lizard Lizard OpenScientist OpenScientist User code (e.g. GEANT4) Analysis tool 1 Analysis tool 2 AIDAAIDA

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 5 AIDA Purpose “The goals of the AIDA project are to define abstract interfaces for common physics analysis objects, such as histograms, ntuples, fitters, IO etc.The adoption of these interfaces should make it easier for developers and users to select to use different tools without having to learn new interfaces or change their code. In addition it should be possible to exchange data (objects) between AIDA compliant applications.” “The goals of the AIDA project are to define abstract interfaces for common physics analysis objects, such as histograms, ntuples, fitters, IO etc.The adoption of these interfaces should make it easier for developers and users to select to use different tools without having to learn new interfaces or change their code. In addition it should be possible to exchange data (objects) between AIDA compliant applications.”

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 6 AIDA Current Use Architecture as used in February Geant4 User Workshop Geant4 AIDA (2.2) JNI Other AIDA Tools JAIDA Simple “live” GUI AIDA File JAS AIDA DIM JAS Tuple Explorer Other AIDA Tools Any C++ Program Any Java Program not in batch

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 7 AIDA Near-Term Future Architecture Geant4 AIDA (3.0) JNI Other AIDA Tools JAIDA AIDA File Other AIDA Tools Any C++ Program Any Java Program JAS 3.0 AIDA Tuple Explorer WIRED Slightly longer term future: GAG style Plug-in for controlling G4GAG style Plug-in for controlling G4 True interactive analysis (i.e. actually defining histograms on the fly rather than just viewing pre-defined histograms)True interactive analysis (i.e. actually defining histograms on the fly rather than just viewing pre-defined histograms)

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 8 HepRep for Single Event Visualization HepRep is a generic interface for component or client server event displays JAS Picture Here such assuch as WIRED (Java) WIRED (Java) FRED (C++ OpenGL) FRED (C++ OpenGL)

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 9 HepRep Purpose The HepRep interface breaks the dependency between any particular experiment's event display server and any particular event display client. The HepRep format is independent of any one particular language or protocol. It can be used from C++ or Java and can be shipped as Corba, RMI, XML, Java or JNI for consumption by WIRED or any other HepRep- enabled event display client. HepRep WIRED Client Other HepRep Clients BaBar Server LCD Interface GLAST Server Geant4 Server FRED Client

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 10 HepRep Current Use Architecture HepRep1 HepRep2 +legacy data formats LCD (java) Javalegacy format WIRED 1 version 3.9 (java) XML HepRep2 FRED (c++) GLAST (c++) HepRep2 BaBar (c++) CorbaHepRep1 Geant4 (c++) XMLHepRep1 Corba RMI Java XML C++ XML C++ LCD Application GLAST XML Streamer / C++ Builder BaBar Corba Server Geant4 XML Streamer While all four SLAC data sources are now using WIRED, they communicate with WIRED in different ways: BaBar has its own HepRep1 Corba server, dependent on BaBar code. LCD passes WIRED java objects using a legacy data format (pre-HepRep). Geant4 has its own HepRep1 XML streamer, dependent on Geant4 code. GLAST, being the newest, is leading us towards the right approach.

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 11 HepRep Near-Term Future Architecture HepRep2 LCD (java) WIRED 4 (java) XML HepRep2 FRED (c++) GLAST (c++) HepRep2 BaBar (c++) Corba Geant4 (c++) Corba RMI Java XML C++ XML C++ C++ Shared HepRep Factory Java All data sources speak HepRep2 to an abstract HepRep factory. By instantiation of one or another concrete implementation of HepRep: a C++ program can change from creating HepRep in C++ memory to creating HepRep as an XML streamer (a pure C++ solution with no external library dependencies and no creation of the HepRep in memory) to creating HepRep as Corba (depends on Corba libraries) or creating HepRep as Java (via Java Native Interface) HepRep2Corba XML Java RMI IceCube (java) Java Shared HepRep Factory

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 12 Demo WIRED Reading HepRep Files from the feb 2002 G4 Workshop CD

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 13 Demo JAS Reading AIDA Files from the feb 2002 G4 Workshop CD

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 14 Conclusions Component architecture based on generic interfaces has worked well in Geant4. All attendees at the Feb 2002 G4 Users Workshop tutorials were successful in using JAS and WIRED to visualize G4 data. But these tutorials relied on the user having the pre-built binaries that we produced for that workshop, and the documentation was maintained only on that workshop’s web pages. These tutorials should be: adapted to the latest G4 version included in the G4 distribution as G4 extended or advanced examples documented in the G4 standard documentation set and perhaps also used as standard G4 test cases

2 October 2002Visualization of G4 Data / AIDA, HepRep, JAS and WIRED Joseph Perl, SLAC Computing Services 15 References AIDA: Abstract Interfaces for Data Analysis JAS: Java Analysis Studio HepRep:a generic interface definition for HEP event display representables WIRED: world wide web interactive remote event display (a HepRep Client) SLAC HepRep WIRED Work Plan Fred: oh no, another event display (a HepRep client) Geant4 Users Workshop at SLAC Feb 2002, Tutorials A Component Approach to HEP Event Displays