Difference: TbUT (1 vs. 25)

Revision 252016-10-31 - StevenBlusk

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 18 to 18
 git clone https://github.com/yabezsh/Tb.git make -j4 make install
Added:
>
>
  • Make sure, that in your config file (in Tb/.git), you have a line that has a URL with your username included:
         url = https://sblusk@github.com/yabezsh/Tb.git
     
 

Setup

Line: 25 to 29
 
  • After each time you open a new terminal
    SetupProject LHCb
    
    
Added:
>
>
cd ~/KeplerDev_v3r0
 ./run bash source /afs/cern.ch/project/eos/installation/lhcb/etc/setup.sh eosmount ~/eos
Line: 42 to 47
 outputPath = "$KEPLERROOT/eos_"+str(sigFile.split('-')[3])+"/lhcb/testbeam/ut/TemporaryData/May2016/DQMTest" to the folder where you want to have your outputs.
Changed:
<
<
After that you can run:
>
>
After that you can run (Oct 2016 data example):
python -u RunAnalysis.py --board A3_Lower  --PA TTV2_01 --DUTRun 2259 --mode local --mask 1 

Here, a May 2016 data example:

 
python -u RunAnalysis.py --board F1 --PA FanUp --DUTRun 1073 --mode local --evts 100000
Changed:
<
<
It will produce all plots in "outputPath"/F1/FanUp/output_1073/Plots/
>
>
The latter example will produce all plots in "outputPath"/F1/FanUp/output_1073/Plots/
 If you want to update plots without reproducing of all data analyze you can add flag "--onlyPlots 1" If you want to run over all events in run just take away the flag "--evts" (usually 1000000 events; it's better to go over all of them to see nice plots). You can run it in terminal (use "--mode local") or in batch ("--mode batch").
Line: 157 to 167
 
Thresholds
Added:
>
>

Operations with the git repository

  • To update your local copy with the latest version in the git repository (you will need a git account)
git pull

  • To make modifications, you will need to be added to the list of users allowed to modify (contact Iaroslava). After you make your changes:
git add    (w/o brackets) - designate which files will be sent to git repo (this is for new or modified files)
git commit -m"Add a comment here about your changes"
git push     (this pushes the commits to the repo... will prompt you for your password)

* To get a completely fresh working copy, see instructions under Installation, above.

 -- AdamMateuszDendek - 2015-08-03

META FILEATTACHMENT attachment="Thresholds.png" attr="" comment="" date="1440590387" name="Thresholds.png" path="Thresholds.png" size="28440" user="adendek" version="1"

Revision 242016-10-22 - ChristopherBetancourt1

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 8 to 8
 

Contact persons

Changed:
<
<
Adam Dendek Mail
>
>
Christopher Betancourt Mail, Iaroslava Bezshyiko Mail, Steven Blusk Mail, Adam Dendek Mail
 
Changed:
<
<

Setup

Follow these steps to setup TbUT in your working directory

  • Setup project and get source code from LHCb's SVN repository
>
>

Installation

  • To install (you need to be in the lhcb computing group on lxplus):
 
lb-dev Kepler v3r0
cd ./KeplerDev_v3r0

Changed:
<
<
svn co svn+ssh://svn.cern.ch/reps/lhcb/Kepler/trunk/Tb/
>
>
git clone https://github.com/yabezsh/Tb.git make -j4 make install
 
Changed:
<
<
  • Compile the source code
    make -j20
    make install
     
>
>

Setup

 
Deleted:
<
<
  • Mount EOS
    eosmount ~/eos
       
 
Changed:
<
<
  • Prepare the running environment
>
>
  • After each time you open a new terminal
 

Added:
>
>
SetupProject LHCb
 ./run bash
Added:
>
>
source /afs/cern.ch/project/eos/installation/lhcb/etc/setup.sh eosmount ~/eos cd Tb/
 
Added:
>
>
  • To run over the data from May testbeam: For tests, please, go to Analysys.py and Analysis_onlyPlots.py and change the line
outputPath = "$KEPLERROOT/eos_"+str(sigFile.split('-')[3])+"/lhcb/testbeam/ut/TemporaryData/May2016/DQMTest" to the folder where you want to have your outputs.
 
Deleted:
<
<

Running the TbUT software

The TbUT software can be run in two modes, Pedestal and Run. The description below contains instructions on how to run TbUT in standalone mode (no other Kepler stuff). You should also look at the Tools for the LHCb Software Environment TWiki page for a better understanding how to run Gaudi-like application.

Pedestal mode -- computing the pedestals

  • The aim of the pedestal training is to calculate the pedestals values, which will then be used in Run mode in order to subtract the pedestal from the raw data during execution of the Pedestal Subtraction algorithm.
  • In this mode only 2 algorithms are executed : Raw Data Reader and Pedestal Subtractor for more detailed description of this algorithms look to the developers section.
  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTPedestal.py ):
    option name brief description
    app.inputData String, contains path to the input data (you have to set this, see NOTE below)
    app.isAType Boolean, choose if sensor is type A (true) or D (false)
    app.eventMax Integer, number of event to process
    app.app.pedestaOutputData String, contains path to the output file (contains pedestal values in a flat list).

  • NOTE: The input files are located on EOS. Currently, you either need to copy files from EOS to a local directory (you will run out of space fast) or you can mount eos temporarily
    • To mount EOS:
       eosmount ~/eos 
      If you do this, please add
      eosumount ~/eos
      to your ~/.logout file.
    • July 2015 testbeam files for board D9, for example, are located here: eos/lhcb/testbeam/ut/OfficialData/July2015/BoardD9/RawData/*.dat

  • Run the TbUT in Pedestal mode:
       cd Tb/TbUT
       gaudirun.py options/TbUTPedestal.py
        
  • After the execution of the application, the output file contains pedestal values, one number per channel is output. The name of the file is specified in the options file ( line app.pedestalOutputData )

Run mode

  • In run mode the TbUT performs the whole processing of testbeam data.
  • In this mode all processing algorithms are executed.
    algorithm brief description
    Raw Data Reader Reads raw data from the DUT (Mamba board output) and saves the output into the TES
    Pedestal Subtractor Gets raw data from the TES, removes the calculated pedestals from the Pedestal mode run, and stores the output into theTES
    Common Mode Subtractor (CMS) Gets data after Pedestal Subtraction; removes the common mode noise, a single value per 32 Beetle channels (mean value of ADC); save the output into the TES
    Cluster Creator Gets data after CMS, create clusters and saves it information in the TES

Beyond the listed algorithms, a set of corresponding monitoring algorithms has been implemented. The detailed descriptions of processing and monitoring algorithms see developers section.

  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTRun.py ):
    option name brief description
    app.inputData type of string, contains path to the input data (use an absolute path, e.g. "/afs/cern.ch/user/s/sblusk/eos/lhcb/testbeam/ut/..../filename.dat"
    app.isAType type of Boolean, choose if sensor is type A (true) or D (false)
    app..sensorType type of String, choose if sensor is P-type ("PType") or N-type ("NType") or both - calibration run ("Both")
    app.eventMax type of integer, number of event to process
    app.pedestalInputData type of string, contains path to pedestal file (created during execution TbUT in Pedestal mode)
    app.eventNumberDisplay type of integer, informs how many event snapshots will be saved (see section exemplary outputs )

  • Running TbUT in Run mode:
    cd Tb/TbUT
    gaudirun.py options/TbUTRun.py
        
  • This needs to be run twice in order to properly determine clusters

DUT and Telescope analysis

 
Changed:
<
<
  • These steps require running with a ROOT version 5, so it is helpful to type the following before running the combination of DUT and telescope data:
LbLogin -c x86_64-slc6-gcc48-opt
SetupProject LHCb v36r2
This ensures the proper root version will be used
  • After computing pedestal and CMS, the data from the DUT can be combined with the information from the telescope. Once in the Tb/TbUT directory, the script for appending the DUT data with the telescope data can be run by doing the following:
>
>

Running the TbUT software

For tests, please, go to Analysys.py and Analysis_onlyPlots.py and change the line outputPath = "$KEPLERROOT/eos_"+str(sigFile.split('-')[3])+"/lhcb/testbeam/ut/TemporaryData/May2016/DQMTest" to the folder where you want to have your outputs.
 
Added:
>
>
After that you can run:
 

Changed:
<
<
cd scripts/AddTrigTracks make ./combDUTwithTrack -i ~/inputDUT_Tuple.root -t ~/eos/lhcb/testbeam/ut/TelescopeData/July2016/RootFiles/RunXXXX/Output/Kepler-tuple.root -n ~/inputDUT_noise.root -o outputFile.root
>
>
python -u RunAnalysis.py --board F1 --PA FanUp --DUTRun 1073 --mode local --evts 100000
 
Deleted:
<
<
where inputDUT_Tuple.root is the file resulting from the the run mode, inputDUT_noise.root is the file containing the noise information (nominally the same as inputDUT_Tuple.root but without the 'Tuple' appendage), ~/Kepler-tuple.root is the data from the telescope, and outputFile.root is the desired output file name.
 
Changed:
<
<
  • Once the track information has been appended to the DUT tuple file, the final set part of the analysis can be run. This includes calculation of various quantities (efficiency, correlation between DUT X and Track X, etc.).
  • Begin with supplying the output file from the previous step into ~/TbUT/scripts/ClusterWithTrackAna.h. This should be a string called "filename".
  • In ~Tb/TbUT/scripts/AnalysisBase_Inputs.h, one needs to specify various parameters given below
    parameter value description
    m_board "M1", "M3" or "M4" Board type
    m_bias e.g. 200 Bias voltage in volts
    m_sector "PA" or "C" Pitch adapter region or Central region
    m_scanType "Bias" or "Angle" Defines if this is a bias scan run or and angle scan run
    nChan e.g. 512 The total number of channels
    stripPitch e.g. 0.190 The strip pitch in mm
    isPtype true or false where this is n-in-p (p type) or p-in-n (n type)
>
>
It will produce all plots in "outputPath"/F1/FanUp/output_1073/Plots/ If you want to update plots without reproducing of all data analyze you can add flag "--onlyPlots 1" If you want to run over all events in run just take away the flag "--evts" (usually 1000000 events; it's better to go over all of them to see nice plots). You can run it in terminal (use "--mode local") or in batch ("--mode batch").
 
Changed:
<
<

Analyze DUT data with tracking

  • The final scripts can now be run using the following (if you are in ~Tb/TbUT/scripts/)
root [0]   .L TBrunClusterWithTrackAna.C 
root [1]   TBrunClusterWithTrackAna("the/full/path/Run_Angle_Scan-M1-FanIn-88-15046_Tuple_Tracks.root","M1","2","300")
The arguments of TBrunClusterWithTrackAna are the filename, the sensor ID, the sector and the bias voltage. A ROOT file will be written to the location specified in "AnalysisBase_Inputs.h" (currently $HOME/lhcb/testbeam/root_files/ )

* A pair of "summary" plots can then be produced using the *monitorPlots.C" macro:

root [0]   .L monitorPlots.C 
root [1]   monitorPlots("M1","2","300")     
>
>
If you will not specify a run number ("--DUTRun 1073") it will start to process all runs from testbeam data sheet ( https://docs.google.com/spreadsheets/d/1xYgpb3AxP4JJ7Dkx1YeNV75q0nNxwPrvBhoMgyBD0N4/edit )
  Two canvases will be produced, one with Alignment information and one with Performance information. They should be hecked by the user. Below is an example for Run 15046, sensor M1, 300 V bias, 0 degree rotation angle

Revision 232016-05-13 - UTTestbeamService

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 121 to 121
 
stripPitch e.g. 0.190 The strip pitch in mm
isPtype true or false where this is n-in-p (p type) or p-in-n (n type)
Added:
>
>

Analyze DUT data with tracking

 
  • The final scripts can now be run using the following (if you are in ~Tb/TbUT/scripts/)

Changed:
<
<
root runClusterWithTrackAna.C
>
>
root [0] .L TBrunClusterWithTrackAna.C root [1] TBrunClusterWithTrackAna("the/full/path/Run_Angle_Scan-M1-FanIn-88-15046_Tuple_Tracks.root","M1","2","300") The arguments of TBrunClusterWithTrackAna are the filename, the sensor ID, the sector and the bias voltage. A ROOT file will be written to the location specified in "AnalysisBase_Inputs.h" (currently $HOME/lhcb/testbeam/root_files/ )

* A pair of "summary" plots can then be produced using the *monitorPlots.C" macro:

root [0]   .L monitorPlots.C 
root [1]   monitorPlots("M1","2","300")     

 
Deleted:
<
<
Which will produce a series of plots to be checked by the user. Below is an example of the correlation of DUT X vs. Track X
 
Changed:
<
<
Thresholds
>
>
Two canvases will be produced, one with Alignment information and one with Performance information. They should be hecked by the user. Below is an example for Run 15046, sensor M1, 300 V bias, 0 degree rotation angle

  • Alignment Plots

Thresholds

  • Performance Plots
 
Added:
>
>
Thresholds
 

Known issues

  • The TbUT cannot read eos files. *workaround: copy analyzed file into your work directory or use eosmount as shown above.
Line: 231 to 250
 
META FILEATTACHMENT attachment="corr_example.png" attr="" comment="Example plots from runClusterWithTrackAna.C" date="1462858780" name="corr_example.png" path="corr_example.png" size="4408" user="cbetanco" version="1"
META FILEATTACHMENT attachment="profile_example.png" attr="" comment="Example plots from runClusterWithTrackAna.C" date="1462858806" name="profile_example.png" path="profile_example.png" size="872" user="cbetanco" version="1"
META FILEATTACHMENT attachment="res_example.png" attr="" comment="Example plots from runClusterWithTrackAna.C" date="1462858835" name="res_example.png" path="res_example.png" size="865" user="cbetanco" version="1"
Added:
>
>
META FILEATTACHMENT attachment="AlignmentPlots_M1_s2_vb300.png" attr="" comment="" date="1463170798" name="AlignmentPlots_M1_s2_vb300.png" path="AlignmentPlots_M1_s2_vb300.png" size="43466" user="lhcbut" version="1"
META FILEATTACHMENT attachment="PerformancePlots_M1_s2_vb300.png" attr="" comment="" date="1463170798" name="PerformancePlots_M1_s2_vb300.png" path="PerformancePlots_M1_s2_vb300.png" size="62195" user="lhcbut" version="1"

Revision 222016-05-11 - StevenBlusk

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 77 to 77
 
Changed:
<
<
app.inputData type of string, contains path to the input data
>
>
app.inputData type of string, contains path to the input data (use an absolute path, e.g. "/afs/cern.ch/user/s/sblusk/eos/lhcb/testbeam/ut/..../filename.dat"
 
app.isAType type of Boolean, choose if sensor is type A (true) or D (false)
app..sensorType type of String, choose if sensor is P-type ("PType") or N-type ("NType") or both - calibration run ("Both")
app.eventMax type of integer, number of event to process

Revision 212016-05-10 - ChristopherBetancourt1

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 109 to 109
  where inputDUT_Tuple.root is the file resulting from the the run mode, inputDUT_noise.root is the file containing the noise information (nominally the same as inputDUT_Tuple.root but without the 'Tuple' appendage), ~/Kepler-tuple.root is the data from the telescope, and outputFile.root is the desired output file name.
Changed:
<
<
  • Once the track information has been appended to the DUT tuple file, the final set part of the analysis can be run. This includes calculation of various quantities (efficiency, correlation between DUT X and Track X, etc.). Begin with supplying the output file from the previous step into ~/TbUT/scripts/ClusterWithTrackAna.h
>
>
  • Once the track information has been appended to the DUT tuple file, the final set part of the analysis can be run. This includes calculation of various quantities (efficiency, correlation between DUT X and Track X, etc.).
  • Begin with supplying the output file from the previous step into ~/TbUT/scripts/ClusterWithTrackAna.h. This should be a string called "filename".
 
  • In ~Tb/TbUT/scripts/AnalysisBase_Inputs.h, one needs to specify various parameters given below
    parameter value description
    m_board "M1", "M3" or "M4" Board type
Line: 124 to 125
 
root runClusterWithTrackAna.C 
Changed:
<
<
Which will produce a series of plots to be checked by the user.
>
>
Which will produce a series of plots to be checked by the user. Below is an example of the correlation of DUT X vs. Track X

Thresholds
 

Known issues

  • The TbUT cannot read eos files. *workaround: copy analyzed file into your work directory or use eosmount as shown above.
Line: 157 to 161
 

TbUT high level architecture

Changed:
<
<
TbUT high Level architecture
>
>
TbUT high Level architecture
 

Description of the algorithms

Line: 223 to 227
 
META FILEATTACHMENT attachment="Thresholds.png" attr="" comment="" date="1440590387" name="Thresholds.png" path="Thresholds.png" size="28440" user="adendek" version="1"
META FILEATTACHMENT attachment="TbUT_Architecture.png" attr="" comment="TbUT high level architecture" date="1440606404" name="TbUT_Architecture.png" path="TbUT_Architecture.png" size="106137" user="adendek" version="1"
META FILEATTACHMENT attachment="Pedestal_Subtrator.png" attr="" comment="Pedestal Subtractor Data Flow" date="1440609703" name="Pedestal_Subtrator.png" path="Pedestal_Subtrator.png" size="55020" user="adendek" version="1"
Added:
>
>
META FILEATTACHMENT attachment="Landau_example.png" attr="" comment="Example plots from runClusterWithTrackAna.C" date="1462858639" name="Landau_example.png" path="Landau_example.png" size="915" user="cbetanco" version="1"
META FILEATTACHMENT attachment="corr_example.png" attr="" comment="Example plots from runClusterWithTrackAna.C" date="1462858780" name="corr_example.png" path="corr_example.png" size="4408" user="cbetanco" version="1"
META FILEATTACHMENT attachment="profile_example.png" attr="" comment="Example plots from runClusterWithTrackAna.C" date="1462858806" name="profile_example.png" path="profile_example.png" size="872" user="cbetanco" version="1"
META FILEATTACHMENT attachment="res_example.png" attr="" comment="Example plots from runClusterWithTrackAna.C" date="1462858835" name="res_example.png" path="res_example.png" size="865" user="cbetanco" version="1"

Revision 202016-05-10 - ChristopherBetancourt1

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 18 to 18
 
lb-dev Kepler v3r0
cd ./KeplerDev_v3r0

Changed:
<
<
svn co http://svn.cern.ch/guest/lhcb/Kepler/trunk/Tb
>
>
svn co svn+ssh://svn.cern.ch/reps/lhcb/Kepler/trunk/Tb/
 

  • Compile the source code

Revision 192016-05-07 - ScottEdwardEly

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 90 to 90
 cd Tb/TbUT gaudirun.py options/TbUTRun.py
Added:
>
>
  • This needs to be run twice in order to properly determine clusters
 

DUT and Telescope analysis

Revision 182016-05-05 - ChristopherBetancourt1

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 111 to 111
 
  • Once the track information has been appended to the DUT tuple file, the final set part of the analysis can be run. This includes calculation of various quantities (efficiency, correlation between DUT X and Track X, etc.). Begin with supplying the output file from the previous step into ~/TbUT/scripts/ClusterWithTrackAna.h
  • In ~Tb/TbUT/scripts/AnalysisBase_Inputs.h, one needs to specify various parameters given below
    parameter value description
Changed:
<
<
m_board "M1", "M3" or "M4" Board type
m_bias e.g. 200 Bias voltage in volts
| m_sector | "PA" or "C" | *Pitch adapter region or
>
>
m_board "M1", "M3" or "M4" Board type
m_bias e.g. 200 Bias voltage in volts
m_sector "PA" or "C" Pitch adapter region or Central region
m_scanType "Bias" or "Angle" Defines if this is a bias scan run or and angle scan run
nChan e.g. 512 The total number of channels
stripPitch e.g. 0.190 The strip pitch in mm
isPtype true or false where this is n-in-p (p type) or p-in-n (n type)
 
Deleted:
<
<
the bias voltage, angle, board number (M1, M3, or M4), sector (either PA for pitch adapter region or CENTER for the central region), and scan type (either Bias or Angle). Additional information can be supplied in this file, such as the strip pitch (should not have to change for a given sensor type), number of channels of the readout (nominally set to 512), and type of sensor (isPType = true for n-in-p sensors, false for p-in-n sensors).
 
  • The final scripts can now be run using the following (if you are in ~Tb/TbUT/scripts/)
root runClusterWithTrackAna.C 

Revision 172016-05-05 - ChristopherBetancourt1

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 93 to 93
 

DUT and Telescope analysis

Changed:
<
<
  • These steps require runnign with a ROOT version 5, so it is helpful to type the following before running the combination of DUT and telescope data:
>
>
  • These steps require running with a ROOT version 5, so it is helpful to type the following before running the combination of DUT and telescope data:
 
LbLogin -c x86_64-slc6-gcc48-opt
SetupProject LHCb v36r2

Line: 108 to 108
  where inputDUT_Tuple.root is the file resulting from the the run mode, inputDUT_noise.root is the file containing the noise information (nominally the same as inputDUT_Tuple.root but without the 'Tuple' appendage), ~/Kepler-tuple.root is the data from the telescope, and outputFile.root is the desired output file name.
Added:
>
>
  • Once the track information has been appended to the DUT tuple file, the final set part of the analysis can be run. This includes calculation of various quantities (efficiency, correlation between DUT X and Track X, etc.). Begin with supplying the output file from the previous step into ~/TbUT/scripts/ClusterWithTrackAna.h
  • In ~Tb/TbUT/scripts/AnalysisBase_Inputs.h, one needs to specify various parameters given below
    parameter value description
    m_board "M1", "M3" or "M4" Board type
    m_bias e.g. 200 Bias voltage in volts
    | m_sector | "PA" or "C" | *Pitch adapter region or

the bias voltage, angle, board number (M1, M3, or M4), sector (either PA for pitch adapter region or CENTER for the central region), and scan type (either Bias or Angle). Additional information can be supplied in this file, such as the strip pitch (should not have to change for a given sensor type), number of channels of the readout (nominally set to 512), and type of sensor (isPType = true for n-in-p sensors, false for p-in-n sensors).

  • The final scripts can now be run using the following (if you are in ~Tb/TbUT/scripts/)
root runClusterWithTrackAna.C 
Which will produce a series of plots to be checked by the user.
 

Known issues

  • The TbUT cannot read eos files. *workaround: copy analyzed file into your work directory or use eosmount as shown above.
  • TbUT (run mode) need to be executed twice to correct calculate noise and extract clusters.

Revision 162016-05-03 - ChristopherBetancourt1

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 106 to 106
 make ./combDUTwithTrack -i ~/inputDUT_Tuple.root -t ~/eos/lhcb/testbeam/ut/TelescopeData/July2016/RootFiles/RunXXXX/Output/Kepler-tuple.root -n ~/inputDUT_noise.root -o outputFile.root
Changed:
<
<
where inputDUT_Tuple.root is the file resulting from the
>
>
where inputDUT_Tuple.root is the file resulting from the the run mode, inputDUT_noise.root is the file containing the noise information (nominally the same as inputDUT_Tuple.root but without the 'Tuple' appendage), ~/Kepler-tuple.root is the data from the telescope, and outputFile.root is the desired output file name.
 

Known issues

  • The TbUT cannot read eos files. *workaround: copy analyzed file into your work directory or use eosmount as shown above.

Revision 152016-05-02 - ChristopherBetancourt1

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 91 to 91
 gaudirun.py options/TbUTRun.py
Added:
>
>

DUT and Telescope analysis

* These steps require runnign with a ROOT version 5, so it is helpful to type the following before running the combination of DUT and telescope data:

LbLogin -c x86_64-slc6-gcc48-opt
SetupProject LHCb v36r2
This ensures the proper root version will be used * After computing pedestal and CMS, the data from the DUT can be combined with the information from the telescope. Once in the Tb/TbUT directory, the script for appending the DUT data with the telescope data can be run by doing the following:

cd scripts/AddTrigTracks
make
./combDUTwithTrack -i ~/inputDUT_Tuple.root -t ~/eos/lhcb/testbeam/ut/TelescopeData/July2016/RootFiles/RunXXXX/Output/Kepler-tuple.root -n ~/inputDUT_noise.root -o outputFile.root
where inputDUT_Tuple.root is the file resulting from the
 

Known issues

  • The TbUT cannot read eos files. *workaround: copy analyzed file into your work directory or use eosmount as shown above.
  • TbUT (run mode) need to be executed twice to correct calculate noise and extract clusters.

Revision 142015-11-06 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 79 to 79
 
option name brief description
app.inputData type of string, contains path to the input data
app.isAType type of Boolean, choose if sensor is type A (true) or D (false)
Changed:
<
<
app.isPtype type of Boolean, choose if sensor is P-type (true) or N-type (false)
>
>
app..sensorType type of String, choose if sensor is P-type ("PType") or N-type ("NType") or both - calibration run ("Both")
 
app.eventMax type of integer, number of event to process
app.pedestalInputData type of string, contains path to pedestal file (created during execution TbUT in Pedestal mode)
app.eventNumberDisplay type of integer, informs how many event snapshots will be saved (see section exemplary outputs )

Revision 132015-11-05 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 79 to 79
 
option name brief description
app.inputData type of string, contains path to the input data
app.isAType type of Boolean, choose if sensor is type A (true) or D (false)
Added:
>
>
app.isPtype type of Boolean, choose if sensor is P-type (true) or N-type (false)
 
app.eventMax type of integer, number of event to process
app.pedestalInputData type of string, contains path to pedestal file (created during execution TbUT in Pedestal mode)
app.eventNumberDisplay type of integer, informs how many event snapshots will be saved (see section exemplary outputs )

Revision 122015-10-08 - PeterManning

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 12 to 12
 

Setup

Changed:
<
<
To setup the TbUT you just need to:
  • Setup project and get source code from LHCb's SVN repository (checkout the head of TbUT, TbKernel and TbEvent unless this TWiki specifies otherwise):
>
>
Follow these steps to setup TbUT in your working directory

  • Setup project and get source code from LHCb's SVN repository
 
lb-dev Kepler v3r0
cd ./KeplerDev_v3r0

Changed:
<
<
getpack Tb/TbUT getpack Tb/TbKernel getpack Tb/TbEvent
>
>
svn co http://svn.cern.ch/guest/lhcb/Kepler/trunk/Tb
 
Changed:
<
<
  • compile the source code
>
>
  • Compile the source code
 

Changed:
<
<
make -j10
>
>
make -j20 make install
 
Added:
>
>
  • Mount EOS
    eosmount ~/eos
       

  • Prepare the running environment
    ./run bash
       
 

Running the TbUT software

The TbUT software can be run in two modes, Pedestal and Run. The description below contains instructions on how to run TbUT in standalone mode (no other Kepler stuff). You should also look at the Tools for the LHCb Software Environment TWiki page for a better understanding how to run Gaudi-like application.
Line: 44 to 55
 
    • To mount EOS:
       eosmount ~/eos 
      If you do this, please add
      eosumount ~/eos
      to your ~/.logout file.
Added:
>
>
    • July 2015 testbeam files for board D9, for example, are located here: eos/lhcb/testbeam/ut/OfficialData/July2015/BoardD9/RawData/*.dat
 
  • Run the TbUT in Pedestal mode:
       cd Tb/TbUT
    
    
Changed:
<
<
lb-run Kepler v3r0 gaudirun.py options/TbUTPedestal.py
>
>
gaudirun.py options/TbUTPedestal.py
 
Changed:
<
<
  • After the execution of the application, the file contains pedestal values, one number per channel is output. The name of the file is specified in the options file ( line app.pedestalOutputData )
>
>
  • After the execution of the application, the output file contains pedestal values, one number per channel is output. The name of the file is specified in the options file ( line app.pedestalOutputData )
 

Run mode

  • In run mode the TbUT performs the whole processing of testbeam data.
Line: 74 to 86
 
  • Running TbUT in Run mode:
    
    
Changed:
<
<
go to Tb/TbUT lb-run Kepler v3r0 gaudirun.py options/TbUTRun.py
>
>
cd Tb/TbUT gaudirun.py options/TbUTRun.py
 

Known issues

Changed:
<
<
  • The TbUT cannot read eos files. *workaround: copy analysed file into your work directory.
  • TbUT (run mode) need to be executed twice to correct calculate noise and extract clusters.
>
>
  • The TbUT cannot read eos files. *workaround: copy analyzed file into your work directory or use eosmount as shown above.
  • TbUT (run mode) need to be executed twice to correct calculate noise and extract clusters.
 
  • The tools should inherit from GaudTool class.
  • The unit test have to be implemented

Revision 112015-10-02 - PeterManning

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->

Revision 102015-10-02 - PeterManning

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 13 to 13
 

Setup

To setup the TbUT you just need to:

Changed:
<
<
  • Setup project and get source code from LHCb's SVN repository:
>
>
  • Setup project and get source code from LHCb's SVN repository (checkout the head of TbUT, TbKernel and TbEvent unless this TWiki specifies otherwise):
 
lb-dev Kepler v3r0
cd ./KeplerDev_v3r0

Line: 33 to 35
 
  • In this mode only 2 algorithms are executed : Raw Data Reader and Pedestal Subtractor for more detailed description of this algorithms look to the developers section.
  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTPedestal.py ):
    option name brief description
Changed:
<
<
app.inputData type of string, contains path to the input data
app.isAType type of Boolean, choose if sensor is type A (true) or D (false)
app.eventMax type of integer, number of event to process
app.app.pedestaOutputData type of string, contains path to the output file ( contains pedestal values)
>
>
app.inputData String, contains path to the input data (you have to set this, see NOTE below)
app.isAType Boolean, choose if sensor is type A (true) or D (false)
app.eventMax Integer, number of event to process
app.app.pedestaOutputData String, contains path to the output file (contains pedestal values in a flat list).

  • NOTE: The input files are located on EOS. Currently, you either need to copy files from EOS to a local directory (you will run out of space fast) or you can mount eos temporarily
    • To mount EOS:
       eosmount ~/eos 
      If you do this, please add
      eosumount ~/eos
      to your ~/.logout file.
 
  • Run the TbUT in Pedestal mode:
    
    
Changed:
<
<
go to Tb/TbUT
>
>
cd Tb/TbUT
 lb-run Kepler v3r0 gaudirun.py options/TbUTPedestal.py
  • After the execution of the application, the file contains pedestal values, one number per channel is output. The name of the file is specified in the options file ( line app.pedestalOutputData )

Revision 92015-09-09 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 34 to 34
 
  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTPedestal.py ):
    option name brief description
    app.inputData type of string, contains path to the input data
Added:
>
>
app.isAType type of Boolean, choose if sensor is type A (true) or D (false)
 
app.eventMax type of integer, number of event to process
app.app.pedestaOutputData type of string, contains path to the output file ( contains pedestal values)
Line: 58 to 59
 
  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTRun.py ):
    option name brief description
    app.inputData type of string, contains path to the input data
Added:
>
>
app.isAType type of Boolean, choose if sensor is type A (true) or D (false)
 
app.eventMax type of integer, number of event to process
app.pedestalInputData type of string, contains path to pedestal file (created during execution TbUT in Pedestal mode)
app.eventNumberDisplay type of integer, informs how many event snapshots will be saved (see section exemplary outputs )

Revision 82015-09-02 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 71 to 71
 

Known issues

  • The TbUT cannot read eos files. *workaround: copy analysed file into your work directory.
Changed:
<
<
  • TbUT (run mode) need to be run executed to correct calculate noise and extract clusters.
>
>
  • TbUT (run mode) need to be executed twice to correct calculate noise and extract clusters.
 
  • The tools should inherit from GaudTool class.
  • The unit test have to be implemented

Revision 72015-09-01 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 40 to 40
 
  • Run the TbUT in Pedestal mode:
    go to Tb/TbUT
    
    
Changed:
<
<
gaudirun.py options/TbUTPedestal.py
>
>
lb-run Kepler v3r0 gaudirun.py options/TbUTPedestal.py
 
  • After the execution of the application, the file contains pedestal values, one number per channel is output. The name of the file is specified in the options file ( line app.pedestalOutputData )
Line: 66 to 66
 
  • Running TbUT in Run mode:
    go to Tb/TbUT
    
    
Changed:
<
<
gaudirun.py options/TbUTRun.py
>
>
lb-run Kepler v3r0 gaudirun.py options/TbUTRun.py
 

Known issues

Revision 62015-08-26 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 98 to 98
 
  • Additional data structures. Can be distinguished noise and pedestals. Their are used as a auxiliary structures by the tools.
  • Additional services. Used for manipulation of the additional data structures. See for instance Noise Calculator. Each of this services has own interface ( e.g. Noise calculator are based on INoiseCalculator).
Added:
>
>

TbUT high level architecture

 
Added:
>
>
TbUT high Level architecture
 
Added:
>
>

Description of the algorithms

Raw Data Reader

This algorithm is designed to read raw data from specific input file. Currently TbUT can work with files produced by Alibava and Mamba DAQs. The heart of this algorithm is tool inherit from interface IDataReader. This tool acts fascade for specific DAQ reader.

The execution of Raw Data Reader can be modified using options:

option name brief description
InputDataType type of string, choose one of DAQs data format (Mamba or Alibava)
inputData type of string, path to the input data.
standalone type of boolean, if is true the run is executed with Kepler (haven't been tested yet)

Pedestal Subtractor

The pedestal subtraction algorithm has two phases. In first, optional one, the pedestal values are calculated. This phase is also called training. During the second one the determined pedestal values are subtracted from the raw ADC data. From technical point of view the Pedestal Subtractor Algorithm calls two types of tools. One of them calculates or retrieves pedestals values( this classes inherit from I pedestal following ) and the second one remove pedestals values from the raw data. See data flow.

Pedestal_Subtrator.png

The execution of Pedestal Subtractor Algorithm can be modified using options:

option name brief description
FollowingOption type of string, choose type of execution (training or run)
treningEntry type of integer, number of training entry
ChannelMaskInputLocation type of string, location of the channel mask
PedestalInputFile type of string, path to the location where previously calculated pedestals are stored
PedestalOutputFile type of string, path to the location where calculated pedestal have to be stored
standalone type of boolean, if is true the run is executed with Kepler (haven't been tested yet)

Pedestal following

From the mathematical point of view the calculation of the pedestal can be described as a running average. In every training event then pedestal sum is updated. This update takes into account the previous value of the pedestal sum and the current ADC count. The pedestal sum is calculated for each channel separately. To be more precisely, the pedestal sum, $p_i(n)$, for channel $n$ and event $i$ can be expressed as follows:

$P_{i}^{sum}(n+1)=P^{sum}_{i}(n) + \frac{\Delta_{i}(n+1)}{N}$

Where the $\Delta_{i}(n+1)$ is a event to pedestal correction. This correction is expressed as:

$\Delta_{i}(n+1)=ADC_{i}(n+1)-P^{sum}_{i}(n)$

To increase the suitability of the pedestal the limit for correction is applied. If the condition: $ \left| \Delta_{i}(n+1) \right| \leq 15  $ is not fulfilled the correction value is set to 15.

To determinate the pedestal values the pedestal sum should be normalized, so: $p_{i}=\frac{P^{sum}_{i}}{N}$

Pedestal removing algorithm

The second phase of the pedestal subtraction algorithm is subtraction determined pedestal values from the raw data. This procedure can be expressed as fallows:

$ADC_{i}=ADC^{RAW}_{i}-p_{i}$

where: $ADC_{i}$ is signal value after pedestal subtraction for event $i$, $ADC^{RAW}_{i}$ is a raw data and the $p_{i}$ is the pedestal value. Each of this quantities are in the unit of ADC counts.

 

Additional scripts

Line: 111 to 164
 -- AdamMateuszDendek - 2015-08-03

META FILEATTACHMENT attachment="Thresholds.png" attr="" comment="" date="1440590387" name="Thresholds.png" path="Thresholds.png" size="28440" user="adendek" version="1"
Added:
>
>
META FILEATTACHMENT attachment="TbUT_Architecture.png" attr="" comment="TbUT high level architecture" date="1440606404" name="TbUT_Architecture.png" path="TbUT_Architecture.png" size="106137" user="adendek" version="1"
META FILEATTACHMENT attachment="Pedestal_Subtrator.png" attr="" comment="Pedestal Subtractor Data Flow" date="1440609703" name="Pedestal_Subtrator.png" path="Pedestal_Subtrator.png" size="55020" user="adendek" version="1"

Revision 52015-08-26 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 27 to 27
 

Running the TbUT software

The TbUT software can be run in two modes, Pedestal and Run. The description below contains instructions on how to run TbUT in standalone mode (no other Kepler stuff).
Added:
>
>
You should also look at the Tools for the LHCb Software Environment TWiki page for a better understanding how to run Gaudi-like application.
 

Pedestal mode -- computing the pedestals

  • The aim of the pedestal training is to calculate the pedestals values, which will then be used in Run mode in order to subtract the pedestal from the raw data during execution of the Pedestal Subtraction algorithm.
  • In this mode only 2 algorithms are executed : Raw Data Reader and Pedestal Subtractor for more detailed description of this algorithms look to the developers section.
Line: 71 to 72
 

Known issues

  • The TbUT cannot read eos files. *workaround: copy analysed file into your work directory.
  • TbUT (run mode) need to be run executed to correct calculate noise and extract clusters.
Added:
>
>
  • The tools should inherit from GaudTool class.
  • The unit test have to be implemented
 

Developers section

Added:
>
>

General overview

Every TbUT component class is a member of TbUT namespace.

Algorithms

The TbUT is a Gaudi based application. The application is separated into two sets of Gaudi algorithms. First group is responsible for processing the testbeam data. This algorithms inherit from GaudiAlgorithm class. The names of it contains string Algorithm for instanceTbUTRawDataReaderAlgorithm .

To understand TbUT source code, the algorithm classes should be treated as a starting point

The second group was designed to prepare monitoring plots. This classes inherit from base called TbUTDataMonitorAlgorithm ( see also implementation ). According to the file name convention it's names have to contains string DataMonitorAlgorithm in their's file names. E.g. TbUTPedestalSubtractorDataMonitorAlgorithm .

Tools

That kind of classes are responsible of performing the data modification. Each of this inherit from virtual interface called IProcessingEngine, therefore they have to implement processEvent method.

Tool's Factories

This kind of classes are responsible for dynamic, depend of options, creation of proper version of tools. This classes based on Factory design pattern (see also the beautiful explanation why is is so useful). See for example Raw Data Reader Factory and it implementation

Other types

  • Data structures (inherits from GaudiKernel/DataObject ) are used to be manipulated via the tools and be stored in TES. The TbUT package contains Raw Data and Clusters .
  • Additional data structures. Can be distinguished noise and pedestals. Their are used as a auxiliary structures by the tools.
  • Additional services. Used for manipulation of the additional data structures. See for instance Noise Calculator. Each of this services has own interface ( e.g. Noise calculator are based on INoiseCalculator).

 

Additional scripts

Changed:
<
<
All scripts are stored in TbUT/scripts directory.
  • Noise monitor This script takes as an input noise file. Thresholds.png
>
>
All scripts are stored in TbUT/scripts directory. (Not yet committed)
  • Noise monitor This script takes as an input noise file. The exemplary output:
 
Added:
>
>
Thresholds
  -- AdamMateuszDendek - 2015-08-03

Revision 42015-08-26 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->
Line: 15 to 15
 To setup the TbUT you just need to:
  • Setup project and get source code from LHCb's SVN repository:
    
    
Changed:
<
<
SetupProject Kepler v3r0 SetupProject Kepler v3r0 --build-env
>
>
lb-dev Kepler v3r0 cd ./KeplerDev_v3r0
 getpack Tb/TbUT
Deleted:
<
<
getpack Tb/TbEvent
 getpack Tb/TbKernel
Changed:
<
<
getpack Tb/Kepler
>
>
getpack Tb/TbEvent
 
  • compile the source code
    
    
Changed:
<
<
cd Tb/TbUT cd cmt cmt br cmt make -j8
>
>
make -j10
 

Running the TbUT software

The TbUT software can be run in two modes, Pedestal and Run. The description below contains instructions on how to run TbUT in standalone mode (no other Kepler stuff).
Line: 72 to 68
 gaudirun.py options/TbUTRun.py
Changed:
<
<

Example outputs

GUI

>
>

Known issues

  • The TbUT cannot read eos files. *workaround: copy analysed file into your work directory.
  • TbUT (run mode) need to be run executed to correct calculate noise and extract clusters.
 

Developers section

Changed:
<
<
>
>

Additional scripts

All scripts are stored in TbUT/scripts directory.
  • Noise monitor This script takes as an input noise file. Thresholds.png
 

-- AdamMateuszDendek - 2015-08-03

Added:
>
>
META FILEATTACHMENT attachment="Thresholds.png" attr="" comment="" date="1440590387" name="Thresholds.png" path="Thresholds.png" size="28440" user="adendek" version="1"

Revision 32015-08-05 - StevenBlusk

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->

TbUT analysis software

Changed:
<
<
This page is about TbUT package. The software is a part of the Kepler project. The main aim of this software is to perform whole processing of the testbeam data using Gaudi framework.
>
>
This page provides information about the TbUT package. The software is a part of the Kepler project. The main aim of this software is to perform whole processing of the testbeam data using Gaudi framework.
 

Contact persons

Line: 13 to 13
 

Setup

To setup the TbUT you just need to:

Changed:
<
<
  • setup project and get source code from LHCb's SVN repository:
>
>
  • Setup project and get source code from LHCb's SVN repository:
 
SetupProject Kepler v3r0   
SetupProject Kepler v3r0 --build-env 

Line: 29 to 29
 cd cmt cmt br cmt make -j8
Changed:
<
<

Running the TbUT

The TbUT software can be run in two modes Pedestal and Run. The below description contain instruction how to work with TbUT in standalone mode (no other Kepler stuffs).

Pedestal training

  • To aim of execution of the pedestal training is to calculate the pedestals values, that will be used in run mode to be subtracted from the raw data during execution of the Pedestal Subtraction algorithm.
>
>

Running the TbUT software

The TbUT software can be run in two modes, Pedestal and Run. The description below contains instructions on how to run TbUT in standalone mode (no other Kepler stuff).

Pedestal mode -- computing the pedestals

  • The aim of the pedestal training is to calculate the pedestals values, which will then be used in Run mode in order to subtract the pedestal from the raw data during execution of the Pedestal Subtraction algorithm.
 
  • In this mode only 2 algorithms are executed : Raw Data Reader and Pedestal Subtractor for more detailed description of this algorithms look to the developers section.
  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTPedestal.py ):
    option name brief description
Line: 40 to 40
 
app.eventMax type of integer, number of event to process
app.app.pedestaOutputData type of string, contains path to the output file ( contains pedestal values)
Changed:
<
<
  • Run the TbUT in Pedestal mode:
>
>
  • Run the TbUT in Pedestal mode:
 
go to Tb/TbUT
gaudirun.py options/TbUTPedestal.py
     
Changed:
<
<
  • After the execution of the application the file contains pedestal values, one number per channel, have to be created. The name of the file is specified in options file ( line app.pedestalOutputData )
>
>
  • After the execution of the application, the file contains pedestal values, one number per channel is output. The name of the file is specified in the options file ( line app.pedestalOutputData )
 

Run mode

Changed:
<
<
  • In run mode the TbUT is able to perform the whole processing of testbeam data.
>
>
  • In run mode the TbUT performs the whole processing of testbeam data.
 
Changed:
<
<
Raw Data Reader Reads mamba data and saves output into TES
Pedestal Subtrator Gets data raw data from TES, removes before calculated pedestals and put output into TES
Common Mode Subtractor Gets data after Pedestal Subtraction, removes single (mean value) and save output into TES
Cluster Creator Gets data after CMS, create clusters and saves it into TES
>
>
Raw Data Reader Reads raw data from the DUT (Mamba board output) and saves the output into the TES
Pedestal Subtractor Gets raw data from the TES, removes the calculated pedestals from the Pedestal mode run, and stores the output into theTES
Common Mode Subtractor (CMS) Gets data after Pedestal Subtraction; removes the common mode noise, a single value per 32 Beetle channels (mean value of ADC); save the output into the TES
Cluster Creator Gets data after CMS, create clusters and saves it information in the TES
 
Changed:
<
<
Beyond the listed algorithms, the set of corresponding monitoring algorithms has been implemented. The detailed descriptions of processing and monitoring algorithms see developers section.
>
>
Beyond the listed algorithms, a set of corresponding monitoring algorithms has been implemented. The detailed descriptions of processing and monitoring algorithms see developers section.
 
  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTRun.py ):
    option name brief description
    app.inputData type of string, contains path to the input data
    app.eventMax type of integer, number of event to process
Changed:
<
<
app.app.pedestalInputData type of string, contains path to pedestal file (created during execution TbUT in Pedestal mode)
>
>
app.pedestalInputData type of string, contains path to pedestal file (created during execution TbUT in Pedestal mode)
 
app.eventNumberDisplay type of integer, informs how many event snapshots will be saved (see section exemplary outputs )
Changed:
<
<
  • Run the TbUT in Run mode:
>
>
  • Running TbUT in Run mode:
 
go to Tb/TbUT
gaudirun.py options/TbUTRun.py
     
Changed:
<
<

Exemplary outputs

>
>

Example outputs

 

GUI

Revision 22015-08-03 - AdamMateuszDendek

Line: 1 to 1
 
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->

TbUT analysis software

This page is about TbUT package. The software is a part of the Kepler project. The main aim of this software is to perform whole processing of the testbeam data using Gaudi framework.

Added:
>
>

Contact persons

Adam Dendek Mail

Setup

To setup the TbUT you just need to:

  • setup project and get source code from LHCb's SVN repository:
    SetupProject Kepler v3r0   
    SetupProject Kepler v3r0 --build-env 
    
    getpack Tb/TbUT
    getpack Tb/TbEvent
    getpack Tb/TbKernel
    getpack Tb/Kepler
     
  • compile the source code
    cd Tb/TbUT
    cd cmt
    cmt br cmt make -j8
     

Running the TbUT

The TbUT software can be run in two modes Pedestal and Run. The below description contain instruction how to work with TbUT in standalone mode (no other Kepler stuffs).

Pedestal training

  • To aim of execution of the pedestal training is to calculate the pedestals values, that will be used in run mode to be subtracted from the raw data during execution of the Pedestal Subtraction algorithm.
  • In this mode only 2 algorithms are executed : Raw Data Reader and Pedestal Subtractor for more detailed description of this algorithms look to the developers section.
  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTPedestal.py ):
    option name brief description
    app.inputData type of string, contains path to the input data
    app.eventMax type of integer, number of event to process
    app.app.pedestaOutputData type of string, contains path to the output file ( contains pedestal values)

  • Run the TbUT in Pedestal mode:
    go to Tb/TbUT
    gaudirun.py options/TbUTPedestal.py
         
  • After the execution of the application the file contains pedestal values, one number per channel, have to be created. The name of the file is specified in options file ( line app.pedestalOutputData )

Run mode

  • In run mode the TbUT is able to perform the whole processing of testbeam data.
  • In this mode all processing algorithms are executed.
    algorithm brief description
    Raw Data Reader Reads mamba data and saves output into TES
    Pedestal Subtrator Gets data raw data from TES, removes before calculated pedestals and put output into TES
    Common Mode Subtractor Gets data after Pedestal Subtraction, removes single (mean value) and save output into TES
    Cluster Creator Gets data after CMS, create clusters and saves it into TES

Beyond the listed algorithms, the set of corresponding monitoring algorithms has been implemented. The detailed descriptions of processing and monitoring algorithms see developers section.

  • Preparation of the options. You just need to modify the file ( Tb/TbUT/options/TbUTRun.py ):
    option name brief description
    app.inputData type of string, contains path to the input data
    app.eventMax type of integer, number of event to process
    app.app.pedestalInputData type of string, contains path to pedestal file (created during execution TbUT in Pedestal mode)
    app.eventNumberDisplay type of integer, informs how many event snapshots will be saved (see section exemplary outputs )

  • Run the TbUT in Run mode:
    go to Tb/TbUT
    gaudirun.py options/TbUTRun.py
         

Exemplary outputs

GUI

Developers section

 

-- AdamMateuszDendek - 2015-08-03

Revision 12015-08-03 - AdamMateuszDendek

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="TWiki.WebPreferences"
<!--* Set ALLOWTOPICVIEW = lhcb-general-->

TbUT analysis software

This page is about TbUT package. The software is a part of the Kepler project. The main aim of this software is to perform whole processing of the testbeam data using Gaudi framework.

-- AdamMateuszDendek - 2015-08-03

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback