Review of the “Core” software: Introduction

advertisement
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Review of the “Core” software:
Introduction
Environment: THB, Thomas, Ian, Heather
Geometry: Joanne
Monte Carlo: THB, Masanobu
Reconstruction: Ian
Planning: THB
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Coding technology choices
• Platforms: Win NT/2000, linux, solaris
• Language: Object-oriented C++, w/ coding rules
• Documentation: Doxygen
• Repository: CVS at SLAC, remote access via ssh.
• Organization/build tool: CMT
• Framework: GAUDI
Introduction, T. Burnett
2
GLAST LAT Offline Software
Core review, Jan. 17, 2001
CMT
• Inspired by bad experience with SRT (sorry, BaBar)
• Executable that creates build instructions (makefiles, DevStudio files)
for products, like executable programs.
• Defines a basic unit of software, the package; a package can have
multiple versions, accessible simultaneously.
• Defines use relation ships among packages/version combinations
• Supported by Orsay, used by many experiments
– documentation, web site
– mail list
• Independent of CVS, but maps well, has explicit support
– CMT version  CVS revision
Introduction, T. Burnett
3
GLAST LAT Offline Software
Core review, Jan. 17, 2001
CMT disk structure
root has package
name
Version name: root for
clients
Documentation

Public header files


Source files
Introduction, T. Burnett
contains requirements
file;
All build files
4
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Package model
server server server server
“uses”,
or depends on
Joe package
provides
services for
client
Introduction, T. Burnett
client client
client
5
GLAST LAT Offline Software
Core review, Jan. 17, 2001
The GAUDI Framework
• A framework that defines an architectural style for event-oriented
analysis
• Used by four other experiments, excellent support, documentation
• Implication: software components, containing classes that
implement abstract interfaces of specific types:
– Service (many exist already, easy to add new ones )
– DataObject (Transient Data Store: Ian’s talk)
– Algorithm (where use code goes Ian’s 2nd talk)
– Converter (Heather’s talk)
• Summary:
– A CMT package may define a Gaudi component and a test
program
– The component may implement one or more DataObjects,
Algorithms, etc.
Introduction, T. Burnett
6
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Coding environment for developers
•
–
•
•
Traditional:
1. insert debug printout statements
2. compile, link, execute
3. study output
4. go back to step #1
More efficient alternative:
– GUI interface with 3-D graphics
– Debugger
3-D graphics available: Two new packages:
– GuiSvc, a Service which transforms Gaudi app to use windowing env.
and makes the gui operations available
– IrfDisplay: initial example of an Algorithm that displays hits from
glastsim.
Future: probably integrate with, and adopt the HepRep/WIRED sheme
– Joe Perl’s talk tomorrow
Introduction, T. Burnett
7
GLAST LAT Offline Software
Core review, Jan. 17, 2001
A look back to 21 June 1999
create
instrument
response
glastsim.xml
.irf
read back
response
run
parameters
instrument.xml
glastsim
.tup
instrument
description
reconstruct
,
write output
ntuple
merit
standard
analysis
Introduction, T. Burnett
8
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Now:
• It is “GlastSim”, WBS 4.1.D.2
Introduction, T. Burnett
9
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Simulation in five easy pieces
1. Source description, including spectrum, rate, angular dependence,
geomagnetic latitude, orbit orientation, GLAST inclination
2. External geometry description
3. Concrete rendering of the detector for the simulation package
4. Generation of hits (and thus a definition of the hit classes.)
5. Conversion of hits to digis for analysis
Introduction, T. Burnett
10
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Traudl’s picture
1
3
4
2
5
Introduction, T. Burnett
11
GLAST LAT Offline Software
Core review, Jan. 17, 2001
Simulatation status, plans
• Old glastsim converted to packages, still in use. Output available as
Gaudi event service. Start of display.
• Geometry interface – (Joanne’s talk) not critical path for balloon
• Simulation as a Gaudi service:
– Geant4: LHCb has done it?
– Gismo: on TO-DO list for THB
• Hit classes for interface to digi code: see Masanobu’s talk.
Introduction, T. Burnett
12
GLAST LAT Offline Software
Core review, Jan. 17, 2001
To-do’s
• Framework
– Need procedures (reviews?) to give meaning to coding rules
– Definition of releases
– Validation of critical code
– Enable display of detector, tracks, recon objects
• Monte Carlo
– Instantiate geometry
– Define Gaudi service
– Create hits
– hits  digis
• Reconstruction
Introduction, T. Burnett
13
Download