# Presentation: 658976

## DZero Monte Carlo

- Status, Performance,
- and Future Plans

- Greg Graham
- U. Maryland - Dzero
- 10/16/2000

- ACAT 2000

## DZero Monte Carlo Components

- GEANT-3 based hits simulation (D0gstar)
- Separate executable for digitization and pileup (D0Sim)
- Parameterized Monte Carlo Simulation (PMCS)
- Infrastructure for MC generation (MCC)
- Trigger Simulator/Emulator (Trigsim)
- D0 Reconstruction Program (D0Reco)
- Won’t talk about here ...

- Greg Graham - ACAT 2000

- 10/16/2000

## Aside on DZero Code

- Dzero executables consist of packages running in a framework
- Packages inherit hook methods
- Framework calls hook methods of packages in well defined order
- Dynamic : Requirements Based
- Static : User defined order given at runtime
- Runtime parameters handled by RCP database system (M. Paterno)
- RCP script files tied to code releases in CVS
- Events are tagged with RCP ID’s

- Greg Graham - ACAT 2000

- 10/16/2000

## Aside on DZero Object Model (D0OM)

- Persistency mechanism D0OM
- “loosely” based on ODMG standards
- Supports CERN DSPACK as well as EVPACK I/O packages
- EVPACK can attain factor of 2 compression over DSPACK

- Greg Graham - ACAT 2000

- 10/16/2000

## Generators

- Pythia v6.129
- Upgrade soon to at least 6.134
- Isajet v7.44
- Herwig v6.1
- Special Purpose
- Single Particle
- Cosmic Ray
-  etc.

- Greg Graham - ACAT 2000

- 10/16/2000

## GEANT-3 Based Monte Carlo (D0gstar)

- GEANT 3.21
- C++ wrappers around Fortran code
- Almost complete model of the DZero detector
- FPD to be included when double precision GEANT-3 is integrated
- Small detectors (i.e.- luminosity monitor) to be included soon

- Greg Graham - ACAT 2000

- 10/16/2000

## Digitization Program (D0Sim)

- Includes packages to digitize hits in all detector systems in D0Gstar
- pileup package
- Simulates pileup in all detector systems
- Poisson or Constant sampling of Min Bias events
- Simulates effects of noise in calorimeter and the baseline subtracting electronics

- Greg Graham - ACAT 2000

- 10/16/2000

## Performance D0gstar/D0Sim

- Event Size (Pythia ttbar events)
- D0gstar : 0.9 MB/ev
- D0Sim : 1.0 MB/ev
- Event Time (200 MHz - Origin 2000)
- D0gstar : 110 sec/evt (pmc03.00.01)
- D0Sim : 80 sec/evt (psim01.01.00)
- These are still rough numbers while the issues of optimization and output are being resolved.

- Greg Graham - ACAT 2000

- 10/16/2000

## Parameterized Monte Carlo (PMCS)

- Packages divided into three categories
- FAST Track : High level physics objects
- Charged Particles, EM particles, Jets, Muons, Tau, Vertices
- Medium Track : Quick simulation of some detectors
- Calorimeter, silicon
- Slow Track : Detailed simulation of some detectors
- Calorimeter, silicon in more detail; showers

- Greg Graham - ACAT 2000

- 10/16/2000

## Parameterized Monte Carlo (PMCS)

- The fast track has the highest priority.
- Chunk output makes PMCS compatible with other D0 tools
- Visualization, Analyze on Fast Track objects
- Some D0Reco packages with Medium, Slow
- Small packages facilitate the contribution of many towards PMCS
- Maryland, Rochester, IN2P3 Lyon, TIFR

- Greg Graham - ACAT 2000

- 10/16/2000

## Parameterized Monte Carlo (PMCS)

**Parameterized Monte Carlo (PMCS)**

- Package based
- flexible output choices
- D0 Chunks
- Ntuples HBOOK or ROOT
- ROOT Tree

- Greg Graham - ACAT 2000

- 10/16/2000

## Parameterized Monte Carlo (PMCS) 

- Performance (Pythia ttbar events, 200 MHz Origin 2000 machine)
- 22 events/sec
- Can do simple things well for now; but need muon package and vertices

- Greg Graham - ACAT 2000

- 10/16/2000

## Dzero Monte Carlo Challenge

- Phase II :
- Ended April 2000
- Generated over 1 million events
- Worldwide Effort
- Phase III :
- In progress
- Over 600K events so far processed by D0GSTAR

- Greg Graham - ACAT 2000

- 10/16/2000

## Running Dzero Offline Executables

*Help for managing the MCC ...*
- mc_runjob : A package written in Python
- Runs most D0 Offline Executables
- All of them in principle
- Chains executables together
- Handles naming of input and output files
- Handles seed generation, run numbers, etc.
- Macro Script driven => Regular way to specify processing steps !

- Greg Graham - ACAT 2000

- 10/16/2000

## Mc_runjob 
“Configurators”
Run and configure each D0 Offline executable
The “Linker”
Links Configurators
Collects shell scripts that actually do the work
Macro scripts
The Linker and Configurators obey a regular set of macro commands in macro scripts

- Mc_runjob
- “Configurators”
- Run and configure each D0 Offline executable
- The “Linker”
- Links Configurators
- Collects shell scripts that actually do the work
- Macro scripts
- The Linker and Configurators obey a regular set of macro commands in macro scripts

- Greg Graham - ACAT 2000

- 10/16/2000

## Inheritance Hierarchy
Inheritance is used to incorporate D0 specific configuration (ie - RCP, runtime environment, naming, SAM metadata)
Other special purpose configurators can handle the batch system, manage a list of files, etc.

- Inheritance Hierarchy
- Inheritance is used to incorporate D0 specific configuration (ie - RCP, runtime environment, naming, SAM metadata)
- Other special purpose configurators can handle the batch system, manage a list of files, etc.

- Greg Graham - ACAT 2000

- 10/16/2000

## Graphical Support

**Graphical Support**

- While primarily a macro script driven tool, the mc_runjob inheritance hierarchy also provides core tools with GUI  methods that build a GUI from information contained in the configurators themselves.

- Greg Graham - ACAT 2000

- 10/16/2000

## Automatic Processing Request Handling System

- In MCC-II; Much of the work of generating events and keeping track was done by hand.
- In MCC-III; it still is, however ...
- Automatic processing tools are nearing completion
- Tracking in Oracle DB
- Tools to generate events, specify processing
- Tools to store/transport output

- Greg Graham - ACAT 2000

- 10/16/2000

## Automatic Request Processing System

- Greg Graham - ACAT 2000

- 10/16/2000

## Physics Process Specification

**Physics Process Specification**

- Schema part of SAM system

- Greg Graham - ACAT 2000

- 10/16/2000

## Automatic Request Processing Schema

**Automatic Request Processing Schema**

- Schema part of SAM system

- Greg Graham - ACAT 2000

- 10/16/2000

## Remote Processing Centers

- Monte Carlo simulation, digitization, and eventually some MC reconstruction will be handled offsite.
- Currently operating RPCs
- UT Arlington; IN2P3, Lyon; NIKHEF, Amsterdam; Prague
- Future planned RPCs
- Lancaster; Rio de Janeiro; TIFR
- Generated events will be stored with SAM
- We expect better than 100K events/day

- Greg Graham - ACAT 2000

- 10/16/2000

## Trigsim	

- A trigger emulator/simulator
- Code run in trigsim will be the same code that runs in the actual trigger processors where applicable; including the L1 firmware
- Many packages
- 1 package for each L1/L2 trigger subsystem
- Dynamic framework
- The processing order depends upon the input requirements of each package - the framework sorts it out

- Greg Graham - ACAT 2000

- 10/16/2000

## Trigsim Status

- Production release Deadline : Nov 1, 2000
- Currently in development releases :
- L1/L2 cal, L1/L2 Muon, L1 FT, L2 STT
- Framework for running tsim

- Greg Graham - ACAT 2000

- 10/16/2000

## Future Plans

- Complete all functionality of D0gstar, D0Sim
- Of course, this never really ends ...
- Optimize speed and size of output
- Complete functionality of PMCS
- No production release planned yet
- Make the trigsim production release deadline
- Test the automatic processing system on the D0 Farm system and put into production
- Will happen this week (I hope...)

- Greg Graham - ACAT 2000

- 10/16/2000