java analysis studio atlas software week february 2000 tony johnson ([email protected])
TRANSCRIPT
Contents
Motivation for Talk
Introduction to JAS + Demo
New Features
Ongoing Work/Issues
Conclusions
Motivation for Talk
JAS starts from experience with SLD interactive data analysis
IDA (Toby Burnett) + SLD extensions
Integrates ideas from • Reason, Hippodraw, LHC++, Histoscope, …
Exploit advantages of Java• Cross platform, dynamic loading, GUI, many standard API’s –
networking, HTML, etc.
AIM is to solve real life physicist problemsWant to get input from as many people as possible.
System is flexible enough to change.
JAS OverviewModular Java Toolkit for Analysis of HEP data
Data Format IndependentExperiment IndependentSupports arbitrarily complex analysis modules written in JavaRich Graphical User Interface (GUI) with:
• Data Explorer• Flexible Histogram + Scatterplot display • Histogram manipulation+fitting• Built-in Editor/Compiler (for writing analysis modules)• Extensible via plugins
User extensible via Object Orientated API'sWritten entirely in Java so will run on any platform with a Java VM (JDK 1.1 or better)
• Support: Windows 95/98/NT/2000 + Linux + Solaris• Works on: DEC + SGI + Mac
JAS Components
JASHist(Plot Bean)
FittingFramework
Functions Fitters
AnalysisFramework
GUIFramework
Plugin
HistogramAccumulation
3-4 VectorUtilities
DataInterface
Histo/PlotAdaptor
NetworkAdaptor
ParticleProperties
JetFinder
PAW SQL stdHEP
JAS GUI
JAS GUI – Histogram Viewer
JAS GUI – Editor/Compiler
JAS GUI – Plugin
JAS – Remote Data Access
Rather than transporting peta-bytes of data to the physicist
Transport the physics analysis code to the data
Transparently - so that it feels just like local data access
Using Java-Agent Technology
Just ship histogram contents back to the physicists desktop
For more background on JAS see CHEP 98 paper
Distributed Data Analysis
Network Data Server
Desktop Client
Network Data Controller
Distributed DataData Server DIMData Server DIMData Server DIMData Server DIMData Server DIM“The GRID” DIM
Example of Using Track Recon.
New Features
Modular Plot ComponentCan be used in other applications
• GUI, servlets
Model-view-controller designSupports many display styles, 1d, 2d, scatterplot, fitting, slices, user interaction, XML for data interchange with other apps.
jEdit EditorFull featured program editor
• Syntax highlighting, indenting, bracket matching
Expect to be able to integrate advanced features• Debugging, auto-completion
New Features – HTML support
Future Features - 3D Support
UsageBabar using for Online Monitoring
Using Online Monitoring APIHTML Pages with embedded plotsCustom Overlays
US Linear Collider StudiesHave an entire recon+analysis package written in Java
• Using JAS as analysis interface• Making use of remote data access using repository at University of
Pennsylvania
CLEOUsing plot bean for online displays
Other smaller scale usersAll giving very valuable feedback
Helping to produce more reliable solution
OpenSource – Experiments can Contribute!
All source code now stored in CVS Use any CVS client for anonymous (read-only) access
• We recommend jCVS (pure Java CVS client)
Source code all web browsable • Implemented using jCVS servlet
Write access can be given to interested developers
Intend to put entire code under LGPLPlatform independent build system
Uses jmk - pure java make-like tool• To build entire system on any platform with CVS and Java
cvs co jas cd jas java -jar jmk.jar
DocumentationLCD Tutorial exists
Nice step by step tutorial for beginners Examples are all based on LCD but can be used by anyoneStarts from very beginning
Slowly adding information to Users Guide Still nowhere near complete
How To being created to cover specific topics Servlets How ToHTML How ToXML How ToOnline API How ToWorking on Fitting How To
JavaDoc generated API documentation availableDocumentation remains weak link
We are aware of this and are working on producing more documentationAlso need more design specs/internals documentation to make open source model more effective
Ongoing Work + Requests
RequestsFitting from program
Page layout from program
Scripting – What exactly is wanted?
Integration with Wired
Integration with LHC++AIDA – Generic histogram interfaces
Ongoing Work cont.
Data AccessCurrent – PAW, stdHEP, SQL, Flat file, Java Objects.
Ongoing: Objectivity (Dino, Xavier)
Future: Root, Generic C++ Objects?
For flexibility Atlas needs simple data objectsLightweight transient/persistent layer
Minimize unnecessary use of templates
Think about access from other languages
Acknowledgements
Many People have contributed codePeter Armstrong, Kevin Garwood, Jonas Gifford, Azhar Zuberi.
Gary Bower, Kevin Rennert, Alex Samuel, Bob Wilson
And support/ideasMike Ronan …
Conclusions
Version 2.0 Alpha 2 is available from our website
http://jas.freehep.org/
2.0 Alpha 3 coming very soon• In use by Babar, needs Productization
We remain committed to supporting JASPlan to continue to improve it
Very adaptable to user input