Skip to content

Commit 78d7be9

Browse files
Sangbaekzhiwanxu
andauthored
Replace ATOF tdc/tot/tdc-start time variables with ATOF time (#425)
Co-authored-by: zhiwanxu <zhiwanxu@outlook.com>
1 parent d40827f commit 78d7be9

8 files changed

Lines changed: 193 additions & 647 deletions

File tree

src/main/java/org/jlab/clas/timeline/analysis/alert/alert_atof_tdc_minus_start_time.groovy

Lines changed: 0 additions & 97 deletions
This file was deleted.

src/main/java/org/jlab/clas/timeline/analysis/alert/alert_atof_tdc_minus_start_time_vs_tot.groovy

Lines changed: 0 additions & 123 deletions
This file was deleted.

src/main/java/org/jlab/clas/timeline/analysis/alert/alert_atof_tdc.groovy renamed to src/main/java/org/jlab/clas/timeline/analysis/alert/alert_atof_time.groovy

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,18 @@ import org.jlab.groot.data.TDirectory
55
import org.jlab.groot.data.GraphErrors
66
import org.jlab.clas.timeline.fitter.ALERTFitter
77

8-
class alert_atof_tdc {
8+
class alert_atof_time {
99

1010
def data = new ConcurrentHashMap()
1111
def has_data = new AtomicBoolean(false)
1212
int sector;
1313
int min_index;
1414
int max_index;
1515

16-
alert_atof_tdc(int atof_sector){ // atof_sector runs from 0 to 14.
16+
alert_atof_time(int atof_sector){ // atof_sector runs from 0 to 14.
1717
this.sector = atof_sector;
18-
this.min_index = 48*(atof_sector);
19-
this.max_index = 48*(atof_sector+1);
18+
this.min_index = 44*(atof_sector);
19+
this.max_index = 44*(atof_sector+1);
2020
}
2121

2222
def getName() {
@@ -30,22 +30,20 @@ int max_index;
3030
def reference_trigger_bit = 0
3131
// data[run].put('bits', trigger)
3232
(min_index..<max_index).collect{index->
33-
int atof_sector = index / (12 * 4);
33+
int atof_sector = index / (11 * 4);
3434
assert sector == atof_sector // sanity-check. this should be the same.
35-
int layer = (index % (12 * 4)) / 12;
36-
int component = index % 12;
37-
def file_index = '';
38-
if (component <= 10) file_index = String.format('sector%d_layer%d_component%d_order0', sector, layer, component)
39-
else file_index = String.format('sector%d_layer%d_component%d_order1', sector, layer, component-1)
40-
def h1 = dir.getObject(String.format('/ALERT/TDC_%s', file_index))
35+
int layer = (index % (11 * 4)) / 11;
36+
int component = index % 11;
37+
def file_index = String.format('sector%d_layer%d_component%d', sector, layer, component)
38+
def h1 = dir.getObject(String.format('/ALERT/ATOF_Time_%s', file_index))
4139
if(h1!=null) {
42-
if (h1.getBinContent(h1.getMaximumBin()) > 30 && h1.getEntries()>300 && h1.getRMS()<28){
43-
data[run].put(String.format('atof_tdc_%s', file_index), h1)
44-
def f1 = ALERTFitter.tdcfitter(h1)
45-
data[run].put(String.format('fit_atof_tdc_%s', file_index), f1)
46-
data[run].put(String.format('peak_location_atof_tdc_%s', file_index), f1.getParameter(1).abs())
47-
data[run].put(String.format('sigma_atof_tdc_%s', file_index), f1.getParameter(2).abs())
48-
data[run].put(String.format('integral_normalized_to_trigger_atof_tdc_%s', file_index), Math.sqrt(2*3.141597f) * f1.getParameter(0).abs() * f1.getParameter(2).abs()/trigger.getBinContent(reference_trigger_bit) )
40+
if (h1.getBinContent(h1.getMaximumBin()) > 30 && h1.getEntries()>300){
41+
data[run].put(String.format('atof_time_%s', file_index), h1)
42+
def f1 = ALERTFitter.atof_time_fitter(h1,component)
43+
data[run].put(String.format('fit_atof_time_%s', file_index), f1)
44+
data[run].put(String.format('peak_location_atof_time_%s', file_index), f1.getParameter(1).abs())
45+
data[run].put(String.format('sigma_atof_time_%s', file_index), f1.getParameter(2).abs())
46+
data[run].put(String.format('integral_normalized_to_trigger_atof_time_%s', file_index), Math.sqrt(2*3.141597f) * f1.getParameter(0).abs() * f1.getParameter(2).abs()/trigger.getBinContent(reference_trigger_bit) )
4947
has_data.set(true)
5048
}
5149
}
@@ -66,16 +64,15 @@ int max_index;
6664
def names = []
6765
TDirectory out = new TDirectory()
6866
out.mkdir('/timelines')
69-
(0..<12).collect{component->
67+
(0..<11).collect{component->
7068
def file_index = ''
71-
if (component <= 10) file_index = String.format('sector%d_layer%d_component%d_order0', sector, layer, component)
72-
else file_index = String.format('sector%d_layer%d_component%d_order1', sector, layer, component-1)
73-
names << String.format('atof_tdc_%s', file_index)
69+
file_index = String.format('sector%d_layer%d_component%d', sector, layer, component)
70+
names << String.format('atof_time_%s', file_index)
7471
}
7572
names.each{ name ->
7673
def gr = new GraphErrors(name)
77-
gr.setTitle( String.format("ATOF TDC %s sector %d layer %d", variable.replace('_', ' '), sector, layer))
78-
gr.setTitleY( String.format("ATOF TDC %s sector %d layer %d (ns)", variable.replace('_', ' '), sector, layer))
74+
gr.setTitle( String.format("ATOF Time %s sector %d layer %d", variable.replace('_', ' '), sector, layer))
75+
gr.setTitleY( String.format("ATOF Time %s sector %d layer %d (ns)", variable.replace('_', ' '), sector, layer))
7976
gr.setTitleX("run number")
8077
data.sort{it.key}.each{run,it->
8178
out.mkdir('/'+it.run)
@@ -90,7 +87,7 @@ int max_index;
9087
out.cd('/timelines')
9188
out.addDataSet(gr)
9289
}
93-
out.writeFile(String.format('alert_atof_tdc_%s_sector%d_layer%d.hipo', variable, sector, layer))
90+
out.writeFile(String.format('alert_atof_time_%s_sector%d_layer%d.hipo', variable, sector, layer))
9491
}
9592
}
9693
}

0 commit comments

Comments
 (0)