Hello,
My simulation currently simulates one particle (mu-) that passes through a gas detector with a wire in its center (90% Ar, 10% CO2, 1800V on wire) and some signal is shown (attached) . I am at the stage of trying to extract data from it. I am using functions in the Sensor.cc source file: “ComputeThresholdCrossings”, “GetThresholdCrossing”.
I would to get the length (in time) of a signal as a function of the threshold. Currently, regardless of the threshold that I am setting, the output is that there is no crossing.
In the code I am scanning 12 orders of magnitudes of thresholds but still it doesn’t seem to deliver any data (adding a picture of the output).
double threshold = 0.02 ;
for ( int k = 0; k <= 12; k++ ) {
int crossing = 0 ;
int power = -6+k ;
double expo = pow(10,power) ;
double now_threshold = threshold*expo ;
sensor->ComputeThresholdCrossings(now_threshold , "s", crossing) ;
cout << "now_threshold = " << now_threshold << ", crossing = " << crossing << "\n" ;
double time_of = 0. ;
double thr = 0. ;
bool rising = true ;
sensor->GetThresholdCrossing(0, time_of, thr, rising) ;
cout << "time_of = " << time_of << ", thr = " << thr << ", rising = " << rising << "\n" ;
rising = false ;
sensor->GetThresholdCrossing(0, time_of, thr, rising) ;
cout << "time_of = " << time_of << ", thr = " << thr << ", rising = " << rising << "\n\n\n" ;
}
Does anyone see why I can’t seem to analyse the signal?
There is a similar question in this forum (I can not add the link here) But I could not find my answer there since I definitely have a signal and there it seems that that was the issue.
Best,
Dvir
ROOT Version: 6.24.06
Platform: Ubuntu20.04
Compiler: g++ 9.4.0