Introduction to SimTools

Slides:



Advertisements
Similar presentations
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2004 Go4 v2.8 Analysis Design.
Advertisements

1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
1 Status of Software Tools Akiya Miyamoto KEK 8 th ACFA, EXCO, Daegu 12 July 2005 Short summary of work done by K.Fujii(KEK), T.Fujikawa(Tohoku), K.Kawagoe(Kobe),
Very Quick & Basic Unix Steven Newhouse Unix is user-friendly. It's just very selective about who its friends are.
FULL CHAIN SIMULATION of CMS DETECTOR Ijaz Ahmed National centre for Physics, Islamabad.
JCE A Java-based Commissioning Environment tool Hiroyuki Sako, JAEA Hiroshi Ikeda, Visible Information Center Inc. SAD Workshop.
ROOT An object oriented HEP analysis framework.. Computing in Physics Physics = experimental science =>Experiments (e.g. at CERN) Planning phase Physics.
JAS3 + AIDA LC Simulations Workshop SLAC 19 th May 2003.
CENT 305 Information Systems Security Linux Introduction.
1 ACFA8, July , 2005, Youngjoon Kwon (Yonsei Univ.) Simulation / Recon. Workgroup summary for ACFA8  The Framework for Sim./Recon. Status report.
1 Practical Jupiter and Sattelites Akiya Miyamoto KEK 1-Oct-2004 Based on works done by ACFA-SIM (-J) members.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
As of 28 Juni 2005Getting Starged with GEM - Shuei Yamada 1 Getting Started with GEM Shuei YAMADA ICEPP, University of Tokyo What is GEM? Before you start.
2/4/20079th ACFA ILC Detector Simulation Works 9 th ACFA IHEP Feb. 4 th -7 th, 2007 Tamaki Yoshioka ICEPP, Univ. of Tokyo on behalf.
Software Tools in GLD study Akiya Miyamoto KEK For Orsay Software Workshop 2 May, Based on ACFA-SIM-J activities K.Fujii 2, Y.Fujishima 8, H.Hano.
Software tools for ILC Studies Akiya Miyamoto KEK CIAW07 November 5-7, IHEP, Beijing, China.
Summary of Simulation and Reconstruction Shaomin CHEN (Tsinghua University)  Framework and toolkit  Application in ILC detector design Jupiter/Satellites,
1 Introduction to SimTools Akiya Miyamoto KEK Jan 2006.
10/31/2015PHYS 3446 DØ Data Analysis with ROOT Venkat (for Dr.Yu)
GLD Simulation tools and PFA studies Akiya Miyamoto KEK At 9-January-2007 FJPPL meeting.
ILC DBD Common simulation and software tools Akiya Miyamoto KEK ILC PAC 14 December 2012 at KEK.
1 Report to Simulation Meeting 20 May, 2004 Akiya Miyamoto, KEK.
1 Software tools for GLC studies Akiya Miyamoto KEK 20 April, 2004 Representing ACFA-Sim Group
1 Using Jupiter and Satellites Akiya Miyamoto KEK Jan 2006.
Lab 3 + Using the Terminal 1. "Under Linux there are GUIs (graphical user interfaces). where you can point and click and drag, and hopefully get work.
Software tools and Computing Akiya Miyamoto KEK 29-September-2006 At FJPPL meeting.
1 Software tools and Computing Akiya Miyamoto KEK Gakujyutsu Sousei Kaigi 28-June 2006 KEK 4 th Building Seminar Hall.
Page 1 Printing & Terminal Services Lecture 8 Hassan Shuja 11/16/2004.
Report from Software Workshop before TILC09 (16-April) Akiya Miyamoto, KEK 21-April-2009 ILD Meeting.
2/4/20079th ACFA ILC Detector Simulation Works 9 th ACFA IHEP Feb. 4 th -7 th, 2007 Tamaki Yoshioka ICEPP, Univ. of Tokyo on behalf.
1 Introduction to SimTools Akiya Miyamoto KEK June 2005.
Software Status for GLD Concepts Akiya Miyamoto 31-October-2007 ILD Optimization Meeting References: - Y.Sugimoto, “GLD and GLDc”, talk at ALCPG07, ILD.
1 Software tools in Asia Akiya Miyamoto KEK 18-March-2005 Simulation and Reconstruction Session LCWS2005 Representing acfa-sim-j activity M.C.Chang 1,K.Fujii.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
S.Linev: Go4 - J.Adamczewski, H.G.Essel, S.Linev ROOT 2005 New development in Go4.
1 Software tools for GLD Studies Akiya Miyamoto KEK 25 May, 2005 at IHEP Based on acfa-sim-j activity.
Go4 Workshop J.Adamczewski-Musch, S.Linev Go4 advanced features.
Introduction to FCC Software FCC Istanbul 11 March, 2016 Alice Robson (CERN/UNIGE) on behalf of / with thanks to the FCC software group.
Wouter Verkerke, NIKHEF 1 Using ‘stoomboot’ for NIKHEF-ATLAS batch computing What is ‘stoomboot’ – Hardware –16 machines, each 2x quad-core Pentium = 128.
Software framework and batch computing Jochen Markert.
Convert generic gUSE Portal into a science gateway Akos Balasko.
Starting Analysis with Athena (Esteban Fullana Torregrosa) Rik Yoshida High Energy Physics Division Argonne National Laboratory.
Session 7: More Module Interface Rob Kutschke art and LArSoft Course August 4, 2015.
1 Jupiter, Satellites and SimTools Akiya Miyamoto KEK 16-March-2005 Simulation Mini Workshop Based on acfa-sim-j activity.
HYDRA Framework. Setup of software environment Setup of software environment Using the documentation Using the documentation How to compile a program.
Review Why do we use protection levels? Why do we use constructors?
Advanced Computing Facility Introduction
Go4 v2.2 Status & Overview CHEP 2003
Fundamental of Databases
Creating a Flash Web Site
For the OSU Group and CDF
Comments from MarlinReco users in Asia
Google Web Toolkit Tutorial
Work report Xianghu Zhao Nov 11, 2014.
Appendix B MathScript Basics
Monte-Carlo event generation for CEPC
Distributed object monitoring for ROOT analyses with Go4 v.3
Submit BOSS Jobs on Distributed Computing System
GPAMELA Alessandro Bruno.
Windows 7                      .
Jupiter, Satellites and SimTools
Linear Collider Simulation Tools
Exploring the Power of EPDM Tasks - Working with and Developing Tasks in EPDM By: Marc Young XLM Solutions
Exploring the Power of EPDM Tasks Working with and Developing Tasks in SolidWorks Enterprise PDM (EPDM) By: Marc Young xLM Solutions
Jupiter and Satellites
Introduction to Athena
CSE 303 Concepts and Tools for Software Development
Java Reconstruction and Analysis for a Linear Collider Detector
Linear Collider Simulation Tools
Presentation transcript:

Introduction to SimTools Akiya Miyamoto KEK Feb 2007

Plan of Tutorials KEK ILC Computing JSF Intorudction, Go through examples learn how to access JSF classes Jupiter / Satellites Intorudction Kick-off studies

CPU Configuration jlclogin2 SL4.2 /home /data4/jlc, /data7/jlc ; generic user files /data5, /data6 : for soft files.

Local commands Submit job $ submit [-h host] command Submit job as a batch job $ submit command > log 2>&1 & ( in case of bash ) Show job status in CPU server $ showjob Monitor CPU loads of each CPU server $ cpui To kill job running at CPU server $ rsh jlccpuXX “ps –ef | grep username” $ rsh jlccpuXX “kill –15 XXXX”

How to setup your account $ cd $ cp /home/miyamoto/Tutorials/misc/dot.rootrc ~/.rootrc $ mkdir Tutorials $ cd Tutorials $ cp /proj/soft/Release/1.35/setup.bash . $ source setup.bash You are ready to run jsf/jupiter/satellites program

Information on the web http://acfahep.kek.jp/subg/sim/simtools http://www-jlc.kek.jp/subg/offl/jsf http://jlccvs.kek.jp/

Files in SimTools SimTools tools lcbase Leda jsf Physsim Jupiter Uranus docs Satellites examples QuickSim exam01 ..... Jupiter Satellites setup.bash Readme

Functions of each components lcbase : configuration files Leda : Analysis tools (Kalman fitter, 4vector and jet findinder utilities ) jsf : Root-based framework lclib : QuickSim and other fortran based utilities physsim : Helas-based generator Jupiter : Full simulation based on Geant4 Uranus : Data analysis packages Satellites : Data analysis packages for MC data We use only C++, except old fortran tools. Link to various tools at http://acfahep.kek.jp/subg/sim/soft All packages are kept in the CVS. Accessible from http://jlccvs.kek.jp/

JSF JSF provides common framework for studies using Quick Simulator Jupiter/Satellites To start interactive session of jsf, do $ jsf gui.C JSF control panel popes up

Using JSF Control Panel Controls menu run mode generator type generator parameters pythia event type zh save parameters Next Event button

Batch Run $ jsf -b -q --maxevt=100 gui.C root option: -b : run without X -q : quit at the end jsf option --maxevt=N : N is number of events

JSF Basics

JSF features - 1 JSF is based on ROOT User needs to lean just one language, C+ JSF provides a framework for modular analyses Common framework for event generation, detector simulation, and analyses. Same framework for beam test data analysis Unified framework for interactive and batch jobs GUI for control of an interactive run Histogram and event display packages included A file similar to .rootrc is used to set parameter. Default values an be overidden by command line argument at run time.

JSF Features – 2 Object I/O Each modules can save/read their event data as branches of a root tree. Job parameters, histograms, ntuples and private analysis tree can be saved in the same file Packages Included in the release Pythia6.3, Bases/Spring++, ZVTOP, JETNET, BSGEN Provided as separated packages Physsim (Event generators and analysis utilities) LCLIB (QuickSim, Helas) Jupiter (Geant4) Uranus/Satellites

JSF Conponents Libraries ( $JSFROOT/lib ) Pre-compiled C++ classes to build JSF application such as libJSFGenerator.so, libJSFQuickSim.so, … Executables (main program ) ($JSFROOT/bin) “jsf” command : built with ROOT+libJSF.so Macros ($JSFROOT/macro) C++ program is used as Macro thanks to CINT (No need to compile and link) In JSF, Macros are used to set run parameters and provide a simple analysis code. gui.C, GUIMainMacro.C, UserAnalysis.C

JSF Kernel JSF is a framework for event-by-event data analysis Provides a modular framework suitable for analysis consists of several sub-detectors Job flow control Job flow is controlled by a class, JSFSteer Analysis modules are inherited from a class, JSFModule Member functions of JSFModule Initialize(), BeginRun(..), Process(…), EndRun(), Terminate() JSF job flow concept Create modules Jon Initialization Begin Run Event analysis End Run Job Termination A simple example without Macros is prepared in $JSFROOT/example/ZHStudy

JSF Kernel - FileIO A class, JSFEventBuf, is defined by JSFModule It is used to define branch of a ROOT Tree ( used to save/get event data ) JSFModule JSFEventBuf : 1-to-1 correspondance Information of JSFModule written in a root file is used to define branch for read-in data. In a user program, To get pointer to JSFModule objects, mod= (JSFModule*) gJSF->FindModule(“module_name”) To get pointer to JSFEventBuf objects, buf=(JSFEventBuf*)mod->EventBuf()

Access to JSFModule and JSFEventBuf In script JSFSteer *jsf (defined in gui.C) jsf->GetEventNumber(); JSFXXX *mod=(JSFXXX*)jsf->FindModule("JSFXXX"); JSFXXXBuf *buf=(JSFXXXBuf*)mod->EventBuf(); In compiled code, JSFSteer *gJSF (defined in JSFSteer.h)

Useful Web information JSF Class Documents CVS http://jlccvs.kek.jp/

Parameter file All parameters are managed by JSFEnv class In the userprogram, they are obtained by a method, JSFEnv::GetValue(“Parameter.name”,default) At run time, paremetercan be changed by three method In a file, jsf.conf Parameter.Name: value #!argname # comments …. As a command line argument, like $ jsf –argname=value gui.C Through the popup menues of JSF Control Panel Each user can add their own menu by a function, UserMenu() argname is an alias of Parameter.Name used to parse command line argument

Macro in JSF In JSF, macros ( xxx.C file ), are used extensively to define type of jobs and job parameters. Important macro files in $JSFROOT/macro directory GUIMainMacro.C : Define a standard set of modules and their parameters gui.C : Load GUIMainMacro.C and libraries for GUI UserAnalysis.C : An sample user macro file for Initialization, event analysis and drawing histogram

JSF – First example in SimTols Examples inSimTools $ cd [SimTools]/examples/JSF_QuickSim/exam01 $ jsf gui.C JSF control panel popes up

UserAnalsis.C Example in $JSFROOT/macro/UserAnalysis.C Three functions: UserInitialize() : Called at Job initialization define Histgrams, etc. UserAnalysis() : Called at each event for event analysis DrawHist() : Called to draw histogram

GUIMainMacro

Build Compilied library buildjsf command

Other examples Exam02 Exam03 Exam04

JSF Generators JSFGenerator PythiaGenerator JSFBases - JSFSpring - JSFHadronizer JSFMEGenerator - JSFSHGenerator JSFReadMEGenerator - JSFPythiaHadronizer

PythiaGenerator Parameters Process : ZH, ZZ, WW, enW, eeZ, gammaZ BeamStrahlung Decay: Z, W, H InitPythia.C

JSFGeneratorParticle Particle informationID, Mass, Charge, P, X, DLPointers to Mother, 1st_Daughter, NDaughter Example jsf/generator using JSFGeneratorParticle EventShape

JSFQuickSim Quick Simulator module Detector parameter file $(LCLIBROOT)/simjlc/param/detect7.com-- "JLC-I” Green Book Detector (2 Tesla) , default $(LCLIBROOT)/simjlc/param/jlc3T.com-- "ACFA Report" (3 Tesla) $(LCLIBROOT)/simjlc/param/gld_v1.com-- “GLD_V1" (3 Tesla) (performance needs to be checked.) JSFQuickSimParam : parameter class JLCQuickSim.ParameterFile: env. param. Simulator Output data JSFQuickSimBufVTX (+IT), CDC, EMC, HDC, LTKCLTrack

SIMDSTBuf The format agreed among ACFA group. JSFQuickSIM + JSFGenerator Same information can be written to a file accesible by FORTRAN program.

Classes for QuickSim Output JSFSIMDSTBuf important Member functions: Int_t GetNLTKCLTracks(); Int_t GetNCDCTracks(); Int_t GetNVTXHits(); Int_t GetNEMCHits(); Int_t GetNHDCHits(); Int_t GetNSMHits(); Int_t GetNGeneratorParticles(); TObjArray *GetLTKCLTracks(); // Pointers to LTKCLTracks objects array TClonesArray *GetCDCTracks(); // Pointers to CDCTracks object array TClonesArray *GetVTXHits(); // Pointers to VTXhits object array TClonesArray *GetEMCHits(); // Pointers to EMhits object array TClonesArray *GetHDCHits(); // Pointers to HDhits object array TClonesArray *GetSMHits(); // Pointers to SMhits object array TClonesArray *GetGeneratorParticles(); // Pointers to GeneratorParticle objects array

JSFLTKCLTrack Information based on "Combined Track Bank" Data in class http://www-jlc.kek.jp/subg/offl/lib/docs/cmbtrk/main.html Data in class P at closest approach to IP Particle type: 1=Pure gamma, 2=Gamma in mixed EMC, 3=Pure neutral Hadron, 4=Hadron in mixed HDC, 5=Pure charged hadron, 6=Unmached Track 11=Electron candidate, 13=muon candidate Source of information : 100*IHDC + 10*IEMC + ICDC Nsig Pointer to CDC Tracks

Anlib ANL4DVector: TLorentz , Lockable ANLEventSahpe Using TObjArray of ANL4DVector Calculate Thrust, Oblateness, Major/Minor Axis ANLJetFinder base class for Jade, JadeE, Durham jet finder ANLJet : ANL4DVector See examples in $(LEDAROOT)/Anlib/examples

JLCCVS Latest packages are available at http://jlccvs.kek.jp. How to get: $ cvs -d :pserver:anonymous@jlccvs.kek.jp/home/cvs/soft login <RETURN> Password: <RETURN> $ cvs -d :pserver:anonymous@jlccvs.kek.jp:/home/cvs/soft co jsf <RETURN> Update $ cvs update -P See CVS log $ cvs log Web interface to see a code history http://jlccvs.kek.jp/cgi-bin/cvsweb.cgi/jsf/

Information on Web Home page of ACFA-Sim group http://acfahep.kek.jp/subg/sim SimTools http://acfahep.kek.jp/subg/sim/simtools

Backup slides

jsf gui.C Construct JSFSteer no IsBatch ? yes gui=new JSFGUIFrame() Start Interactive session BatchRun()

Setup.bash # .bashrc # Following two lines are essential export SIMTOOLS_DIR=/home/sample/SimTools export ROOTSYS=/home/root/root-4.03.04 # next three lines are required to compile package export JDK_HOME=/home/soft/JDK/j2sdk1.4.2_06 export G4INSTALL=/home/soft/Geant4/geant4.6.1 export LCIO=/home/soft/lcio/v01-03 ..........

.rootrc ROOT uses .rootrc file to set configuration parameters. Following two parameters must be defined to run JSF. .rootrc file is in your current directory or in your home directory.