o make LUT creation paralellisable
- separate initialisation for LUT map in phi bins
- add functions to create LUT only for 1 phi bin
- add function to merge files with separate phi bins
-ToyMCTrack: added two new tclonesarray of AliCluster for ITS and TRD space points
-ToyMCEventGenerator: added generation of clusters for ITS (upgrade layout) and TRD (current layout)
-ToyMCEventGeneratorSimple: added possibility (::SetParametersToyGen(const Char_t* filename)) to assign file containing histograms of pt, eta and multiplicity distribution (root file containing histograms TH1F hPt, TH1F hEta, TH1I hMult) to use for generation of tracks
Next Steps for tracking from seed of associated clusters:
- Cluster association to track by utilizing AliTPCtrackerRow::FindNearest2
- Implementation of GetSector for AliExternalTrackParam (needed for looking in correct sector for clusters)
- Counting of associated clusters per original track (output in debug streamer)
- Adding drawing option in QA macro
- TODO:
- Correct setting of AliTPCReconstructor?
- Define Search Road (how?)
First Steps for tracking from seed of associated clusters:
- GetFittedTrackFromSeedAllClusters gets seed and performs simple tracking
- go row by row and look for clusters in this row
- TODO: cluster association and selection
Implement AliTPCtracker::Clusters2Tracks() for all clusters in given time frame:
- add setters of inner and outer sectors AliTPCtrackerSector in AliTPCtracker.h
- tracking for all clusters in one time frame (given by nevts or input file)
- TODO:
- check tracking configuration
- add clusters and original tracks to debug output (how?)
miweber [Sun, 30 Jun 2013 11:03:09 +0000 (11:03 +0000)]
First attempt to implement tracking from all clusters
- Filling arrays for inner and outer sectors
- Function for track fitting from given seeds (not completed)
- Use AliTPCtracker to associate clusters to tracks (not completed, how to do?)
hljunggr [Fri, 28 Jun 2013 16:11:10 +0000 (16:11 +0000)]
added method RunSimulation2(const Bool_t equalspacing, const Int_t type, const Int_t nevents, const Int_t ntracks) which makes it possible to run both the simple toy sim and use ESD input either with equal bunch spacing or train structure where the number of events per crossing is drawn from a poisson dist.
equalSpacing true (false) = fixed freq (bunch train)
type == 0: toy
type==1: esd input
hljunggr [Thu, 27 Jun 2013 06:58:13 +0000 (06:58 +0000)]
added method RunSimulationBunchTrain(constInt_t nevents,const Int_t ntracks) to simulate bunch train structure. So far, all parameters are hardcoded. A bunch spacing of 50e-9, abort gap of 3 microseconds and even train spacing is used. Number of collisions in one crossing drawn from poisson dist.
This is only implemented for the simple toy event generation so far (no ESDs yet).
hljunggr [Thu, 27 Jun 2013 06:47:51 +0000 (06:47 +0000)]
Visualization class. To use
AliToyMCDrawer* draw = new AliToyMCDrawer()
draw->SetFileName("path/to/toyMC.root")
draw->FillEventArray(Int_t centerEventNumber)
or
draw->FillEventArray(Double_t time)
to display with a certain event in the center or at a certain time
draw->DrawEvents(Bool_t both, Bool_t before)
where "both" will display events before and after the middle event and
before will show also events before (after) the middle event if true (false)
when "both" is false
hljunggr [Wed, 26 Jun 2013 12:25:28 +0000 (12:25 +0000)]
Added possibility to use ESD input
to use:
root -l macros/{loadlibs.C,ConfigOCDB.C}
AliToyMCEventGeneratorSimple s
s.SetInputESD("path/to/root_archive.zip")
s.RunSimulationESD(nevents, ntracks)
nevents sets the number of events with ntracks!=0 to be used
ntracks sets the maximum number of tracks in each event to be used
wiechula [Thu, 13 Jun 2013 15:51:15 +0000 (15:51 +0000)]
o Update treatment of AliTrackPoint creation from AliTPCclusterMI
o Store AliTPCSpaceCharge3D directly in a file to not initialise
the maps over and over again which is time consuming
o Update treatment of cluster and distorted cluster treatment
by creating many space spoint and interpolating to the center
of the pad row for l x-y and l x-z
o Proper settings for the pad coordinates of the clusters
o Update macro for doing the reconstruction
miweber [Sun, 9 Jun 2013 11:14:11 +0000 (11:14 +0000)]
1) committing obsolete lines for OCDB in AliToyMCEventGenerator.cxx (to be checked) 2) remove toyMC.C (first version of reconstruction macro) 3) adding seedToInteraction macro (first version, to be improved)
mivanov [Thu, 6 Jun 2013 05:53:19 +0000 (05:53 +0000)]
for Jens and Martin
Continuous readout toy simulation:
loadlibs.C //modified version of the one used for GEMtest code. I haven't looked into this so it probably contains a lot of stuff that is not needed
ToyMCTrack, ToyMCEvent //classes for storing event and track parameters
ToyMCEventGenerator //base class for event generators, contains DistortTrack method to distort track using method borrowed from AliTPCCorrection
ToyMCEventGeneratorSimple //simple first MC event generator, borrowing from Marians macro. Inherits from ToyMCEventGenerator to get DistortTrack method. Generate(Double_t time) generates and returns an event at time time
makeTree.C //short macro to generate events from a poisson distr and storing in a ROOT tree.
to run : root -l loadlibs.C
.L makeTree.C+
makeTree(Double_t collFreq/*kHz*/, Double_t bunchFreq/*MHz*/, Int_t nEvents)