Project

General

Profile

Feature #1357

OutputCppRoot should be able to write to appropriate end_of_run directory

Added by Rogers, Chris over 10 years ago. Updated over 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Online reconstruction
Target version:
Start date:
09 October 2013
Due date:
% Done:

100%

Estimated time:
Workflow:
New Issue

Description

OutputPyImage writes files to the end_of_run directory at the end of the run. Need the same functionality in OutputCppRoot.

At the moment,

  1. OutputCppRoot knows nothing about the end_of_run - it just puts everything into one root file
  2. OutputCppRoot knows nothing about run numbers - it just puts everything into one root file

So new feature would be that OutputCppRoot closes the root file; moves it to the appropriate end_of_run directory; and opens a new root file; at the end of the run. This is determined by a new datacard like output_root_file_run_handling which takes "write_per_run", "write_end_of_run_per_run", "one_big_file" or something equally stupid.


Files

imageReducePyCkovPlot_compared.root (153 KB) imageReducePyCkovPlot_compared.root Rogers, Chris, 16 October 2013 15:00
imageReducePyTOFPlot_compared.root (251 KB) imageReducePyTOFPlot_compared.root Rogers, Chris, 16 October 2013 15:00
#1

Updated by Rogers, Chris over 10 years ago

Email to Ian Taylor

In

src/common_cpp/Converter/DataConverters/JsonCppSpillConverter.cc

I noticed you at some point made a revision as per attached diff. It looks mostly fine except the line

+ cpp_data->SetEventType(spill->GetDaqEventType());

This is incorrect, at this level the "spill" data type doesnt know anything about DAQ - data type should be "Spill". Just making a bug for me and I will switch it back unless you shout.

#2

Updated by Rogers, Chris over 10 years ago

All tests passing on my laptop - over to the test server.

New configuration data cards documentation (from latx)

\verb|end_of_run_output| \verb|_root_directory| & Set target directory for end of run file placement. The user must ensure that this directory exists or MAUS 
will throw an exception. \\
\verb|output_root_file_mode| & Controls how root files are handled across multiple run numbers. Set to \verb|one_big_file| to put everything into one big file 
with file name given by \verb|output_root_file_name|. Set to \verb|one_file_per_run| to split the filename by the trailing `\verb|.|' and insert the run number,
 for each run. For example, \verb|output.root| would become \verb|output_999.root| for run number 999. Set to \verb|end_of_run_file_per_run| to place in a 
directory specified by \verb|end_of_run_output_root_directory|. Data from each run will be placed in a subdirectory specified by the run number, and a file 
specified by the \verb|output_root_file_name| within that directory. MAUS will create the run number directory if one does not exist but not the 
\verb|end_of_run_output_root_directory|. So in the example above, if \verb|end_of_run_output_root_directory| is \verb|end_of_run| files will be placed like 
\verb|./end_of_run/999/output.root| \\
#3

Updated by Rogers, Chris over 10 years ago

I am getting a test fail in the online recon, looks like some other changes have broken the online histograms?

Test fails with

Linking /home/cr67/MAUS/maus_merge/third_party/install/share/test_data/test_data.cat to /home/cr67/MAUS/maus_merge/tmp/test_analyze_data_online/test_data.cat
/home/cr67/MAUS/maus_merge/tmp/test_analyze_data_online//test_data.cat_histos//raw False /home/cr67/MAUS/maus_merge/tmp/test_analyze_data_online//test_data.cat_histos/ True
Running analyze online
Point your browser at http://localhost:9000/maus/
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 

Printing output to  /home/cr67/MAUS/maus_merge/tmp/test_analyze_data_online//test_data.cat_histos/imageReducePyTOFPlot_compared.root
ht01 KolmogorovTest 5.0 7.0 0.0919613435667 Warning
spx0 KolmogorovTest 72.5 32.0 0.227482039648 Pass
spx1 KolmogorovTest 72.5 80.0 1.82391308035e-30 Failure
spx2 KolmogorovTest 72.5 0.0 1.0 Pass
spy0 KolmogorovTest 62.6 21.0 0.00319594780508 Failure
spy1 KolmogorovTest 62.6 62.0 0.00239110518486 Failure
spy2 KolmogorovTest 62.6 0.0 1.0 Pass
hnsp_0 KolmogorovTest 2661.0 489.0 0.000176254509301 Failure
hnsp_1 KolmogorovTest 2801.0 384.0 0.0 Failure
hnsp_2 KolmogorovTest 2886.0 593.0 1.0 Pass
hpmthits000 KolmogorovTest 628.0 119.0 1.0 Pass
hpmthits001 KolmogorovTest 628.0 119.0 1.0 Pass
hpmthits010 KolmogorovTest 505.9 96.0 1.0 Pass
hpmthits011 KolmogorovTest 505.9 96.0 1.0 Pass
hpmthits100 KolmogorovTest 628.0 119.0 1.0 Pass
hpmthits101 KolmogorovTest 628.0 119.0 1.0 Pass
hpmthits110 KolmogorovTest 505.9 96.0 1.0 Pass
hpmthits111 KolmogorovTest 505.9 96.0 1.0 Pass
hpmthits200 KolmogorovTest 628.0 119.0 1.0 Pass
hpmthits201 KolmogorovTest 628.0 119.0 1.0 Pass
hpmthits210 KolmogorovTest 505.9 96.0 1.0 Pass
hpmthits211 KolmogorovTest 505.9 96.0 1.0 Pass
hslabhits00 KolmogorovTest 628.0 130.8 1.0 Pass
hslabhits01 KolmogorovTest 505.9 96.0 1.0 Pass
hslabhits10 KolmogorovTest 628.0 130.8 1.0 Pass
hslabhits11 KolmogorovTest 505.9 96.0 1.0 Pass
hslabhits20 KolmogorovTest 628.0 130.8 1.0 Pass
hslabhits21 KolmogorovTest 505.9 96.0 1.0 Pass
hspxy_0 KolmogorovTest 23.0 8.0 1.0 Pass
hspxy_1 KolmogorovTest 29.0 24.0 1.0 Pass
Printing output to  /home/cr67/MAUS/maus_merge/tmp/test_analyze_data_online//test_data.cat_histos/imageReducePyCkovPlot_compared.root
htof KolmogorovTest 5.0 12.0 0.156446432972 Pass
Error in <TH2F::KolmogorovTest>: Integral is zero for h2=tof_A

tof_A KolmogorovTest 0.0 2.0 0.0 Failure
tof_B KolmogorovTest 5.0 3.0 0.00641548709961 Failure
hPMT1 KolmogorovTest 2689.0 547.0 1.0 Pass
hPMT2 KolmogorovTest 2635.0 537.0 1.0 Pass
hPMT3 KolmogorovTest 2665.0 542.0 1.0 Pass
hPMT4 KolmogorovTest 2435.0 496.0 1.0 Pass
hPMT5 KolmogorovTest 2440.0 500.0 1.0 Pass
hPMT6 KolmogorovTest 2537.0 516.0 1.0 Pass
hPMT7 KolmogorovTest 2619.0 533.0 1.0 Pass
hPMT8 KolmogorovTest 2411.0 491.0 1.0 Pass
harr_time1 KolmogorovTest 19.0 4.0 1.0 Pass
harr_time2 KolmogorovTest 15.0 3.0 1.0 Pass
harr_time3 KolmogorovTest 15.0 3.0 1.0 Pass
harr_time4 KolmogorovTest 20.0 5.0 1.0 Pass
harr_time5 KolmogorovTest 25.0 5.0 1.0 Pass
harr_time6 KolmogorovTest 34.0 7.0 1.0 Pass
harr_time7 KolmogorovTest 29.0 6.0 1.0 Pass
harr_time8 KolmogorovTest 23.0 5.0 1.0 Pass
test file: /home/cr67/MAUS/maus_merge/tmp/test_analyze_data_online//test_data.cat_histos/imageReducePyCkovPlot.root passes: False
test file: /home/cr67/MAUS/maus_merge/tmp/test_analyze_data_online//test_data.cat_histos/imageReducePyTOFPlot.root passes: False

Histogram comparison is attached...

#4

Updated by Rogers, Chris over 10 years ago

Correct histogram file for TOFs

#5

Updated by Rogers, Chris over 10 years ago

  • File deleted (imageReducePyCkovPlot_compared.root)
#6

Updated by Rajaram, Durga over 10 years ago

Hm this is a bit bizarre -- the number of slab hits (hslabhits00) is different by a factor of 5 -- I just don't see how that could change, since it's pre-calibration, and nothing changed with the slab hit reconstruction.

Digging in... [ but it's probably easiest to update the reference file, since I'm going to flip the x,y filling for the 2d plot and the file has to be updated for that anyway ]

#7

Updated by Rogers, Chris over 10 years ago

Ah, the factor 5 comes from the fact that I concatenate 5 identical runs together (to make a bigger load on the reconstruction)

#8

Updated by Rogers, Chris over 10 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

Closed in r1000

#9

Updated by Rajaram, Durga over 10 years ago

  • Target version changed from Future MAUS release to MAUS-v0.7.3

Also available in: Atom PDF