コード例 #1
0
def patch():
    from Configurables import TbTrackPlots, TbCombatBuilder, TbClustering, TbTracking
    seq.Members = [
        TbCombatBuilder(),
        TbClustering(),
        TbTracking(),
        TbAlignment()
    ]
コード例 #2
0
def sim():
    seq = GaudiSequencer("Telescope")

    # TestMC options.
    from Configurables import TbTestMC
    TbTestMC().doMisAlign = False
    TbTestMC().NTracks = 200
    TbTestMC().RunDuration = 10000
    TbTestMC().NNoiseClusters = 0
    TbTestMC().HitTimeJitter = 20
    TbTestMC().ClusterPosnError = 0.001
    TbTestMC().ClusterADCMPV = 300.0  # Ish.
    TbTestMC().ChargeSharingWidth = 0.033  # Best not to change much.
    TbTestMC().ThresholdCut = 20
    TbTestMC().ForceEfficiency = True
    #TbTestMC().InitAlignment = "Alignment_perfect.dat"
    #TbTestMC().InitAlignment = Alignment_raw.dat

    # TbClustering options.
    from Configurables import TbClustering
    TbClustering().TimeWindow = 200

    # TbTracking options.
    from Configurables import TbTracking
    TbTracking().TimeWindow = 300
    TbTracking().SearchRadius = 1
    TbTracking().MinNClusters = 7
    TbTracking().Monitoring = True
    TbTracking().SearchVolume = "cylinder"  # {cylinder, diabolo}

    # TbTracking speed options.
    TbTracking().nComboCut = 1000  # O(10) for speed.
    TbTracking(
    ).SearchVolumeFillAlgorithm = "adap_seq"  # {seq, adap_seq}. Adap faster.

    seq.Members = [TbTestMC(), TbClustering(), TbTracking()]
    seq = GaudiSequencer("Monitoring")
    from Configurables import TbClusterPlots, TbTrackPlots
    seq.Members = [TbClusterPlots(), TbTrackPlots()]
コード例 #3
0
 def configureTelescope(self, seq):
     if self.getProp("Sim") == False:
         from Configurables import TbEventBuilder
         seq.Members += [TbEventBuilder()]
     else:
         from Configurables import TbTestMC
         seq.Members += [TbTestMC()]
     from Configurables import TbClustering
     seq.Members += [TbClustering()]
     if self.getProp("Tracking") == True:
         from Configurables import TbSimpleTracking, TbTracking
         trackingSeq = GaudiSequencer("Tracking")
         if self.getProp("UseSimpleTracking") == True:
             trackingSeq.Members = [TbSimpleTracking()]
         else:
             trackingSeq.Members = [TbTracking()]
         seq.Members += [trackingSeq]
         from Configurables import TbTriggerAssociator
         seq.Members += [TbTriggerAssociator()]
         from Configurables import TbClusterAssociator
         seq.Members += [TbClusterAssociator()]
         if self.getProp("Alignment") == True:
             from Configurables import TbAlignment
             seq.Members += [TbAlignment()]
コード例 #4
0
# This file provides an example how to configure the algorithm TbTracking

from Configurables import TbTracking
TbTracking().MinNClusters = 7
TbTracking().SearchRadius = 1
TbTracking().VolumeAngle = 0.015
TbTracking().SearchVolume = "diabolo"
TbTracking().TimeWindow = 150
TbTracking().nComboCut = 300  # O(100) for speed.
TbTracking(
).SearchVolumeFillAlgorithm = "adap_seq"  # {seq, adap_seq}. Adap faster.
TbTracking().Monitoring = True
TbTracking().SearchPlanes = [4, 3, 5]
# TbTracking().MaskedPlanes = []
コード例 #5
0
ファイル: restudies.py プロジェクト: chrisburr/Kepler
    TbClusterPlots().ParametersDifferenceXY = ('', -30., 30., 600)
    from Configurables import TbAlignment
    TbAlignment().AlignmentTechnique = "survey"

    from Configurables import TbEventBuilder
    TbEventBuilder().MinPlanesWithHits = 5

elif runs.TYPE == 'mille':
    Kepler().Alignment = True
    Kepler().EvtMax = 100

    # List of devices under test
    duts = [4]
    from Configurables import TbTracking
    # Exclude DUTs from the pattern recognition.
    TbTracking().MaskedPlanes = duts
    # Require clusters on all telescope planes.
    TbTracking().MinNClusters = 8
    from Configurables import TbClusterPlots
    # Set the reference plane.
    TbClusterPlots().ReferencePlane = 3
    TbClusterPlots().ParametersDifferenceXY = ('', -10., 10., 200)
    from Configurables import TbAlignment

    # Set the number of tracks to process.
    TbAlignment().NTracks = 10000
    # Set the reference plane (fixed position).
    TbAlignment().ReferencePlane = 3
    # Set the degrees of freedom (x, y, z, rx, ry, rz).
    TbAlignment().DoFs = [1, 1, 0, 1, 1, 1]
    TbAlignment().ParametersResidualsXY = ("", -0.2, 0.2, 100)
コード例 #6
0
ファイル: kfit.py プロジェクト: chrisburr/Kepler
from Gaudi.Configuration import *

trackFitToolName = "TbKalmanTrackFit"
from Configurables import TbTracking
TbTracking().TrackFitTool = trackFitToolName
from Configurables import TbTrackPlots
TbTrackPlots().TrackFitTool = trackFitToolName

from Configurables import TbSimpleTracking
#TbSimpleTracking().TrackFitTool = trackFitToolName
from Configurables import TbVertexTracking
#TbVertexTracking().TrackFitTool = trackFitToolName

from Configurables import TbAlignment
# TbAlignment().TrackFitTool = trackFitToolName
コード例 #7
0
ファイル: millepede.py プロジェクト: ruby64/Tb
from Configurables import Kepler
# Add TbAlignment to the Telescope sequence.
Kepler().Alignment = True

#chombach modifications

from Configurables import TbEventBuilder
# Skip noise events.
TbEventBuilder().MinPlanesWithHits = 5

# List of devices under test
duts = [4]

from Configurables import TbTracking
# Exclude DUTs from the pattern recognition.
TbTracking().MaskedPlanes = duts
# Require clusters on all telescope planes.
TbTracking().MinNClusters = 8

from Configurables import TbAlignment
TbAlignment().AlignmentTechnique = "Millepede"
# Set the number of tracks to process.
TbAlignment().NTracks = 10000
# Set the reference plane (fixed position).
TbAlignment().ReferencePlane = 3
# Set the degrees of freedom (x, y, z, rx, ry, rz).
TbAlignment().DoFs = [0, 0, 1, 0, 0, 0]
TbAlignment().ParametersResidualsXY = ("", -0.2, 0.2, 100)
TbAlignment().MaskedPlanes = duts
TbAlignment().PrintConfiguration = True
TbAlignment().ResCutInit = 1.3
コード例 #8
0
ファイル: example.py プロジェクト: chrisburr/Kepler
RUN = '9187'
if int(RUN) < 2000:
  path += 'July'
elif int(RUN) < 2815:
  path += 'Oct'
elif int(RUN) < 4000:
  path += 'Nov'
else: 
  path += 'Dec'
path += '2014'

Kepler().InputFiles =  [path + '/RawData/Run' + RUN + '/']
Kepler().PixelConfigFile = ["eos/lhcb/testbeam/velo/timepix3/July2014/RootFiles/Run1236/Conditions/PixelConfig.dat"]
Kepler().AlignmentFile = path + '/RootFiles/Run' + RUN + '/Conditions/Alignment' + RUN + 'mille.dat'
#Kepler().AlignmentFile = 'ResStudies/Alignments/dut/Alignment2509.dat'
Kepler().HistogramFile= 'Kepler_histos_' + RUN + '.root'

# Set the number of events to run over 
Kepler().EvtMax = 1000

# Set the configuration of the individual algorithms, e. g.
from Configurables import TbEventBuilder
#TbEventBuilder().MinPlanesWithHits = 5

from Configurables import TbClustering
TbClustering().PrintConfiguration = True

from Configurables import TbTracking
TbTracking().PrintConfiguration = True

コード例 #9
0
ファイル: combatExample.py プロジェクト: chrisburr/Kepler
def combatRun():
     from Configurables import TbCombatBuilder
     TbCombatBuilder().CombatInputFile0 = "/afs/cern.ch/user/v/vifranco/public/Run31100003_SAMPLE.txt"
     TbCombatBuilder().ReadoutFormat = "RelaxD"
#     TbCombatBuilder().CombatInputFile1 = "/afs/cern.ch/user/v/vifranco/cmtuser/KEPLER/KEPLER_HEAD/240614_30V_TH500_100ms_merge.dat"

     seq = GaudiSequencer("Telescope")
     seq.Members = [TbCombatBuilder(), TbClustering(), TbTracking()]

     TbCombatBuilder().PrintFreq = 5000
     TbCombatBuilder().NumberArms = 2
     
     TbTracking().MinNClusters = 6
     TbTracking().SearchRadius = 2
     TbTracking().VolumeAngle = 0.0015
     TbTracking().SearchPlanes = [3,5]
     TbTracking().SearchVolume = "diabolo"
     TbTracking().MaxChi2 = 2000000.
     TbTracking().ViewerEventNum = 100
     TbTracking().ViewerTimeLow = 0
     TbTracking().ViewerTimeUp = 2000000
     #TbTracking().ViewerOutput = True
     TbTracking().CombatRun = True
     
     seq = GaudiSequencer("Monitoring")
     from Configurables import TbHitMonitor, TbClusterPlots, TbTrackPlots
     seq.Members = [TbHitMonitor(), TbClusterPlots(),TbTrackPlots()]
     TbTrackPlots().ParametersResidualsXY = ("", -1.0, 1.0, 200)
     TbTrackPlots().ParametersXY = ("", -2, 16, 200)
     TbClusterPlots().ParametersXY = ("", -2, 16, 200)
コード例 #10
0
from Gaudi.Configuration import *

from Configurables import Kepler
Kepler().InputFiles      = ["eos/lhcb/testbeam/velo/timepix3/July2014/RawData/Run1062/"]
Kepler().PixelConfigFile = "eos/lhcb/testbeam/velo/timepix3/July2014/RootFiles/Run1062/Conditions/PixelMask.dat"
Kepler().EvtMax          = 100
Kepler().WriteTuples     = False
Kepler().Monitoring      = False
Kepler().Alignment       = True
Kepler().AlignmentFile   = "Alignment.dat"

from Configurables import TbTrackPlots
TbTrackPlots().ParametersResidualsXY = ("",-0.1,0.1,2000)

from Configurables import TbAlignment, TbTracking
TbAlignment().PrintConfiguration = True
TbAlignment().FitStrategy        = 1
TbAlignment().ReferencePlane     = 3 
TbAlignment().MaskedPlanes       = TbTracking().MaskedPlanes
TbAlignment().OutputLevel        = INFO
コード例 #11
0
ファイル: batch.py プロジェクト: ruby64/Tb
from Gaudi.Configuration import *
from Configurables import Kepler

from Configurables import TbEventBuilder

TbEventBuilder().MinPlanesWithHits = 2
TbEventBuilder().PrintFreq = 100
TbEventBuilder().Monitoring = True
Kepler().EvtMax = 5000

Kepler(
).AlignmentFile = "eos/lhcb/testbeam/velo/timepix3/Dec2014/RootFiles/Run4012/Conditions/Alignment4012.dat"

from Configurables import TbTracking

TbTracking().PrintConfiguration = True
TbTracking().MinNClusters = 3

TbTracking().SearchRadius = 0.5
TbTracking().VolumeAngle = 0.2
TbTracking().TimeWindow = 75
TbTracking().Monitoring = False
TbTracking().SearchPlanes = [2, 3]
TbTracking().MaskedPlanes = []

from Configurables import TbTrackPlots
コード例 #12
0
TbAlignment().DoFs = [1, 1, 0, 1, 1, 1]
TbAlignment().ParametersResidualsXY = ("", -0.8, 0.8, 200)
TbAlignment().MaskedPlanes = []
TbAlignment().PrintConfiguration = True

from Configurables import TbClusterPlots
TbClusterPlots().ParametersDifferenceRot = ("", -.5, 0.5, 200)
TbClusterPlots().ParametersDifferenceXY = ("", -7, 7, 200)
TbClusterPlots().ParametersXY = ("", -1., 15, 280)
TbClusterPlots().ReferencePlane = 2
TbClusterPlots().FillComparisonPlots = True

from Configurables import TbTrackPlots, TbCombatBuilder, TbClustering, TbTracking
TbTrackPlots().ParametersResidualsXY = ("", -0.8, 0.8, 200)
seq = GaudiSequencer("Telescope")
seq.Members = [TbCombatBuilder(), TbClustering(), TbTracking(), TbAlignment()]

from Configurables import TbTracking
TbTracking().MaskedPlanes = []


def patch():
    from Configurables import TbTrackPlots, TbCombatBuilder, TbClustering, TbTracking
    seq.Members = [
        TbCombatBuilder(),
        TbClustering(),
        TbTracking(),
        TbAlignment()
    ]