North American Linear
Collider Detector
Simulations
LCD
• Use New Tools for Analysis
• Full Simulation
– flexible geometry specs within
some constraints
– Gismo for simulation tool
– versatile output
– full MC record of digis
• platform support & MC Farms
9 Feb 2000
R.Dubois
CHEP 2000
Padova, Italy
– using Root for simulation
analysis and FastMC
– using JAS for all phases
• see Tony Johnson’s JAS talk
• Lessons learned
LCD Road Map
R.Dubois
Generator(s)
Gismo Material Files
Generator Files
Track Momentum Resolution Tables
Parameter Files (JAS)
Geometry Description Files
Parameter Files (Root)
stdHEP files
fastMC (Root)
fastMC (JAS)
Gismo
ASCII raw data
ASCII recon
JAS parser
Root parser
Root parser
JAS parser
.lcd files
Root files
Root files
.lcd files
Full Recon
Root
Analysis
JAS
9 Feb 2000
analysis
CHEP 2000
Padova, Italy
Gismo: Full Simulation
• Reasonably full-featured full
simulation package - C++
• Output to ascii file (current)
– 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
9 Feb 2000
R.Dubois
CHEP 2000
Padova, Italy
– allows parsers to translate to
JAS & Root for further
analysis/processing
e+e-
~~
nn
R.Dubois
Sample 5
GeV m+
9 Feb 2000
CHEP 2000
Padova, Italy
Full Sim: Geometry Elements
R.Dubois
• 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 2000
Padova, Italy
R.Dubois
Two Detector Designs
• Large (v. L1, L2)
• Small (v. S1, S2)
– large!
– small!
– Large tracker
– Small detector
• optimal tracking resolution
• larger B field possible
– Large calorimeter
– Small calorimeter
• optimal separation of clusters
• allows high granularity (Si/W)
– Small tracker
• Si strips/drift
– size limits B field
• may limit vertex detector inner
radius due to e+e- pairs
– large B field
• better containment of pairs, closerin vertex detector
9 Feb 2000
CHEP 2000
Padova, Italy
R.Dubois
Pb-scint EM+HAD cal
Coil
Fe Muon Sys
Cu-scint HAD cal
W-Si EM cal
Fe Muon Sys
Coil
Pixel VXD
9 Feb 2000
144 lyr TPC
6-lyr Si drift
Pixel VXD
CHEP 2000
Padova, Italy
Small Detector: Central Detector
3 Tracker Doublets
1.1 mm G10, 600 mm Si
r = 14, 42, 71 cm
5 EC Tracker disks
z = 31, 61, 91, 121, 149 cm
inner r follows cosq=0.99
Luminosity monitor (Si/W)
active from 30-116 mrad
9 Feb 2000
CHEP 2000
Padova, Italy
R.Dubois
Barrel/Endcap Region
R.Dubois
• <E> 15% lower than barrel
• s/<E> 15% higher
B/EC
Small
(note different scales on plots)
Barrel
9 Feb 2000
CHEP 2000
Padova, Italy
R.Dubois
Small
EM Cal
e+e-
Si Tracker hits
9 Feb 2000
CHEP 2000
Padova, Italy
ZZ
R.Dubois
Large
e+e-
TPC hits
9 Feb 2000
EM Cal
CHEP 2000
Padova, Italy
ZZ
What You Get from FullSim
• Tracking
– hit ID
– (x,y,z) of trajectory crossing
layer
– layer DE
– ptr to MC parent
– hit smearing held off until
recon
• MU Strips
– hit ID (contains location)
– list of MC parents
• Full MC Truth Table
–
–
–
–
–
• Calorimeters
– hit ID (contains location)
– total energy deposited
– list of (MC parents, DE)
9 Feb 2000
CHEP 2000
Padova, Italy
(x,y,z) at termination point
initial (px, py, pz)
type & charge
pointer to parent
position & momentum at Cal
front face
R.Dubois
LCD Event Class Structure
R.Dubois
Event
TObjArray
EM CAL
Value: CalHit
MC Particles
Value: McPart
HAD CAL
Value: CalHit
CAL Clusters
Value: Cluster
EDeposit
MU CAL
Value: CalHit
LUM Clusters
Value: Cluster
Key: McPart
Value: Energy
LUM CAL
Value: CalHit
MU Strips
Value: stripHit
Track
Value: Tracks
Note: all hits, tracks & clusters have
pointers back to parent MC. Clusters have
pointers to constituent hits.
VXD Hits
Value: VXD_Hits
Value: McPart
9 Feb 2000
Tracker Hits
Value: Tracker_Hits
CHEP 2000
Padova, Italy
R.Dubois
MC Farms & Platforms
• MC Farms
• Timing
– ~2 mins/event for udscb 500
GeV on 400 MHz Solaris
– SLAC, Michigan, Colorado,
Penn
– Code installed but yet to run
production at Vanderbilt
(DEC) & FNAL (Linux)
• Platforms
• data repository at Penn
• ‘push’ scripts for file transfer
from farms
• server access via JAS
• ftp access for Root
9 Feb 2000
CHEP 2000
Padova, Italy
–
–
–
–
AIX
Solaris
DEC Unix
Linux
• call stack corruption: compiler
bug
• cannot optimize code
– Windows
R.Dubois
T.Waite
Serial Input Output (SIO)
• The Objective
• Provides
– 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)
9 Feb 2000
CHEP 2000
Padova, Italy
– 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).
J.Bogart
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, selfdocumenting.
•
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
Start subdetector
<lcdparm>
description
<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”>
Geometry,
<slice material = “Pb” width = “0.4” />
materials
<slice material = “Tyvek” width = “0.05” />
<slice material = “Polystyrene” width = “0.1” sensitive = “yes” />
</layering>
<segmentation cos_theta = “300” phi = “300” />
</tube>
function
<calorimeter type = “em” />
</volume>
End subdectector
...
description
J.Bogart
To come...
So far...
•
•
•
•
Bigger, better utility layer
•
Support for other forms of input, e.g.
analysis cuts
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.
•
Evolving specs in the XML family
(DOM Level 2, Schemas,...) bear
watching.
Benefits of standard format, preexisting (free!) tools already apparent.
•
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.
Parser (XML4C) a good choice but
multi-platform headaches. Java version
also exists.
Beam Backgrounds Overlays
•
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
–
•
R.Dubois
G.Bower
4000 Beamstrahlung particles
in the Small detector
(A normal event will have
88,000/bunch x 95 bunches/train)
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)
9 Feb 2000
CHEP 2000
Padova, Italy
R.Dubois
Gismo?
• In ‘96. Gismo was the only OO
C++ simulation package on the
market
• 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
• GEANT4 only available to
public in past year
• Gismo does do full simulation
with complex geometries
• 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
• so what’s the problem?
Future will need to include
GEANT4
9 Feb 2000
CHEP 2000
Padova, Italy
R.Dubois
Lessons Learned
• Provide Full MC parentage for
understanding algorithms
• 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
• Gismo sufficed for startup of
project prior to G4, but should
switch
• Hard to fully support more than
one framework
• 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
9 Feb 2000
CHEP 2000
Padova, Italy
– 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.
Descargar

Simulations Tools Status