java physics generator and analysis modules mike ronan lbnl (presented by tony johnson)
TRANSCRIPT
Java Physics Generator and Analysis Modules
Mike Ronan
LBNL
(presented by Tony Johnson)
Goals
• Disparate groups working worldwide on Linear Collider physics studies have produced complementary tools using a variety of languages and methodologies
• From a physics perspective it is desirable to directly compare the results from these different tools
• A framework for accessing different modules in a uniform way has been developed, allowing one analysis module to be used with all tools– Methodology not specific to linear collider studies
Methodology
• Use Java for building framework:– Good OO language for rapid development of analysis
algorithms– Use Java Native Interface (JNI) to call different
language modules and retrieve results back into Java objects
– Adapt each tool to use common java interfaces • E.g. All generators create same HEPevt
– Use existing Java analysis tools for data analysis• JAS, JAIDA, etc.• US Linear Collider physics tools (Java)
– 3,4 vector tools, jet finders, vertex finding, etc.
– Provide access to Java based scripting languages• jython, pnuts, dynamic java etc.
Event Generators Interfaced
• Pandora-Pythia V2.2 Monte Carlo using PanoraPythia interface package– C++ and Fortran 77
• Pythia v6.2 Monte Carlo with Circe beamstrahlung simulation– Fortran 77
• Whizard V1.22 Monte Carlo with ISR and Circe turned on– Fortran 95
Implementation
• Use Java native Interface (JNI)– For interfacing to generators only need to implement a
few methods• setParameter() setProcess()• init()• generateEvent()• getEvent() – Access to HEPEvt, common to most generators• finish()
– Infrastructure can be reused with little change between generators
– Use standard tools (gmake etc.) to build .so file• Other libraries (i.e. CERNLIB) can be statically linked into .so
file– Rarely needs to be rebuilt
• All interactive work can be done in Java
Usage Example
• Details of how to set up generator varies from generator to generator– All follow same basic pattern– All generate same set of Java objects representing
generated particles
More about HEPEvt classes
HEPEVTCommon Block
Java Object Model
HEPEvtParticle
ParticleType
Pandora, Pythia, Whizard Comparisons
• FMCParticle jet distributions– Number of “correctly”
reconstructed jets– Angular distribution
(CosθMax) of jets– Jet finder final “ycut”– Direct reconstruction of Z
and Higgs through hadronic decays.
• Good agreement between Pandora, Pythia and Whizard simulation
Simulation Packages• LCD Fast Monte Carlo v1.4 (Java)
– Charged particle momentum smearing based on detailed error estimates
– Gaussian energy smearing for photons and neutral hadrons– Acceptance and energy threshold requirements– Perfect energy flow
• TESLA SimDet V4.0 (Fortran 77)– Parameterized charged and neutral energy smearing based on full
(Brahms) Monte Carlo simulations– Acceptance requirements– A new energy flow algorithm
• JLC QuickSim V2.1 includes (C++)– Charged particle momentum and position smearing based on detailed
error estimates– Simulation of individual calorimeter cell hits and cluster finding– Track-cluster association to separate charged and neutral clusters
DetectorSimulationEvent Generators
Interoperability
Pythia
Pandora
Whizard
EventSelection
LCD FastMC
TESLASimDet
JLCQuickSim
AnalysisCode
Java
Fortran
C, C++
US FastMC, SimDet & QuickSim Detector Simulations
• Direct reconstruction of Z and Higgs through hadronic decays is shown for Higgstrahlung signal events only. Jet-jet mass distributions for US FastMC, TESLA SimDet and JLC QuickSim detector simulations are reconstructed for Whizard-MadGraph Monte Carlo events including ISR and Circe beamstrahlung effects.
• The LCD FastMC jet-jet mass resolution is significantly better since it assumes “perfect” energy flow. TESLA SimDet and JLC QuickSim detector simulations give comparable jet energy resolutions but different mean reconstructed jet-jet masses.
Whizzard: MadGraph Higgstrahlung Event Analysis
Conclusions and Future
• Hand coded JNI solutions works well for interfacing to event generators, simple simulation programs– Brings advantages of Java based analysis to Fortran and C,C++
code– Allows direct physics comparisons of disparate tools
• New tools are now available which will make this approach more scalable– JACE http://reyelts.dyndns.org:8080/jace/
• Integration with gcc-xml, or POOL dictionary?
– Web/Grid services– LCIO – Common IO system for international linear collider studies
• see talk by Frank Gaede at this conference)
• All tools used in this study available from:– http://www.lbl.gov/~ronan/docs/lcdstudies/
Higgstrahlung