CMS 3D CMS Logo

Package Alignment/LaserAlignment

Source code (CVS tag: @) - Administrative privileges

Description

This package contains the reconstruction code for the Laser Alignment System in the Tracker.

Public interface

Modules

# configuration for LaserAlignment
# 
# include the right cff file for the AlignmentAlgorithm which contains
# the corresponding configuration to the used misalignment scenario!
#
# this case: NO misalignment
#

include "Alignment/LaserAlignment/data/BeamProfileFitter.cff"
include "Alignment/LaserAlignment/data/LaserAlignmentAlgorithm.cff"


module LaserAlignment = LaserAlignment  {

    # currently without effect, to be cleaned in an upcoming fix
    untracked int32 NumberOfEventsPerLaserIntensity = 1000
    untracked int32 NumberOfEventsForAllIntensities = 1000
    untracked int32 DoAlignmentAfterNEvents = 25000
    untracked int32 DebugLevel = 4

    # whether to create an sqlite file with a TrackerAlignmentRcd + error
    untracked bool saveToDbase = true

    # create a ROOT file containing the collected profile histograms?
    untracked bool saveHistograms = false
    untracked string ROOTFileName = "LaserAlignment.histos.root"
    untracked int32 ROOTFileCompression = 1

    # enable the new algorithms (and disable the old ones: BrunosAlignmentAlgorithm, Millepede, ...)
    untracked bool UseNewAlgorithms = true

    # if not, here's the steering for the old algorithms
    untracked bool AlignPosTEC = false # cannot be enabled in this version since LaserAlignment package is being refurbished
    untracked bool AlignNegTEC = false # cannot be enabled in this version
    untracked bool AlignTECTIBTOBTEC = false # cannot be enabled in this version
    untracked bool UseBrunosAlignmentAlgorithm = true # run the analytical endcap algorithm (exists also as new)

    # these are obsolete, to be cleaned in an upcoming fix
    untracked double SearchWindowPhiTIB = 0.05
    untracked double SearchWindowPhiTOB = 0.05
    untracked double SearchWindowPhiTEC = 0.05
    untracked double SearchWindowZTIB = 1.0
    untracked double SearchWindowZTOB = 1.0
    untracked double PhiErrorScalingFactor = 1.0
    untracked int32 MinAdcCounts = 0
    
    # do pedestal subtraction. DISABLE THIS for simulated data.
    untracked bool SubtractPedestals = true

    # enable the zero (empty profile) filter in the LASProfileJudge, so profiles without signal are rejected.
    # might want to disable this for simulated data with typically low signal level on the last disks
    untracked bool EnableJudgeZeroFilter = true

    # configuration of the BeamProfileFitter
    using BeamProfileFitterBlock
    
    # configuration of the AlignmentAlgorithm (old ones)
    using LaserAlignmentAlgorithm
    untracked bool UseBeamSplitterFrame = true
    
    # list of digi producers
    VPSet DigiProducersList = 
    {
 	{ string DigiProducer = "siStripDigis"
	    string DigiLabel    = "\0"
        }
	
	# { string DigiProducer = "RawToDigi"
	#   string DigiLabel    = "ZeroSuppressed"
	# },
	
	# { string DigiProducer = "theSiStripZeroSuppression"
	#   string DigiLabel    = "fromVirginRaw"
	# },
	
	# { string DigiProducer = "theSiStripZeroSuppression"
	#   string DigiLabel    = "fromProcessedRaw"
	# },
	
	# { string DigiProducer = "theSiStripZeroSuppression"
	#   string DigiLabel    = "fromScopeMode"
	# }
    } 
}

# configuration of the Laser Clusterizer
#

module siStripClusters = LaserClusterizer
{
  string ClusterMode = "LaserBeamClusterizer"
  # width of the clusters in sigma's
  double ClusterWidth = 1.0
  string BeamFitProducer = "LaserAlignment"
  VPSet DigiProducersList = 
  {
     { string DigiProducer = "LaserAlignment"
       string DigiLabel    = "\0"
     }

     # { string DigiProducer = "RawToDigi"
     #   string DigiLabel    = "ZeroSuppressed"
     # },

     # { string DigiProducer = "theSiStripZeroSuppression"
     #   string DigiLabel    = "fromVirginRaw"
     # },

     # { string DigiProducer = "theSiStripZeroSuppression"
     #   string DigiLabel    = "fromProcessedRaw"
     # },
   
     # { string DigiProducer = "theSiStripZeroSuppression"
     #   string DigiLabel    = "fromScopeMode" 
     # }
  } 

}

 module LaserSeedFinder= LaserSeedGenerator
{
    InputTag matchedRecHits = siStripMatchedRecHits:matchedRecHit
    InputTag rphiRecHits    = siStripMatchedRecHits:rphiRecHit
    InputTag stereoRecHits  = siStripMatchedRecHits:stereoRecHit
    double ptMin = 0.0
    double originRadius = 150
    double originHalfLength = 90
    double originZPosition = 0
    string TTRHBuilder = "WithTrackAngle"	
    string Propagator = "Analytical" # change to WithMaterial if you want to use the PropagatorWithMaterial
}

Unit tests and examples

# configuration of the RecoAnalyzer
#
# makes some plots of the reconstruction
module RecoAnalyzer = RecoAnalyzer 
{
  untracked string ROOTFileName = "RecoAnalyzer.histos.root"
  untracked int32 ROOTFileCompression = 1
  untracked double SearchWindowPhiTIB = 0.05
  untracked double SearchWindowPhiTOB = 0.05
  untracked double SearchWindowPhiTEC = 0.05
  untracked double SearchWindowZTIB = 1.0
  untracked double SearchWindowZTOB = 1.0
  string ClusterProducer = "siStripClusters" 
  string RecHitProducer = "siStripMatchedRecHits"

  # list of digi producers
  VPSet DigiProducersList = 
  {
 	{ string DigiProducer = "siStripDigis"
          string DigiLabel    = "\0"
        }

	# { string DigiProducer = "RawToDigi"
	#   string DigiLabel    = "ZeroSuppressed"
	# },

	# { string DigiProducer = "theSiStripZeroSuppression"
	#   string DigiLabel    = "fromVirginRaw"
	# },

	# { string DigiProducer = "theSiStripZeroSuppression"
	#   string DigiLabel    = "fromProcessedRaw"
	# },
   
	# { string DigiProducer = "theSiStripZeroSuppression"
	#   string DigiLabel    = "fromScopeMode"
	# }
  } 
}

Status and planned development

Almost completed; finish storage of alignment corrections in the DB, implement algorithm to automatically select the layer for which the intensity of the laser beam is currently optimized.


Last updated: @ Author: Maarten Thomas.
Generated on Tue Jun 9 17:56:13 2009 for CMSSW by  doxygen 1.5.4