REST version : v2.2.24
REST commit : c865cb4e
Hi,
I am stuck with a problem, similar to the one described here:
I am trying to find Blob charges (position and charge) on the Track events.
In the configFile_G4Hits_To_Track.rml (11.5 KB) file I apply processes to transform Signal events to Raw Signal events, noise simulation, shaping, transformation back to Signal events and several track reconstruction processes, including TrackReconnectionProcess
.
If I am not mistaken, TRestFindTrackBlobsProcess
should recover observables from the TRestTrackReconnectionProcess
in order to “find” Blobs on the Track event.
Thus, I added a parameter
<parameter name="observable" value="all" />
to the TRestTrackReconnectionProcess
in the configuration.rml file.
But, fObservables = TRestEventProcess::ReadObservables();
in the TRestFindTrackBlobsProcess
gives a vector of a size = 0.
I have added some lines to the .cxx file of that process in order to receive printouts:
TRestFindTrackBlobsProcess.cxx (28.6 KB) TRestFindTrackBlobsProcess.h (4.0 KB)
It looks like I am able to reconstruct only the position, but not the charge of the Blobs (Processing only 1 Track for the moment):
================InitProcess================
fObservables.size() : 0
tracks[0]->isXZ(): 1
x1_X = 549.479 z1_X = 577.426
x2_X = 541.815 z2_X = 580.258
tracks[1]->isYZ(): 1
y1_Y = 371.589 z1_Y = 551.934
y2_Y = 387.301 z2_Y = 580.661
======================FINALLY======================
x1 = 0 y1 = 0 z1 = 0
x2 = 0 y2 = 0 z2 = 0
distance = 0
x1_X = 549.479 z1_X = 577.426
x2_X = 541.815 z2_X = 580.258
y1_Y = 371.589 z1_Y = 551.934
y2_Y = 387.301 z2_Y = 580.661
===========================================================
longTrackId : 7
tracks[0]->isXYZ(): 0
fQ1_Observables.size() : 0
fQ2_Observables.size() : 0
fQhigh_Observables.size() : 0
fQlow_Observables.size() : 0
fQbalance_Observables.size() : 0
fQratio_Observables.size() : 0
===========================================================
tracks[0]->isXZ(): 1
fQ1_X_Observables.size() : 0
fQ2_X_Observables.size() : 0
fQhigh_X_Observables.size() : 0
fQlow_X_Observables.size() : 0
fQbalance_X_Observables.size() : 0
fQratio_X_Observables.size() : 0
===========================================================
tracks[0]->isYZ(): 0
fQ1_Y_Observables.size() : 0
fQ2_Y_Observables.size() : 0
fQhigh_Y_Observables.size() : 0
fQlow_Y_Observables.size() : 0
fQbalance_Y_Observables.size() : 0
fQratio_Y_Observables.size() : 0
===========================================================
longTrackId : 8
tracks[1]->isXYZ(): 0
fQ1_Observables.size() : 0
fQ2_Observables.size() : 0
fQhigh_Observables.size() : 0
fQlow_Observables.size() : 0
fQbalance_Observables.size() : 0
fQratio_Observables.size() : 0
===========================================================
tracks[1]->isXZ(): 0
fQ1_X_Observables.size() : 0
fQ2_X_Observables.size() : 0
fQhigh_X_Observables.size() : 0
fQlow_X_Observables.size() : 0
fQbalance_X_Observables.size() : 0
fQratio_X_Observables.size() : 0
===========================================================
tracks[1]->isYZ(): 1
fQ1_Y_Observables.size() : 0
fQ2_Y_Observables.size() : 0
fQhigh_Y_Observables.size() : 0
fQlow_Y_Observables.size() : 0
fQbalance_Y_Observables.size() : 0
fQratio_Y_Observables.size() : 0
Am I missing something?
I would be grateful for any kind of help concerning this problem.