200 likes | 348 Views
Java Analysis Studio - Status. CHEP 98 - September 1998 Tony Johnson - SLAC Jonas Gifford + Kevin Garwood - University of Victoria. What is Java Analysis Studio Java Analysis Studio Features Implementation + Java Pro’s and Con’s Beta Release Information Demo Future
E N D
Java Analysis Studio - Status CHEP 98 - September 1998 Tony Johnson - SLAC Jonas Gifford + Kevin Garwood - University of Victoria
What is Java Analysis Studio Java Analysis Studio Features Implementation + Java Pro’s and Con’s Beta Release Information Demo Future Opportunities for Collaboration Conclusion Contents
HEP Data Analysis Application Easy to use + powerful GUI Support Analysis Modules written in Java Experiment and Data Format Independent Supports n-tuple or Structured (object) Data Data Location Independent (Local or Remote) Extensible (via Plug-ins and Data Interface Modules (DIMS)) Web + Internet compatible Combination of custom and Commercial components (but no runtime license fees) Based on Industry Standards What is Java Analysis Studio?
Java Analysis Studio Features • Rich, easy to use GUI
Java Analysis Studio Features • Data Format Independent • Currently Support • PAW n-tuples, Hippo n-tuples, any SQL database, flat-file n-tuples, StdHep MC events • Any data format via user supplied Data Interface Module (DIM) • Experimenting with • Object databases (Objectstore, Objectivity) • Random access Java based IO (similar to root IO] • Future • XML, Root, CDF/HDF
Java Analysis Studio Features • Supports bothn-tuples and Structured Data • n-tuples are fast and allow for simplifications in GUI • Simple Interactive cuts • Simple plot generation but n-tuples ultimately limiting • Arbitrarily Structured Data provides ultimate flexibility • Requires slightly more work from end-user • Complete Object Oriented Analysis Environment • Flexible enough to write (or prototype) reconstruction code
Java Analysis Studio Features • Histogram/ScatterPlot Display • Commercial plot package used in earlier versions replaced with custom plot package • Supports strings, dates, multiple axes, direct user interaction, overlays, fitting, scatter plots
Java Analysis Studio Features • User analysis modules written in Java • Java Excellent Language for Physics Analysis • Easy to learn yet very powerful, fully OO language • Fast (and getting faster] • Very fast code, load, test, fix cycle • JAS provides built-in editor, compiler, plus: • hep.analysis package • for creating/filling/manipulating histograms • hep.physics package • simple particle, track manipulation package
hep.analysis package • Histogram delegates binning to: • “partition classes” [idea stolen from LHC++ at last CHEP] • Map from X, Y to bin number • supports real, integer, string, date’s etc. • Calculation of contents, errors in bin • allows efficiency plots, mean/rms plots etc • Data storage method • immediate binning (c.f. Hbook) • delayed binning, allows rebinning, axis changes via GUI • Many standard partitions provided. • User can provide own partition functions
Java Analysis Studio Features • User Extensible, via • Analysis Modules • Data Interface Modules • Access to experiment specific data, native language modules • Plug In’s (c.f. Web Applets] • Event Displays, etc. • Fitter, Functions, Partitions
Oracle Oracle Paw Paw Root Root Desktop Client Jazelle Jazelle Flat File Flat File DIM Objectivity Objectivity Hippo Hippo Remote Data Network Data Server DIM Java Analysis Studio Features • Analyze local or remote data Local Data • User interface independent of Data Location • Does not assume fast network (works well at 28.8 bps] • Analysis code moves (transparently) to data
“100% Java” Application Uses Sun’s Java Foundation Classes (Swing) for GUI [optional] interfaces to legacy data (PAW, hippo, StdHep) uses Java Native Interface [JNI] Leverage Commercial Components Java itself compiler, GUI, debugger, networking, Remote Method Invocation Help system from Oracle Plot component (not currently used] Object databases, SQL databases No runtime license fees JAS Implementation
Java Pro’s and Con’s • Great tools available • IDE’s • code optimizers • object modeling tools • Con’s • Sun slow to fix bugs • printing • image handling • No control over memory allocation • Pro’s • Very Productive • No memory leaks • No subtle c++ problems • fun to write • Cross Platform Easy • Develop under NT, • It just works elsewhere! • Getting faster all the time: • Swing 1.1 • Faster Java Virtual Machines • Hot-Spot
Java Pro’s and Con’s • Is Java Fast Enough for HEP reconstruction??
Windows (NT, 95, 98] self extracting executable Unix (Solaris+Linux) binary distribution available Should be easy to port to other Unix, Mac etc. Limitations Detailed documentation still under development May still be some changes to user API Download from: http://www-sldnt.slac.stanford.edu/jas 1.0 Beta Release now available
Future • More Data Interface Modules • More types of plots (lego plots etc.) • Built in debugger, code profiler • More n-tuple handling tools (c.f. HippoDraw]
Collaboration • Integrate Wired event display as “Plug In” • Working with FLCD, Babar • Looking for collaborators on • hep.analysis • hep.physics packages (c.f. CLHEP) • Looking for other experiments interested in trying Java Analysis Studio out
Conclusions • Please try it: • http://www-sldnt.slac.stanford.edu/jas • Please give us feedback • jas-feedback@sld-mail.slac.stanford.edu • Mailing List: • http://www.slac.stanford.edu/cgi-bin/lwgate/JAS-L/ • Also general mailing list for Java in HEP: • http://www.slac.stanford.edu/cgi-bin/lwgate/HEP-JAVA/