130 likes | 276 Views
Review of the “Core” software: Introduction . Environment: THB, Thomas, Ian, Heather Geometry: Joanne Monte Carlo: THB, Masanobu Reconstruction: Ian Planning: THB. Coding technology choices. Platforms: Win NT/2000, linux, solaris Language: Object-oriented C++, w/ coding rules
E N D
Review of the “Core” software:Introduction Environment: THB, Thomas, Ian, Heather Geometry: Joanne Monte Carlo: THB, Masanobu Reconstruction: Ian Planning: THB
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
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
root has package name Version name: root for clients Documentation Public header files contains requirements file; All build files Source files CMT disk structure Introduction, T. Burnett
server server server server “uses”, or depends on Joe package provides services for client client client client Package model Introduction, T. Burnett
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
Coding environment for developers • Traditional: • insert debug printout statements • compile, link, execute • study output • 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
create instrument response glastsim.xml .irf read back response run parameters instrument.xml glastsim .tup instrument description reconstruct,write output ntuple merit standardanalysis A look back to 21 June 1999 Introduction, T. Burnett
Now: • It is “GlastSim”, WBS 4.1.D.2 Introduction, T. Burnett
Simulation in five easy pieces • Source description, including spectrum, rate, angular dependence, geomagnetic latitude, orbit orientation, GLAST inclination • External geometry description • Concrete rendering of the detector for the simulation package • Generation of hits (and thus a definition of the hit classes.) • Conversion of hits to digis for analysis Introduction, T. Burnett
Traudl’s picture 1 4 3 2 5 Introduction, T. Burnett
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
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