1 / 17

Adding Digis and Configurable Pixels to the Doublet StrawmanB

Adding Digis and Configurable Pixels to the Doublet StrawmanB. Michael Weinberger Teruki Kamon Harry Cheung. March 13, 2008. Outline. Overview of Doublet Geometry Adding in Digis to Fastsim Configuring the Pixels Status and Plans. Adding in Digis to FastSim.

mikaia
Télécharger la présentation

Adding Digis and Configurable Pixels to the Doublet StrawmanB

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Adding Digis and Configurable Pixels to the Doublet StrawmanB Michael Weinberger Teruki Kamon Harry Cheung March 13, 2008

  2. Outline • Overview of Doublet Geometry • Adding in Digis to Fastsim • Configuring the Pixels • Status and Plans Michael Weinberger

  3. Adding in Digis to FastSim • Want to use FastSim to do testing of the various different models of a new tracker • Fastsim goes from simhits to rechits directly • Need digis to be able to do triggering with tracker • Granularity and occupancy will also be studied • Adding in the digis increases the processing time to a non-usable amount [two orders of magnitude for 5 pileup events] • First tried to reduce processing time by using approximations for charge deposition Michael Weinberger

  4. Adding Noise • This is done in two steps: 1. Noise is added to pixels that have hits 2. Noise is then added to all channels • Uses a Gaussian method to determine the noise • Time consuming • As a first step, if the noise for all channels is removed, the processing time becomes reasonable again Michael Weinberger

  5. Processing Time versus Pileup LHC Pileup (5) Projected SLHC Pileup(400) Michael Weinberger

  6. Comparing to Full Reconstruction Michael Weinberger

  7. Adding Digi to Existing .cfg File • Add random noise generator seeds • PSet moduleSeeds ={ • … • untracked uint32 siPixelDigis = 41177 • untracked uint32 siStripDigis = 12190507 • } • Add in Pixel includes and replacements: • include "SimTracker/SiPixelDigitizer/data/PixelDigi.cfi" • include "CalibTracker/Configuration/data/SiStrip_FakeGain.cff" • include "CalibTracker/Configuration/data/SiStrip_FakeNoise.cff" • include "CalibTracker/Configuration/data/SiStrip_FakePedestals.cff" • include "CalibTracker/Configuration/data/SiStrip_FakeLorentzAngle.cff" • include "SimTracker/SiStripDigitizer/data/SiStripDigi.cfi" • # Uncomment both for FastSim - tells digi makers the name of the simhits • replace siPixelDigis.ROUList = { "TrackerHits" } • replace siStripDigis.ROUList = { "TrackerHits" } • replace siPixelDigis.MissCalibrate = false • replace siPixelDigis.AddNoisyPixels = false • replace siStripDigis.Noise = false • Already included in the Strawman B .cfg file from Twiki page Michael Weinberger

  8. Changing Pixel Properties • The CMSSW code for the regular geometry is designed to be very hard to change, for good reason • i.e. lots of hardcoded numbers • All information should be from .xml file • Geometry/TrackerCommonData/data/trackerStructureTopology.xml • name="PixelROCRows" value="80" • name="PixelROCCols" value="52" • name="PixelROC_Y" value="2" • name="PixelROC_X" value="1" • But need to modify other files also • Will split off modified code as a separate CVS branch Michael Weinberger

  9. Recipe for Modifying Pixels • Start with StrawmanB setup from twiki, or from regular geometry Fastsim • Check out from CVS • cvs co -r XXX Geometry/TrackerTopology • cvs co -r XXX CondFormats/SiPixelObjects • cvs co -r XXX Geometry/TrackerGeometryBuilder • Waiting to hear back from the package admins about making a new branch for the SLHC work • Changed files • Geometry/TrackerGeometryBuilder/src/PixelTopologyBuilder.cc • CondFormats/SiPixelObjects/interface/ PixelIndices.h • Geometry/TrackerTopology/src/ RectangularPixelTopology.cc • Geometry/TrackerTopology/interface/RectangularPixelTopology.h Michael Weinberger

  10. RectangularPixelTopology.h • Main file defining the geometry of the pixels • Local point, pitch, numbering, … • Used by PixelTopologyBuilder.cc • Which also has hardcoded big pixel info • Many hardcoded changes were needed • Number of big pixels • Testing methods for big pixels • Number of rows and columns Michael Weinberger

  11. Changes to RectangularPixelTopology.h • class RectangularPixelTopology : public PixelTopology { • private: • // This is temporary before we find a better way [From original coders] • static const int ROWS_PER_ROC = 80; // Num of cols per ROC • static const int COLS_PER_ROC = 52; // Num of Rows per ROC • static const int BIG_PIX_PER_ROC_X = 0; // in x direction, rows • static const int BIG_PIX_PER_ROC_Y = 0; // in y direction, cols • static const int ROCS_X = 2; • static const int ROCS_Y = 8; Michael Weinberger

  12. Changes to trackerStructureTopology.xml(For the 1_8_X will be only thing to change) • <SpecPar name="PixelROCRowsPar"> • . . . • <Parameter name="PixelROCRows" value=“80"/> • </SpecPar> • <SpecPar name="PixelROCColsPar"> • . . . • <Parameter name="PixelROCCols" value="52"/> • </SpecPar> • <SpecPar name="PixelROC_XPar"> • . . . • <Parameter name="PixelROC_X" value="2"/> • </SpecPar> • <SpecPar name="PixelROC_YPar"> • . . . • <Parameter name="PixelROC_Y" value="8"/> • </SpecPar> Michael Weinberger

  13. // The maximum number of ROCs in the X (row) direction per sensor. const int maxROCsInX = 2; // // The maximum number of ROCs in the Y (column) direction per sensor. const int maxROCsInY = 8; // // Default ROC size const int ROCSizeInX = 80; // ROC row size in pixels const int ROCSizeInY = 52; // ROC col size in pixels // Default DET barrel size const int defaultDetSizeInX = 160; // Det barrel row size in pixels const int defaultDetSizeInY = 416; // Det barrel col size in pixels Changes to PixelIndices.h • Used mostly for error checking • Will be modified for the 1_8_X series as a lot of hardcoding has been left in • But only used for inefficiency calculations, which are currently not done Michael Weinberger

  14. Changes to PixelROC.cc • Modified in 1_8_X releases so the hardcoding has been taken out • But hardcoding moved to a new file: LocalPixel • int PixelROC::theNRows = 40; • int PixelROC::theNCols = 52; Michael Weinberger

  15. Checking Changes • The plots stack the rows and columns onto one module • Plot on left normal geometry [80 rows/ROC] • Plot right has 40 rows per ROC Michael Weinberger

  16. Changing Other Properties • Want to be able to modify most physical properties of modules and ladders • Geometry/TrackerCommonData/data/pixbarladder.xml • Contains module descriptions • Width, length, thickness, modules on ladder • See StrawmanB twiki page • Once again, many properties, such as ROCs per ladder, are hardcoded, and the code will be changed in 1_8_X • Pitch is coded, and more complicated to change Michael Weinberger

  17. Status and Plans • Processing time has been reduced so that digis can be used in FastSim • Will be looking at a faster method to adding non-hit related noise • A first doublet geometry StrawmanB is set up • Changing pixel size is working and being put into CVS • For the 1_8_X release the code will be changed so only trackerStructureTopology.xml will have to be changed. • The Twiki page will be updated with a recipe for adding digis and changing pixel size after testing is done Michael Weinberger

More Related