should be it
This commit is contained in:
16
external/duckdb/benchmark/realnest/hep/queries/q01.sql
vendored
Normal file
16
external/duckdb/benchmark/realnest/hep/queries/q01.sql
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
SELECT
|
||||
FLOOR((
|
||||
CASE
|
||||
WHEN MET.pt < 0 THEN -1
|
||||
WHEN MET.pt > 2000 THEN 2001
|
||||
ELSE MET.pt
|
||||
END) / 20) * 20 + 10 AS x,
|
||||
COUNT(*) AS y
|
||||
FROM hep_singleMu
|
||||
GROUP BY FLOOR((
|
||||
CASE
|
||||
WHEN MET.pt < 0 THEN -1
|
||||
WHEN MET.pt > 2000 THEN 2001
|
||||
ELSE MET.pt
|
||||
END) / 20) * 20 + 10
|
||||
ORDER BY x;
|
||||
17
external/duckdb/benchmark/realnest/hep/queries/q02.sql
vendored
Normal file
17
external/duckdb/benchmark/realnest/hep/queries/q02.sql
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
SELECT
|
||||
FLOOR((
|
||||
CASE
|
||||
WHEN j.pt < 15 THEN 14.99
|
||||
WHEN j.pt > 60 THEN 60.01
|
||||
ELSE j.pt
|
||||
END - 0.15) / 0.45) * 0.45 + 0.375 AS x,
|
||||
COUNT(*) AS y
|
||||
FROM hep_singleMu
|
||||
CROSS JOIN UNNEST(Jet) AS _j(j)
|
||||
GROUP BY FLOOR((
|
||||
CASE
|
||||
WHEN j.pt < 15 THEN 14.99
|
||||
WHEN j.pt > 60 THEN 60.01
|
||||
ELSE j.pt
|
||||
END - 0.15) / 0.45) * 0.45 + 0.375
|
||||
ORDER BY x;
|
||||
18
external/duckdb/benchmark/realnest/hep/queries/q03.sql
vendored
Normal file
18
external/duckdb/benchmark/realnest/hep/queries/q03.sql
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
SELECT
|
||||
FLOOR((
|
||||
CASE
|
||||
WHEN j.pt < 15 THEN 14.99
|
||||
WHEN j.pt > 60 THEN 60.01
|
||||
ELSE j.pt
|
||||
END - 0.15) / 0.45) * 0.45 + 0.375 AS x,
|
||||
COUNT(*) AS y
|
||||
FROM hep_singleMu
|
||||
CROSS JOIN UNNEST(Jet) AS _j(j)
|
||||
WHERE abs(j.eta) < 1
|
||||
GROUP BY FLOOR((
|
||||
CASE
|
||||
WHEN j.pt < 15 THEN 14.99
|
||||
WHEN j.pt > 60 THEN 60.01
|
||||
ELSE j.pt
|
||||
END - 0.15) / 0.45) * 0.45 + 0.375
|
||||
ORDER BY x;
|
||||
17
external/duckdb/benchmark/realnest/hep/queries/q04.sql
vendored
Normal file
17
external/duckdb/benchmark/realnest/hep/queries/q04.sql
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
SELECT
|
||||
FLOOR((
|
||||
CASE
|
||||
WHEN MET.pt < 0 THEN -1
|
||||
WHEN MET.pt > 2000 THEN 2001
|
||||
ELSE MET.pt
|
||||
END) / 20) * 20 + 10 AS x,
|
||||
COUNT(*) AS y
|
||||
FROM hep_singleMu
|
||||
WHERE len(filter(Jet, lambda x: x.pt > 40)) > 1
|
||||
GROUP BY FLOOR((
|
||||
CASE
|
||||
WHEN MET.pt < 0 THEN -1
|
||||
WHEN MET.pt > 2000 THEN 2001
|
||||
ELSE MET.pt
|
||||
END) / 20) * 20 + 10
|
||||
ORDER BY x;
|
||||
36
external/duckdb/benchmark/realnest/hep/queries/q05.sql
vendored
Normal file
36
external/duckdb/benchmark/realnest/hep/queries/q05.sql
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
WITH temp AS (
|
||||
WITH m as (select unnest(Muon) as m from hep_singleMu )
|
||||
SELECT rowid, MET.pt, COUNT(*)
|
||||
FROM hep_singleMu
|
||||
CROSS JOIN (
|
||||
SELECT row_number() OVER () idx1, m.charge as c1, m.eta as e1, m.phi as ph1, m.pt as p1
|
||||
FROM m
|
||||
) AS _m1
|
||||
CROSS JOIN (
|
||||
SELECT row_number() OVER () idx2, m.charge as c2, m.eta as e2, m.phi as ph2, m.pt as p2
|
||||
FROM m
|
||||
) AS _m2
|
||||
WHERE
|
||||
len(Muon) > 1 AND
|
||||
idx1 < idx2 AND
|
||||
c1 <> c2 AND
|
||||
SQRT(2 * p1 * p2 * (COSH(e1 - e2) - COS(ph1 - ph2))) BETWEEN 60 AND 120
|
||||
GROUP BY rowid, MET.pt
|
||||
HAVING COUNT(*) > 0
|
||||
)
|
||||
SELECT
|
||||
FLOOR((
|
||||
CASE
|
||||
WHEN pt < 0 THEN -1
|
||||
WHEN pt > 2000 THEN 2001
|
||||
ELSE pt
|
||||
END) / 20) * 20 + 10 AS x,
|
||||
COUNT(*) AS y
|
||||
FROM temp
|
||||
GROUP BY FLOOR((
|
||||
CASE
|
||||
WHEN pt < 0 THEN -1
|
||||
WHEN pt > 2000 THEN 2001
|
||||
ELSE pt
|
||||
END) / 20) * 20 + 10
|
||||
ORDER BY x;
|
||||
19
external/duckdb/benchmark/realnest/hep/queries/q06_1.sql
vendored
Normal file
19
external/duckdb/benchmark/realnest/hep/queries/q06_1.sql
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
WITH trijets_invariant_mass AS materialized (SELECT
|
||||
row_id_i,
|
||||
AddPtEtaPhiM3({'pt':j1.pt, 'eta':j1.eta, 'phi':j1.phi, 'mass':j1.mass},
|
||||
{'pt':j2.pt, 'eta':j2.eta, 'phi':j2.phi, 'mass':j2.mass},
|
||||
{'pt':j3.pt, 'eta':j3.eta, 'phi':j3.phi, 'mass':j3.mass}) AS triJet,
|
||||
abs(triJet['mass'] - 172.5) AS invariant_mass
|
||||
FROM (SELECT j1, row_number() OVER(PARTITION BY row_id) i, row_id row_id_i FROM (SELECT UNNEST(Jet) j1, rowid row_id FROM hep_singleMu WHERE array_length(jet) >= 3)),
|
||||
(SELECT j2, row_number() OVER(PARTITION BY row_id) j, row_id row_id_j FROM (SELECT UNNEST(Jet) j2, rowid row_id FROM hep_singleMu WHERE array_length(jet) >= 3)),
|
||||
(SELECT j3, row_number() OVER(PARTITION BY row_id) k, row_id row_id_k FROM (SELECT UNNEST(Jet) j3, rowid row_id FROM hep_singleMu WHERE array_length(jet) >= 3))
|
||||
WHERE i < j AND j < k AND row_id_i = row_id_j AND row_id_j = row_id_k
|
||||
ORDER BY invariant_mass ASC)
|
||||
SELECT
|
||||
HistogramBin(trijets_invariant_mass.triJet['pt'], 15, 40, 100) AS x,
|
||||
count(*) AS y
|
||||
FROM trijets_invariant_mass
|
||||
WHERE
|
||||
invariant_mass IN (SELECT min(tim_2.invariant_mass) FROM trijets_invariant_mass tim_2 GROUP BY tim_2.row_id_i)
|
||||
GROUP BY x
|
||||
ORDER BY x;
|
||||
20
external/duckdb/benchmark/realnest/hep/queries/q06_2.sql
vendored
Normal file
20
external/duckdb/benchmark/realnest/hep/queries/q06_2.sql
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
WITH trijets_b_tag_dval AS materialized (SELECT
|
||||
row_id_i,
|
||||
list_max(list_transform([j1, j2, j3], lambda x: x.btag)) AS b_tag_dval,
|
||||
AddPtEtaPhiM3({'pt':j1.pt, 'eta':j1.eta, 'phi':j1.phi, 'mass':j1.mass},
|
||||
{'pt':j2.pt, 'eta':j2.eta, 'phi':j2.phi, 'mass':j2.mass},
|
||||
{'pt':j3.pt, 'eta':j3.eta, 'phi':j3.phi, 'mass':j3.mass}) AS triJet,
|
||||
abs(triJet['mass'] - 172.5) AS invariant_mass
|
||||
FROM (SELECT j1, row_number() OVER(Partition BY row_id) i, row_id row_id_i FROM (SELECT UNNEST(Jet) j1, rowid row_id FROM hep_singleMu WHERE array_length(jet) >= 3)),
|
||||
(SELECT j2, row_number() OVER(Partition BY row_id) j, row_id row_id_j FROM (SELECT UNNEST(Jet) j2, rowid row_id FROM hep_singleMu WHERE array_length(jet) >= 3)),
|
||||
(SELECT j3, row_number() OVER(Partition BY row_id) k, row_id row_id_k FROM (SELECT UNNEST(Jet) j3, rowid row_id FROM hep_singleMu WHERE array_length(jet) >= 3))
|
||||
WHERE i < j AND j < k AND row_id_i = row_id_j AND row_id_j = row_id_k
|
||||
ORDER BY invariant_mass asc)
|
||||
SELECT
|
||||
round(HistogramBin(trijets_b_tag_dval.b_tag_dval, 0, 1, 100),3) AS x,
|
||||
count(*) AS y
|
||||
FROM trijets_b_tag_dval
|
||||
WHERE
|
||||
invariant_mass in (SELECT min(tim_2.invariant_mass) FROM trijets_b_tag_dval tim_2 GROUP BY tim_2.row_id_i)
|
||||
GROUP BY x
|
||||
ORDER BY x;
|
||||
36
external/duckdb/benchmark/realnest/hep/queries/q07.sql
vendored
Normal file
36
external/duckdb/benchmark/realnest/hep/queries/q07.sql
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
WITH matching_jets AS (
|
||||
SELECT rowid, SUM(j.pt) AS pt_sum
|
||||
FROM hep_singleMu
|
||||
CROSS JOIN UNNEST(Jet) AS _j(j)
|
||||
WHERE
|
||||
j.pt > 30 AND
|
||||
len(
|
||||
filter(
|
||||
Electron,
|
||||
lambda x: x.pt > 10 AND
|
||||
sqrt( (j.eta - x.eta) * (j.eta - x.eta) +
|
||||
pow( (j.phi - x.phi + pi()) % (2 * pi()) - pi(), 2) ) < 0.4)) = 0 AND
|
||||
len(
|
||||
filter(
|
||||
Muon,
|
||||
lambda x: x.pt > 10 AND
|
||||
sqrt( (j.eta - x.eta) * (j.eta - x.eta) +
|
||||
pow( (j.phi - x.phi + pi()) % (2 * pi()) - pi(), 2) ) < 0.4)) = 0
|
||||
GROUP BY rowid
|
||||
)
|
||||
SELECT
|
||||
FLOOR((
|
||||
CASE
|
||||
WHEN pt_sum < 15 THEN 14.9
|
||||
WHEN pt_sum > 200 THEN 200.1
|
||||
ELSE pt_sum
|
||||
END - 0.2) / 1.85) * 1.85 + 1.125 AS x,
|
||||
COUNT(*) AS y
|
||||
FROM matching_jets
|
||||
GROUP BY FLOOR((
|
||||
CASE
|
||||
WHEN pt_sum < 15 THEN 14.9
|
||||
WHEN pt_sum > 200 THEN 200.1
|
||||
ELSE pt_sum
|
||||
END - 0.2) / 1.85) * 1.85 + 1.125
|
||||
ORDER BY x;
|
||||
87
external/duckdb/benchmark/realnest/hep/queries/q08.sql
vendored
Normal file
87
external/duckdb/benchmark/realnest/hep/queries/q08.sql
vendored
Normal file
@@ -0,0 +1,87 @@
|
||||
WITH uniform_structure_leptons AS (
|
||||
SELECT
|
||||
event,
|
||||
MET,
|
||||
list_distinct(
|
||||
list_concat(
|
||||
list_transform(
|
||||
COALESCE(Muon, ARRAY []),
|
||||
x -> CAST( ROW(x.pt, x.eta, x.phi, x.mass, x.charge, 'm') AS ROW( pt REAL, eta REAL, phi REAL, mass REAL, charge INTEGER, type CHAR ) )
|
||||
),
|
||||
list_transform(
|
||||
COALESCE(Electron, ARRAY []),
|
||||
x -> CAST( ROW(x.pt, x.eta, x.phi, x.mass, x.charge, 'e') AS ROW( pt REAL, eta REAL, phi REAL, mass REAL, charge INTEGER, type CHAR ) )
|
||||
)
|
||||
)
|
||||
) AS Leptons
|
||||
FROM hep_singleMu
|
||||
WHERE len(Muon) + len(Electron) > 2
|
||||
),
|
||||
lepton_pairs AS (
|
||||
WITH m AS (select unnest(Leptons) AS m FROM hep_singleMu)
|
||||
SELECT
|
||||
*,
|
||||
CAST(
|
||||
ROW(
|
||||
l1.pt * cos(l1.phi) + l2.pt * cos(l2.phi),
|
||||
l1.pt * sin(l1.phi) + l2.pt * sin(l2.phi),
|
||||
l1.pt * ( ( exp(l1.eta) - exp(-l1.eta) ) / 2.0 ) + l2.pt * ( ( exp(l2.eta) - exp(-l2.eta) ) / 2.0 ),
|
||||
sqrt(l1.pt * cosh(l1.eta) * l1.pt * cosh(l1.eta) + l1.mass * l1.mass) + sqrt(l2.pt * cosh(l2.eta) * l2.pt * cosh(l2.eta) + l2.mass * l2.mass)
|
||||
) AS
|
||||
ROW (x REAL, y REAL, z REAL, e REAL)
|
||||
) AS l,
|
||||
idx1 AS l1_idx,
|
||||
idx2 AS l2_idx
|
||||
FROM uniform_structure_leptons
|
||||
CROSS JOIN (
|
||||
SELECT l1, row_number()OVER (PARTITION BY event) idx1
|
||||
FROM (select unnest(Leptons) l1, event FROM uniform_structure_leptons)
|
||||
) AS _l1
|
||||
CROSS JOIN (
|
||||
SELECT l2, row_number()OVER (PARTITION BY event) idx2
|
||||
FROM (select unnest(Leptons) l2, event FROM uniform_structure_leptons)
|
||||
) AS _l2
|
||||
WHERE idx1 < idx2 AND l1.type = l2.type AND l1.charge != l2.charge
|
||||
),
|
||||
processed_pairs AS (
|
||||
SELECT
|
||||
event,
|
||||
min_by(
|
||||
ROW(
|
||||
l1_idx,
|
||||
l2_idx,
|
||||
Leptons,
|
||||
MET.pt,
|
||||
MET.phi
|
||||
),
|
||||
abs(91.2 - sqrt(l.e * l.e - l.x * l.x - l.y * l.y - l.z * l.z))
|
||||
) AS system
|
||||
FROM lepton_pairs
|
||||
GROUP BY event
|
||||
),
|
||||
other_max_pt AS (
|
||||
SELECT event, CAST(max_by(sqrt(2 * system[4] * l.pt * (1.0 - cos((system[5]- l.phi + pi()) % (2 * pi()) - pi()))), l.pt) AS REAL) AS pt
|
||||
FROM processed_pairs
|
||||
CROSS JOIN (
|
||||
SELECT l, row_number()OVER (PARTITION BY row_id) idx
|
||||
FROM (select unnest(system[3]) AS l, event row_id FROM processed_pairs)
|
||||
)
|
||||
WHERE idx != system[1] AND idx != system[2]
|
||||
GROUP BY event
|
||||
)
|
||||
SELECT
|
||||
FLOOR((
|
||||
CASE
|
||||
WHEN pt < 15 THEN 14.99
|
||||
WHEN pt > 250 THEN 250.1
|
||||
ELSE pt
|
||||
END - 0.9) / 2.35) * 2.35 + 2.075 AS x,
|
||||
COUNT(*) AS y
|
||||
FROM other_max_pt
|
||||
GROUP BY FLOOR((
|
||||
CASE
|
||||
WHEN pt < 15 THEN 14.99
|
||||
WHEN pt > 250 THEN 250.1
|
||||
ELSE pt
|
||||
END - 0.9) / 2.35) * 2.35 + 2.075
|
||||
ORDER BY x;
|
||||
Reference in New Issue
Block a user