-
Notifications
You must be signed in to change notification settings - Fork 17
[feature] Automatically convert xdaq raw data into a gemTreeStructure format #39
Comments
This really should not belong in |
not sure if everyone gets automatically pinged - but I added more info the issue description |
Hi @bdorney, in the meeting today you were suggesting some techniques to take the meta data required for the gemTreeTranslator. Can you give some more details here please? @ram1123 is looking into using a python script to take some metadata but I am not sure if it is the correct ones, from chatting to you this morning. |
|
Currently we are filling the following to the output tree. Please correct us if there is anything wrong.
Questions:
|
Issue moved to correct repo |
OK, there are some corrections below, but there seems to be a fundamental misunderstanding about this translation.
Yes
No, every entry in the
No,
Maybe, @mexanick?
No,
This is expected to be the case
No, this should be the
Maybe, I don't know what the distinction between
Possibly, but probably will be redefined, is there simply a field
No, this will come from the same as
Not likely to be stored in the data format, must come from meta-data
Not likely to be stored in the data format, must come from meta-data
Maybe, @mexanick?
Depends on the scan type, but generally as below, out of all the events at the scan point of interest:
You should look at the code, but I would use |
In addition to the responses from @jsturdy where pretty conclusive but to be more specific:
The meaning of the cms-gem-daq-project/cmsgemos#230 As you can see these values of |
All assumptions made by @jsturdy are correct.
There's no difference in meaning, just different field names used between V2 and V3 VFATs and I'm sticking to VFAT manual on this. |
And for the final tree, the one VFAT should be an Event or each trigger channel should be a separate event? |
I don't understand the question; can you elaborate? |
See updated discussion on the meaning of the |
Hi @bdorney , @jsturdy , @mexanick I am analyzing the root file
I was just checking the two variables
What I expected is that for each GEB, Pos should vary from 0 to 23. But, it seems random. And I could not find a pattern. Is this expected? or it's the issue of the previous step that gives the |
What's the goal of using this particular file and not say, the newer ones I've pointed you and @BenjaminRS to? |
Hi @bdorney , I tried to look at the new root file (run000214_allLumi_index000000.raw.root ) that you provided. By looking at this I observe following things:
|
But did you try with run000217 that I circulated earlier this week? |
@ram1123, you should definitely use only the latest run, as until that run, there were various issues with the data taking that could have had some impact on the underlying data (though I wouldn't expect anything so drastic as what you report below)
This sounds like an issue unpacking, which may be the case as per the note above.
This sounds like an unpacking error, also, for the data that @bdorney is providing, I think you should only expect 17 VFATs. (edited) |
Thanks @bdorney and @jsturdy . Now I tried to see the behaviour of two runs: For
For
[1]
[2]
|
I forgot to mention one more thing in the Run000217 the order in which VFAT appears varies from event to event like below[1]. Is this expected? [1]
|
Check the associate elog for this run: http://cmsonline.cern.ch/cms-elog/1088166 Also consider what
You'll need to provide more debugging info. It's not clear how you obtained this output. e.g. what was your input, what are you doing, what code is being used, etc... |
I edited my earlier message as I had left out a key word, but at the raw level, there is no expectation of VFATs coming "in order" (nor GEBs, for that matter, though I do believe that the AMC payloads will be in order). |
The order of VFAT packets is arbitrary, there's no guarantee that it will be preserved from one event to another. Moreover, in case of zero-suppression there's no fixed number of the VFAT packets (i.e. if a chip didn't have a hit, it won't appear in the data stream). So the behavior you observe is the correct one. |
Yes. Here I am looping over entries in the tree. And "local" is just my convention for just checking the value of the VFAT position. |
From @jsturdy and @mexanick, response it is now clear that this behavirour is expected. |
Hi all - I updated the code with a commit here. However there are still two points I need to work on:
|
Brief summary of issue
Need to create a daemon which runs a script that takes the raw format from xdaq (*.dat) for all shelves slots and links, unpacks the data and for each ohkey() converts it into a gemTreeStructure format.
Types of issue
Expected Behavior
The idea is for a new executable,
gemTreeTranslator
, to use the GEMUnpacker.cc in a similar fashion to gemTreeReader and create a set of TFiles (one per AMC/OH pair).It will fill the following branches:
the following branches:
Brian mentions that "The rest of the parameters could be filled with dummy values or obtained from a DB query of the conditions/configuration DB at runtime"
Current Behavior
Does not currently exist.
Context
Should be done within approximately 1 week.
The text was updated successfully, but these errors were encountered: