File indexing completed on 2025-08-03 08:15:33
0001 WITH good_runs AS (
0002
0003 SELECT runnumber
0004 FROM filelist
0005 WHERE (
0006 (filename LIKE '%@RUNTYPE@/%ebdc%' AND filename LIKE '%.evt') OR
0007 (filename LIKE '%@RUNTYPE@/%mvtx%' AND filename LIKE '%.evt') OR
0008 (filename LIKE '%@RUNTYPE@/%intt%' AND filename LIKE '%.evt')
0009 )
0010
0011 GROUP BY runnumber
0012 HAVING
0013 COUNT(DISTINCT CASE
0014 WHEN filename LIKE '%TPC_ebdc%' AND filename LIKE '%-0000.evt'
0015 THEN SUBSTRING(filename FROM 'TPC_ebdc(\d{2}_\d)')
0016 END) = 48
0017
0018 AND
0019
0020 COUNT(DISTINCT CASE
0021 WHEN filename LIKE '%mvtx%' AND filename LIKE '%-0000.evt'
0022 THEN SUBSTRING(filename FROM 'mvtx(\d+)')
0023 END) = 6
0024
0025 AND
0026
0027 COUNT(DISTINCT CASE
0028 WHEN filename LIKE '%intt%' AND filename LIKE '%-0000.evt'
0029 THEN SUBSTRING(filename FROM 'intt(\d+)')
0030 END) = 8
0031 )
0032
0033 SELECT
0034 r.runnumber,
0035 r.runtype,
0036 r.brtimestamp,
0037 r.ertimestamp,
0038 r.eventsinrun AS total_events,
0039 ROUND(EXTRACT(EPOCH FROM r.ertimestamp - r.brtimestamp)) AS duration_sec,
0040 ROUND(r.eventsinrun::numeric / NULLIF(EXTRACT(EPOCH FROM r.ertimestamp - r.brtimestamp), 0), 2) AS event_rate
0041 FROM good_runs gr
0042 JOIN run r ON r.runnumber = gr.runnumber
0043 WHERE r.runtype = '@RUNTYPE@'
0044 AND r.eventsinrun > 0
0045 AND r.brtimestamp IS NOT NULL
0046 AND r.ertimestamp IS NOT NULL
0047 ORDER BY r.runnumber;
0048