G.Barrand / LAL / IN2P3 / CNRS AIDA analysis tools and Geant4 A user roadmap.

Slides:



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

Here’s what we see when we start a new BlueJ “Project”. BlueJ automatically creates a small “readme.txt” file to hold any directions we wish to write about.
June 4-8, 2007 G4ParisAnalysis 2 P. Gueye1 Analysis 2 Histograms and ntuples Paul Guèye Hampton University Hampton VA
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Rio A light and clean rewriting of ROOT IO system. Motivated from the strong conviction that an IO package is NOT.
JAS in SDA. My Experience My assignment was to use JAS to read SDA data and make plots. –I used OSDA and OSDAphysics to read SDA data. OSDA and OSDAphysics.
MC365 Ant. Today We Will Cover: Overview of Ant Installing Ant Using the Ant command line tool Various Ant commands available Using Ant in Eclipse.
4 November 2009 Geant4 Data Analysis J. Perl 1 Trivial Data Analysis for Geant4 Joseph Perl, SLAC Geant4 v9.2p02.
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.
Analysis with Geant4 and AIDA Tony Johnson SLAC-Geant4 Workshop February 2002 Tony Johnson.
Software Installation, release 4.0 Geant4 Users’ Workshop Tutorial SLAC February 18-22, 2002 Takashi Sasaki, Gabriele Cosmo,
15-Jul-15 Getting Ready for Java. What is Java? Java is a programming language: a language that you can learn to write, and the computer can be made to.
Victor Serbo, SLAC30 September 2004, Interlaken, Switzerland JASSimApp plugin for JAS3: Interactive Geant4 GUI Serbo, Victor (SLAC) - presenter Donszelmann,
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Introduction to AppInventor Dr. José M. Reyes Álamo.
How to turn on the robot How to start Bluetooth How to connect to robot How to initialize the robot How to not break the robot Sec Getting Started.
Software Installation The full set of lecture notes of this Geant4 Course is available at
Doxygen: Source Code Documentation Generator John Tully.
Improvements in Interface, Intercoms and environments Koichi Murakami (KEK/CRC) Koichi Murakami Geant4 Collaboration Workshop (18/Sep/2007) 1.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
CHEP'04 InterlakenG.Barrand, eXtreme debugger at LAL 1 Panoramix A visualization environment for LHCb.
Mokka and integration of the geometry AIDA kick-off meeting WP2 session: Common software tools 17 February 2011 – CERN Paulo Mora de Freitas and Gabriel.
G.Barrand, LAL-Orsay GaudiLab Some news. G.Barrand, LAL-Orsay Open Scientist (v5) coherent set HEPVis SoFree OpenGL Scientist Riot Rio KUIP HCL Midnight.
Java Analysis Studio Status Update 12 May 2000 Altas Software Week Tony Johnson
Programming. What is a Program ? Sets of instructions that get the computer to do something Instructions are translated, eventually, to machine language.
JAS3 + AIDA LC Simulations Workshop SLAC 19 th May 2003.
Mihir Daptardar Software Engineering 577b Center for Systems and Software Engineering (CSSE) Viterbi School of Engineering 1.
IX International Workshop on Advanced Computing and Analysis Techniques in Physics Research KEK, Tsukuba, December 2003
Java Root IO Part of the FreeHEP Java Library Tony Johnson Mark Dönszelmann
G.Barrand, LAL-Orsay OpenScientist Status (v11) Relationship with AIDA
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
FLUKA GUI Status FLUKA Meeting CERN, 10/7/2006.
OpenPAW A reimplementation of PAW with OpenScientist tools. Commands : Today the C part of KUIP extracted from old.
V. Serbo, SLAC ACAT03, 1-5 December 2003 Interactive GUI for Geant4 by Victor Serbo, SLAC.
Porto, 4-5 March, 1999 The COST250 Speaker Recognition Reference System H. Melin, A.M. Ariyaeeinia, M. Falcone.
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.
240-Current Research Easily Extensible Systems, Octave, Input Formats, SOA.
GranSasso, Jul-2002 Andreas Pfeiffer, CERN/IT-API, AIDA Abstract Interfaces for Data Analysis Andreas Pfeiffer CERN IT/API
G.Barrand, LAL-Orsay G4/analysis. G.Barrand, LAL-Orsay What is “analysis” ? Histogram, Tuple, Fitter, Function, Plotter.
OnX & ROOT1 OnX & ROOT on behalf of Guy Barrand ROOT Workshop 2001 June 13 FNAL Ren é Brun CERN.
LHCb-ATLAS GANGA Workshop, 21 April 2004, CERN 1 DIRAC Software distribution A.Tsaregorodtsev, CPPM, Marseille LHCb-ATLAS GANGA Workshop, 21 April 2004.
Visualization of Geant4 Data: Exploiting Component Architecture through AIDA, HepRep, JAS and WIRED Geant4 Workshop, CERN - 2 October 2002 Joseph Perl.
GLite build and integration system Building and Packaging Robert HARAKALY
Mantid Stakeholder Review Nick Draper 01/11/2007.
C++ LANGUAGE TUTORIAL LESSON 1 –WRITING YOUR FIRST PROGRAM.
Software Engineering Overview DTI International Technology Service-Global Watch Mission “Mission to CERN in Distributed IT Applications” June 2004.
1- How to connect the robot to the pc Sec Getting Started 3- How to move the robot Sec Scribbler movements 4- How to make a turn 11- How to.
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,
Chris Knight Beginners’ workshop.
introductionwhyexamples What is a Web site? A web site is: a presentation tool; a way to communicate; a learning tool; a teaching tool; a marketing important.
Discussion with Blueprint RTAG August 2002 Tony Johnson SLAC.
G.Barrand, LAL-Orsay G4Lab / v5r0. G.Barrand, LAL-Orsay Come with OpenScientist-10.0 –G4Lab : adapter Geant4/OSC. –G4LabSimple : example Run time kits.
Development Environment
Software Tango Meeting - May 2011 N. Leclercq on behalf of the SOLEIL Computing Team.
Getting Started with R.
SPI external software build tool and distribution mechanism
The full set of lecture notes of this Geant4 Course is available at
GUI Parallel Session Hajime Yoshida
G.Barrand / LAL / AA-26-April-2006
Potential use of JAS/JAIDA etc. SAS J2EE Review
Project Status and Plan
User Interface
G4/analysis G.Barrand, LAL-Orsay.
Software Installation
Teaching slides Chapter 6.
Introduction to AppInventor
Software Installation, release 4.0
Presentation transcript:

G.Barrand / LAL / IN2P3 / CNRS AIDA analysis tools and Geant4 A user roadmap

G.Barrand / LAL / IN2P3 / CNRS FAQ : what is AIDA ? Abstract Interfaces for Data Analysis. A lot of things, but for a user it presents itself as a user API for doing statistical analysis, especially manipulating common things like histograms and tuples. API defined by HEP people of CERN, LAL, SLAC covering now three OO languages (C++, java, Python) (A lot of “HEP sociology” too…)

G.Barrand / LAL / IN2P3 / CNRS FAQ : I download AIDA and nothing work ? Then this “API”, due to the magic of OO languages can be implemented in the form of “pure abstract interfaces”(*) for these languages (C++, java, Python for the moment). On the web site : there is only the description of the “API”, then the “interfaces”. But there is no implementation here ! Implementation must be taken from “AIDA providers”. * In C++, a class with only purely virtual methods (not the same than a « base » class)

G.Barrand / LAL / IN2P3 / CNRS FAQ : providers ? C++ : OpenScientist (*) – –AIDA implementation plus OpenPAW and Lab interactive tools. C++ : around CERN (a lot of sociology. No comment (**)) : –Anaphe : –PI : Java : –JAIDA : then in java. –AIDA/JNI : a C++ front end to JAIDA. –Jas interactive tool Python : PAIDA : * this presentation is totally, definitely, absolutely OpenScientist biased ** only at coffee breaks

G.Barrand / LAL / IN2P3 / CNRS FAQ : my histograms in files ? First need : write a “batch” program able to create histograms, fill them and put them in files workable later by various “interactive” tools. Most of providers can do that, but look closely at their documentation about the supported “exported” file formats. In particular if targeting a particular interactive tool. Promoted :.aida : an xml file format for the “data” classes supported in the AIDA API : IHistogram, ITUple, ICloud, IDataPointSet. OpenScientist-15 writes.aida,.ascii,.hbook,.root

G.Barrand / LAL / IN2P3 / CNRS FAQ :an example ?

G.Barrand / LAL / IN2P3 / CNRS FAQ : tuple ?

G.Barrand / LAL / IN2P3 / CNRS FAQ : installation ? See the provider doc… A general comment : a data analysis system (whatever it is) is something de facto complicated since it has to cover ALL computing domains (storage, graphic, GUI, scripting,…). –DO NOT EXPECT A STRAIGTFORWARD INSTALLTION (*) –KEEP COOL OpenScientist-15 : a lot of effort done on installation. Now a “clickable installation” for Windows and Mac. rpm for SLC3. * Compared to, installing Geant4 kernel is a piece of cake…

G.Barrand / LAL / IN2P3 / CNRS FAQ : setup, compile, link ? “setup” the implementation with the aida-setup scripts : –csh> source /aida-setup.csh –sh>. /aida-setup.sh –DOS> call \aida-setup.bat On UNIX, compile and link with the aida-config program : –UNIX> g++ `aida-config --cflags` Store.cpp `aida-config --libs` On Win-d’Oz by using the AIDA_CONFIG_[CFLAGS,LIBS] environment variables : –cl.exe %AIDA_CONFIG_CFLAGS% Store.cpp %AIDA_CONFIG_LIBS% An advice : before dealing with AIDA in Geant4, check that a simple AIDA example, like the previous one, works for you.

G.Barrand / LAL / IN2P3 / CNRS FAQ : and for G4 examples ? The G4 make system wants : –G4ANALYSIS_USE –G4ANALYSIS_AIDA_CONFIG_CFLAGS –G4ANALYSIS_AIDA_CONFIG_LIBS

G.Barrand / LAL / IN2P3 / CNRS examples/extended/analysis/AnaEx01

G.Barrand / LAL / IN2P3 / CNRS examples/extended/analysis/AnaEx01 It has an “AnalysisManager” to gather the bookings. No singleton (contrary to A01 or other examples) (*). It produces a AnaEx01.aida xml file (**). analysis/Lab/AnaEx01.py to show simple manipulation from Python. * I hate singletons and static objects (put in shared libs) ** The default in next Geant4 release

G.Barrand / LAL / IN2P3 / CNRS Traps Take care of using only “agreed” things. Take care of the “PI user semantic layer” : –To book an histo by doing : PI:Histogram1D h(“h”,100,0,1); –This C++ API coming from CERN is not yet supported by the AIDA group and works only with one CERN implementation. –It breaks the C++ / java symmetry (and the SLAC team is NOT interested in having the same in java). Avoid “TClass::Draw” kind of software ; then the ones in which people confuse, for example, visualization and introspection and for which the sociology is such that there is no way to change the engineering of things.

G.Barrand / LAL / IN2P3 / CNRS Work plan Today AIDA AIDA-3.3 released : –OSC not ready yet. –Templated ITupleColumn : it will boost the tuple filling / reading and open AIDA to storing user data. –IGenericFactory : to open the system to user defined material. –IPlottable : to open the plotting to user data visualization. –IPlotter styles : more material but a lot have still to be done… AIDA-4.0 : –Exceptions –ISession –A “user semantic layer” coming from the AIDA group ? –AIDA::Dev interfaces : interfaces for the software engineer. –Etc… Support the HDF5 binary format in a compatible way between implementations.

G.Barrand / LAL / IN2P3 / CNRS Work plan around OpenScientist AIDA-3.3 HDF5 Plotting styles Improve everything There is always something to do around a data analysis tool…

G.Barrand / LAL / IN2P3 / CNRS Work plan around Geant4 ? Follow AIDA releases. /aida G4 commands ? /aida/plot Integrate AIDA plotting and G4 visualization in a consistent GUI. Strongly move toward python and Qt ? ???

G.Barrand / LAL / IN2P3 / CNRS Since it is OpenScientist biased… G4Lab / UIOnX With the OpenScientist G4Lab package, someone can already integrate an Inventor visualization for Geant4 along with AIDA plotting in a consistent GUI. G4Lab::UIOnX : a G4 UI session for OnX. G4Simple : a simple application. G4SPL : a user application. onx -newapp -template=G4LabTemplateOne G4Examples : a package with some of G4 examples (N02-N07, AnaEx01, A01, gammaray_telescope) using G4Lab::UIOnX. See OpenScientist web pages.

G.Barrand / LAL / IN2P3 / CNRS Conclusions A lot exist now around AIDA and things improve. See the web sites of providers. It is probably the less intrusive way to do statistical analysis, and this by covering a lot of technologies in a consistent way. Somewhere, AIDA is unique. A bit of sociology : a pity that AIDA is systematically killed by some around CERN. Interfaces are a federating place at the level of the code, they should be promoted by a lab created to federate engineering sociology to do physics. And Geant4 should do the same… (some G4VXxx should be Geant4::IXxx)