cms-gem-daq-project / gem-plotting-tools

Repository for GEM commissioning plotting tools
GNU General Public License v3.0
1 stars 26 forks source link

New Features: Analyzing checkSbitMappingAndRate.py data #151

Closed bdorney closed 6 years ago

bdorney commented 6 years ago

Description

Work in progress, need to update documentation for sphinx.

Provides an analysis tool anaSBitMonitor.py that analyzes data taken with checkSbitMappingAndRate.py.

Additionally the chConfig.txt file created by anaUltraScurve.py and anaUltraThreshold.py will now confirm to the format given in trimChamberV3.py for VFAT3 (the user should supply the option --isVFAT3). The default preserves the VFAT2 format. Change is backwards compatible.

checkSbitMappingAndRate.py

Relevant help menu parameters are:

(py2.7) [dorney@gem904daq01]~/scratch0/CMS_GEM/CMS_GEM_DAQ% anaSBitMonitor.py -h
Usage: anaSBitMonitor.py [options]

Options:
  -h, --help            show this help message and exit
  -d, --debug           print extra debugging information
  -i filename, --infilename=filename
                        Specify Input Filename
  --checkInvalid        If provided invalid sbits will be considered

Example call, considering only valid sbits:

anaSBitMonitor.py -i SBitData.root

And if wanting to also consider sbits marked as invalid:

anaSBitMonitor.py -i SBitData.root --checkInvalid

Using the --debug tab will print a table displaying the sbit's observed by the CTP7's SBIT_MONITOR for all events.

Additionally it will print a table at the end of the analysis which will show the (vfat,sbit) pair in which a particular sbit was observed and that sbit did not match the channel being pulsed and the number of times a mismatch was observed. The correct mapping should always follow sbit = floor(chan/2). Example:

vfatN vfatSBIT N_Mismatches
19 5 1
23 16 806
23 17 733
23 18 37
23 19 1453
23 20 43
23 22 127
23 23 14753
23 63 6983
4 49 2
4 52 1
4 54 1
4 56 3
4 57 2
4 58 6
4 60 3
4 61 1
4 62 4
4 63 2
6 32 42204
6 27 2294
6 24 13274
6 25 1888
6 26 12657
6 63 7125
6 28 7459
6 29 68
6 30 2775
6 31 4106
7 24 50400
7 56 50400

Types of changes

Motivation and Context

Need a tool to analyze data taken with checkSbitMappingAndRate.py.

How Has This Been Tested?

Ran the analysis.

Screenshots (if appropriate):

Plot of sbit mapping when no pulses sent: sbitsize_validsbits_caldisabled_0hz Plot of sbit mapping when calpulse is used: sbitsize_validsbits_calenabled_sumofallrates

Plot of rate observed vs. rate pulsed (as we can see the OH see's nothing...not a SW bug, but FW): rateobservedvsratepulsed_validsbits

Plot of VFAT pulsed vs. VFAT observed: vfatobsvsvfatpulsed_validsbits_calenabled_sumofallrates

Additional plots are made, but these are the most important.

Checklist: