< How to update the distribution | Index
Use uproot
- pip install uproot [--upgrade] --user
- the following examples has been worked out for LEM data (using PostPileUp histograms 21-28
- data = uproot.open(filename)
- header = data['RunHeader'].members['fFolders']
- header[0:6] are strings; eg header[0][0][:] is '000 - Version: git-sha: dae9ef0ffba4 -@0', whereas headr[6] contains strings of distinct scaler counts from [6][0][:] to [6][7][:]
- see musrfit/CCO/run-09-24/LEM/underdoped/Analysis/muheader_root.py
- header[0] is general; header[1] is histo info (t0 and length); [3:5] are cryo, magnet and beamline names; [5] is beamline info, Temperatures [128:132]; [6] is sums
- histoLeftPPC = data['histos'].members["fFolders"][0].members['fFolders'][8].counts()
- histoLeftPPC = data['histos'].members["fFolders"][0].members['fFolders'][8].counts()
- Now offending limit is n<nhisto
- for LEM use 0-7 and always switch to 8-15? wait for Zaher's answer
LEM replicated detectors 20-27 (as seen in musrfit) are actually histo(8)-histo(1) in the root file
- histo(8) - histo(0), 9-1 and so on are zero based decay functions starting from ~12 whereas e-g 9-0 ranges from 30 to -10 counts
- This confirms the assignment 0 -> 8, 1 -> 9 etc, but the difference is not a smooth function, i.e. 8 is not 0 minus a function. What is it then?
• for LEM use 0-7 as indices and switch automatically to 8-15 if they exist
< How to update the distribution | Index