r.dubois 9 feb 2000chep 2000 padova, italy north american linear collider detector simulations full...
TRANSCRIPT
9 Feb 2000 CHEP 2000Padova, Italy
R.DuboisNorth American Linear Collider Detector
Simulations
• Full Simulation
– flexible geometry specs within some constraints
– Gismo for simulation tool
– versatile output
– full MC record of digis
• platform support & MC Farms
• Use New Tools for Analysis
– using Root for simulation analysis and FastMC
– using JAS for all phases• see Tony Johnson’s JAS talk
• Lessons learned
LCD
9 Feb 2000 CHEP 2000Padova, Italy
R.DuboisLCD Road Map
stdHEP files
fastMC (JAS)
JAS analysis
ASCII raw data
Gismo
Full Recon
Root parser
JAS parser
.lcd filesRoot files
Gismo Material FilesGenerator FilesTrack Momentum Resolution Tables
Parameter Files (JAS)Geometry Description FilesParameter Files (Root)
fastMC (Root)
ASCII recon
Root files
.lcd files
Root Analysis
JAS parser Root parser
Generator(s)
9 Feb 2000 CHEP 2000Padova, Italy
R.DuboisGismo: Full Simulation• Reasonably full-featured full
simulation package - C++– complex geometries– EGS & GHEISHA
• cutoffs set at 1 MeV
– multiple scattering, dE/dx, etc
• Generator input from /HEPEVT/ via FNAL STDHEP I/O package
• Digitization supplied by ‘user’– tracking
• hit points at tracking/VXD layers
– calorimeters• total energy per channel
– muon strips– all digi’s have full MC record
• Output to ascii file (current)– allows parsers to translate to
JAS & Root for further analysis/processing
e+e- -~~
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Sample 5 GeV +
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Full Sim: Geometry Elements
• Most detector types are cylinders
– input by ascii detector file
– trackers and calorimeters can have inner/outer skins and endplates
– tracker/VXD layers can be individually positioned and sized
– user sets longitudinal cell composition (multi-materials allowed) and ‘sensitivity’ for calorimeters
– special shapes added in with parameters to describe their variations• conical masks configurable
• compound beampipe
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Two Detector Designs
• Large (v. L1, L2)– large!
– Large tracker• optimal tracking resolution
– Large calorimeter• optimal separation of clusters
– size limits B field• may limit vertex detector inner
radius due to e+e- pairs
• Small (v. S1, S2)– small!
– Small detector• larger B field possible
– Small calorimeter• allows high granularity (Si/W)
– Small tracker• Si strips/drift
– large B field• better containment of pairs,
closer-in vertex detector
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
B=3TB=6T
Pixel VXDPixel VXD144 lyr TPC144 lyr TPC
CoilCoil
Fe Muon SysFe Muon Sys
Pb-scint EM+HAD calPb-scint EM+HAD cal
CoilCoil
Pixel VXDPixel VXD6-lyr Si drift6-lyr Si drift
W-Si EM calW-Si EM cal
Fe Muon SysFe Muon Sys
Cu-scint HAD calCu-scint HAD cal
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Small Detector: Central Detector
3 Tracker Doublets1.1 mm G10, 600 m Sir = 14, 42, 71 cm
5 EC Tracker disksz = 31, 61, 91, 121, 149 cminner r follows cos=0.99
Luminosity monitor (Si/W)active from 30-116 mrad
9 Feb 2000 CHEP 2000Padova, Italy
R.DuboisBarrel/Endcap Region
Small
• <E> 15% lower than barrel• /<E> 15% higher
B/EC
Barrel
(note different scales on plots)
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Small
Si Tracker hits
EM Cale+e- ZZ
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Large
TPC hits EM Cal
e+e- ZZ
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
What You Get from FullSim
• Tracking– hit ID
– (x,y,z) of trajectory crossing layer
– layer E
– ptr to MC parent
– hit smearing held off until recon
• Calorimeters– hit ID (contains location)
– total energy deposited
– list of (MC parents, E)
• MU Strips– hit ID (contains location)
– list of MC parents
• Full MC Truth Table– (x,y,z) at termination point
– initial (px, py, pz)
– type & charge
– pointer to parent
– position & momentum at Cal front face
9 Feb 2000 CHEP 2000Padova, Italy
R.DuboisLCD Event Class Structure
Event
TObjArray
EM CALValue: CalHit
HAD CALValue: CalHit
MU CALValue: CalHit
LUM CALValue: CalHit
MU StripsValue: stripHit
MC ParticlesValue: McPart
CAL ClustersValue: Cluster
Value: McPart
TrackValue: Tracks
Tracker HitsValue: Tracker_Hits
VXD HitsValue: VXD_Hits
EDeposit
Key: McPartValue: Energy
LUM ClustersValue: Cluster
Note: all hits, tracks & clusters have pointers back to parent MC. Clusters have pointers to constituent hits.
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
MC Farms & Platforms• MC Farms
– SLAC, Michigan, Colorado, Penn
– Code installed but yet to run production at Vanderbilt (DEC) & FNAL (Linux)
• data repository at Penn
• ‘push’ scripts for file transfer from farms
• server access via JAS
• ftp access for Root
• Timing– ~2 mins/event for udscb 500
GeV on 400 MHz Solaris
• Platforms
– AIX
– Solaris
– DEC Unix
– Linux• call stack corruption: compiler
bug
• cannot optimize code
– Windows
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
• The Objective– Provide an alternative to ASCII
files which are by nature• Information lossy • Non dense
– Enforce data versioning
– Easily readable from C++ and Java
• Not Part Of The Objective– A full object oriented
serialization engine (a la Root or Objectivity)
Serial Input Output (SIO)
• Provides– Architecture independent binary format
(uses the xdr standard)
– High integrity, self checking data layout
– Multiple simultaneously open input and output streams
– Heterogeneous record types on each stream
– Pointer relocation (at record level)
– Data compression/decompression (per record).
• Does not provide– Abstract data descriptions
– Pointer chasing
T.Waite
Input: Why Use XML?
• For 1st pass LCD used ad hoc file format, one-of-a-kind code for serial-only parsing of detector geom.
• XML is a standard meta-language for defining markup languages. Good free parsers exist, more tools coming.
• XML languages are plain-text, self-documenting.
• Appl. interface to data (XML document) may be serial or random-access.
• Avoid growing private file formats or, worse, hard-coding parameters.
• Make it easy (well, easier) for several programs to use same input.
J.Bogart
Detector Description in XML
<lcdparm> <global file=“largeParms2.xml” /> <physical_detector topology=“large” id = “L2” > <volume id=“EM_BARREL” > <tube> <barrel_dimensions inner_r = “196.0” outer_z = “322.0” /> <layering n=“40”> <slice material = “Pb” width = “0.4” /> <slice material = “Tyvek” width = “0.05” /> <slice material = “Polystyrene” width = “0.1” sensitive = “yes” /> </layering>
<segmentation cos_theta = “300” phi = “300” /> </tube> <calorimeter type = “em” /> </volume> ...
Start subdetector description
Geometry,materials
function
End subdectectordescription
J.Bogart
So far...
• Parser (XML4C) a good choice but multi-platform headaches. Java version also exists.
• Wrote a thin layer of utilities to provide more appropriate API. So far used by (but separate from) simulation only. Easy to port to Java.
• Benefits of standard format, pre-existing (free!) tools already apparent.
• Bigger, better utility layer
• Support for other forms of input, e.g. analysis cuts
• Evolving specs in the XML family (DOM Level 2, Schemas,...) bear watching.
• Other HEP (e.g. Atlas) and astrophysics (e.g. GLAST) experiments are doing similar things. Should coordinate efforts, aim for common XML DTDs/schema and supporting utilities.
To come...J.Bogart
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Beam Backgrounds Overlays
4000 Beamstrahlung particlesin the Small detector(A normal event will have
88,000/bunch x 95 bunches/train)
• Background particles from Guinea Pig machine simulation
• We plan to create a separate library of background events to overlay on top of the generator events.
• Will have to apply cuts to the GP output to allow a reasonable particle count
– large fraction don’t get to the beampipe because of the B field (by design!)
• Then must overlay beam backgrounds, physics backgrounds and noise on top of true physics event
(white lines are neutrals)
G.Bower
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Gismo?• In ‘96. Gismo was the only OO
C++ simulation package on the market
• GEANT4 only available to public in past year
• Gismo does do full simulation with complex geometries
• so what’s the problem?
• Gismo has bugs/features that need fixing– bug handling loopers
– MC particle chain not optimal for bremms
– no fluctuations on E loss
– and a few others
• Gismo support is down to one person in GLAST– not so much interest in support
as tool for HEP in general
– little or no documentation
Future will need to include GEANT4
9 Feb 2000 CHEP 2000Padova, Italy
R.Dubois
Lessons Learned• e+e- detectors look pretty
similar (except RICH!)– not hard to define user
interface (ascii file) to describe important features
– specialty items can be added as designs start to focus on details
– XML does the job nicely
• Flexible I/O needed– must be easy to read from
different analysis interfaces (eg C++, Java)
– ascii is bad for numeric precision
– ended up with xdr-based binary I/O
• Provide Full MC parentage for understanding algorithms
• Gismo sufficed for startup of project prior to G4, but should switch
• Hard to fully support more than one framework
– tried to support JAS and Root
– could not share code between them
– had to write everything twice
– was divisive
– should have (and will) support one fully and the other only as able to take output from the other.