Tobias Stockmanns Steps necessary Example of Mixing Signal Event Signal and Background Events Digi Data randomized Digi Data Stream Digi Index Same color same ID: 806253
Download The PPT/PDF document "Time Based S imulation A status report" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Time Based Simulation
A status report
|
Tobias Stockmanns
Slide2Steps necessary
Slide3Example of Mixing
Signal Event
Signal
and
Background Events
Slide4Digi Data randomized
Digi
Data Stream
Digi
Index
Same
color
= same
event
Slide5Digi Data randomized
TimeStamp
of
Digi
vs
Index
Digi
Index
Time
Stamp
[
ns
]
Slide6Digi Data Sorted
Digi
Data Stream
Digi
Index
Same
color
= same
event
Slide7Digi Data Sorted
Digi
Index
Time
Stamp
[
ns
]
TimeStamp
of
Digi
vs
Index after
sorting
Slide8Event Time
Signal Event
Signal
and
Background Events
Slide9Digi Time
MVD
Digi
Pixel Time
Slide10Reco Hit Time
Reco
Hit Time
Slide11Track Time
Riemann Track Time
Slide12Three new classes in STT
Three new classes in STT:
PndSttHitRingSorter
PndSttHitSorterTask
PndSttHitWriteoutBuffer
Just take the examples from SDS
Give them a new name
Replace
PndSdsDigiPixel
with PndSttHit
Add them to CMakeLists.txt and
LinkDef
file
Slide13Modification of Data Class
Modification of PndSttHit-Class
New method
bool
equal (
FairTimeStamp
* data
Two detector elements are equal if they are coming from the same tube
New method
bool
operator<(
const
PndSttHit
&
myHit
)
const
Necessary for
std
::maps
New method
friend
std
::
ostream
& operator<< (
std
::
ostream
& out,
PndSttHit
&
digi
)
Should be in every data class
Slide14Modification of Data Class
Modifications of PndSttHit.cxx
Saving drift time p as
TimeStamp
in constructor via
SetTimeStamp
(p);
Slide15Modifications PndSttHitProducerRealFull
Modifications
to
PndSttHitProducerRealFull.h
Add
new
variable
fTimeOrderedDigi
Add new
method
RunTimeBased
() {
fTimeOrderedDigi
=
kTRUE
;}
Replace
TClonesArray
*
fHitArray
;
with
PndSttHitWriteoutBuffer
*
fHitArray
;
Slide16Modifications PndSttHitProducerRealFull
Modifications
to
PndSttHitProcuerRealFull.cxx
Replace
fHitArray
= new
TClonesArray
("
PndSttHit
");
ioman
-
>Register("
STTHit
","STT",
fHitArray
,
fPersistence
);
with
fDataBuffer
= new
PndSttHitWriteoutBuffer
("
STTHit
", "STT",
fPersistence
);
fDataBuffer
= (
PndSttHitWriteoutBuffer
*)
ioman
-
>
RegisterWriteoutBuffer
("
STTHit
",
fDataBuffer
);
fDataBuffer
->
ActivateBuffering
(
fTimeOrderedDigi
);
Slide17Modifications PndSttHitProducerRealFull
Replace
PndSttHit
*
hitnew
= new(
clref
[size])
PndSttHit
(
detID
,
tubeID
,
iPoint
,
pos
,
dpos
,
timestamp,
rsim
,
closestDistanceError
,
depcharge
);
with
PndSttHit
*
hitnew
= new
PndSttHit
(
detID
,
tubeID
,
iPoint
,
pos
,
dpos
, p,
rsim
,
closestDistanceError
,
depcharge
);
fDataBuffer
->
FillNewData
(
hitnew
,
activetime
);
Slide18Modifications to
the Digi Macro
Modifications
to
the
digi
macro:
PndSttHitSorterTask
*
sttSorter
= new
PndSttHitSorterTask
();
fRun
->
AddTask
(
sttSorter
);
Thats
it!
With
these
modifications
the
stt
data
is
time
ordered
and
can
be
used
for
(
new
)
reconstruction
algorithms
.
Time
needed
3 h.
Slide19Time Based Simulation STT
x
MVD Points
•
STT Points
Slide20Summary
Framework code for time ordered simulation finished (since December)
Easy to use
Fast to implement
Without
the flag
RunTimeBased
() the code behaves exactly as before
Implemented in MVD and STT
Waiting for users to test it and start using it for reconstruction of data as it is needed later for the experiment