SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
Unwrap page!
Simulation Home
Sim Codes
Event Generators
Bogus/BgsApp
SimApp
Bear
Moose
Fast Simulation
Geant4 Home
Subsystems
PEP
SVT
DCH
DRC
EMC
IFR
Mixing/Trigger
Backgrounds
Mixing
Trigger Simulation
MC Truth/QA
MC Truth
Micro/Mini
QA Histograms
Sim Error Reports
REMEDY
MC Production
Production Home
Test Production
Tools
Database
CERNLIB
CLHEP
Event display
RandControl
Scripts
Check this page for HTML 4.01 Transitional compliance with the
W3C Validator
(More checks...)
BaBar   Computing BaBar Simulation Home
Digitization
  Maintained by TW

Torre's digitization talk from the 10/96 Simulation Review

Digi codes are maintained in the XxxSim subsystem packages

SvtSim DchSim DrcSim EmcSim IfrSim
L1Sim L1DctSim L1EmtSim L1GltSim L1FctSim FcsSim [L1 page]

Agreed method for connecting Digis and GHits

See also 9/9/96 simu meeting minutes

Time quantity in digitizations

A uniform convention on the implementation of the time quantity in digis has been adopted: the time is to be ns (real) relative to the L1A time (ie. what can ultimately be expected from real data, thus isolating reco code from the evolution of how this number is filled). See also 9/9/96 simu meeting minutes

Fast Control and Timing clocks

The FcsSim package provides Fast Control and Timing clocks for use in digitization codes. Both Fortran and C++ interfaces exist. A working (Fortran) example is in the SVT code. There are examples of both Fortran and C++ use in the L1 trigger codes. See the L1 Simulation page for more information.

L1A Trigger Time Usage

The FcsSim package provides the L1A trigger accept time for use in digitization codes. Documentation on how to use it in the FcsSim README file. A working (Fortran) example is in the SVT code. Starting in 1998, packages are required to use the L1FctData package for the L1A time. The clocks will still be obtained from the FcsSim package.

Random Numbers

Recent dialogue on reproducibility and random numbers

C++ Random number classes

  • CLHEP/Random classes should be used. Refer to CLHEP documentation.
  • Currently used in
    • EmcSim
    • IfrSim
    • RecVtx (smearing routine in the test code)

Tools.h++

Tools.h++ usage guide postscript or text. For new code, use Tools.h++ rather than CLHEP eg. for lists. See the usage guide. Migration from existing CLHEP usages is a good idea but needn't have high priority.

Digitization Survey

A. Detector Subsystems

  SVT DCH DRC EMC IFR
Digi code in XxxSim Yes No Yes Yes Yes
Reproducible Yes Yes No Yes Yes
HepRandom used? No No No Yes Yes
L1A time used FcsSimOut No No No No
Language F77, C++ C++ F77 C++ C++
Digi Class SvtDigi DchDigi DrcGHit! EmcDigi IfrAbsDigi
Persistence xdr no xdr? Objy no
Hit Association (1) (2) (3) (4) (5)
MC Truth Association mcTrue() IfrAbsMC
(1)
private: HepAList <XxxGHit< _hitlist;
public: SvtGHit* getGHit(int) const;
(2)
private: HepConstAList <DchGHit> _hitlist;
public: const DchGHit* getDchGHit(int i=0) const;
(also an accessor to return AList)
(3)
(4)
private: EmcGHit* _mcTrue; // hit giving largest energy
private: HepAList<EmcGHit>* _hitlist;
public: inline const HepAList <EmcGHit>* getMemberList() const;
public: inline const EmcGHit* mcTrue() const;
public: void setMcTrue(EmcGHit*);
public: virtual void addHit(EmcGHit*);
public: virtual void addHitToListOnly(EmcGHit*);
(5)
IfrAbsDigi class inherits IfrAbsMCInfo class

B. Trigger

  L1Fct L1Glt L1Emt L1DTsf L1DBlt L1DPtd
Digi code in XxxSim Yes Yes Yes Yes Not yet Not yet
Reproducible Yes Yes Yes Yes - -
HepRandom used? Yes No No No No No
L1A time used N/A L1FctDigi L1FctDigi L1FctDigi - -
Language F77, C++ F77, C++ F77, C++ F77, C++ F77, C++ F77, C++
Digi Class L1FctDigi L1GltDigi L1EmtDigi L1DTsfDigi L1DBltDigi L1DPtdDigi
Persistence Objy Objy Objy Objy no no
Hit Association None None None Segs to DchHits None None
MC Truth Association Not foreseen Not foreseen Not foreseen Not foreseen Not foreseen Not foreseen