Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
D
detector_benchmarks
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
EIC
benchmarks
detector_benchmarks
Merge requests
!29
Resolve "Pion rejection plot"
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Resolve "Pion rejection plot"
18-pion-rejection-plot
into
master
Overview
0
Commits
17
Pipelines
0
Changes
5
Merged
Marshall Scott
requested to merge
18-pion-rejection-plot
into
master
4 years ago
Overview
0
Commits
17
Pipelines
0
Changes
5
Expand
Closes
#18 (closed)
Edited
4 years ago
by
Marshall Scott
0
0
Merge request reports
Compare
master
version 66
6d001a66
4 years ago
version 65
60beb713
4 years ago
version 64
311ec073
4 years ago
version 63
08c5a6c9
4 years ago
version 62
3e6c23ae
4 years ago
version 61
f7977b68
4 years ago
version 60
87d0e886
4 years ago
version 59
489b7c88
4 years ago
version 58
2fc2e078
4 years ago
version 57
2cb543a8
4 years ago
version 56
c3589773
4 years ago
version 55
dfef35a5
4 years ago
version 54
6b5cebc7
4 years ago
version 53
0a8426b8
4 years ago
version 52
73dd007a
4 years ago
version 51
f3217120
4 years ago
version 50
4db002e4
4 years ago
version 49
34c79513
4 years ago
version 48
ad5492fe
4 years ago
version 47
cedd60d7
4 years ago
version 46
d5ea7f7c
4 years ago
version 45
4ca55ac2
4 years ago
version 44
0aebbc29
4 years ago
version 43
680f6b15
4 years ago
version 42
a427d77b
4 years ago
version 41
b459a53e
4 years ago
version 40
f9bcae5a
4 years ago
version 39
9d1fee36
4 years ago
version 38
cb128fca
4 years ago
version 37
c2bd0a4d
4 years ago
version 36
a95efc05
4 years ago
version 35
bf3393a6
4 years ago
version 34
298f4f24
4 years ago
version 33
b3d93755
4 years ago
version 32
65f86faf
4 years ago
version 31
f2f4045d
4 years ago
version 30
f311b1ba
4 years ago
version 29
0d2cd471
4 years ago
version 28
fb3244a4
4 years ago
version 27
7eea3248
4 years ago
version 26
4c87d2bd
4 years ago
version 25
27f37dac
4 years ago
version 24
d770f4e1
4 years ago
version 23
20a252cd
4 years ago
version 22
c4c8a869
4 years ago
version 21
b9dc712b
4 years ago
version 20
0ee98684
4 years ago
version 19
7623ee1f
4 years ago
version 18
de934ba5
4 years ago
version 17
f047e758
4 years ago
version 16
b4e60383
4 years ago
version 15
b7831309
4 years ago
version 14
218d8c0e
4 years ago
version 13
d51626fb
4 years ago
version 12
b19a0b48
4 years ago
version 11
3efb4d9f
4 years ago
version 10
5070e846
4 years ago
version 9
f5a3ac29
4 years ago
version 8
499bd8e4
4 years ago
version 7
2e05132f
4 years ago
version 6
1497787c
4 years ago
version 5
a2722784
4 years ago
version 4
9c2a837b
4 years ago
version 3
9fd9ba07
4 years ago
version 2
6d391841
4 years ago
version 1
ed8b0cdd
4 years ago
master (base)
and
version 11
latest version
24c57499
17 commits,
4 years ago
version 66
6d001a66
16 commits,
4 years ago
version 65
60beb713
15 commits,
4 years ago
version 64
311ec073
14 commits,
4 years ago
version 63
08c5a6c9
13 commits,
4 years ago
version 62
3e6c23ae
11 commits,
4 years ago
version 61
f7977b68
8 commits,
4 years ago
version 60
87d0e886
7 commits,
4 years ago
version 59
489b7c88
6 commits,
4 years ago
version 58
2fc2e078
5 commits,
4 years ago
version 57
2cb543a8
4 commits,
4 years ago
version 56
c3589773
3 commits,
4 years ago
version 55
dfef35a5
2 commits,
4 years ago
version 54
6b5cebc7
1 commit,
4 years ago
version 53
0a8426b8
104 commits,
4 years ago
version 52
73dd007a
102 commits,
4 years ago
version 51
f3217120
101 commits,
4 years ago
version 50
4db002e4
100 commits,
4 years ago
version 49
34c79513
98 commits,
4 years ago
version 48
ad5492fe
48 commits,
4 years ago
version 47
cedd60d7
47 commits,
4 years ago
version 46
d5ea7f7c
46 commits,
4 years ago
version 45
4ca55ac2
45 commits,
4 years ago
version 44
0aebbc29
44 commits,
4 years ago
version 43
680f6b15
43 commits,
4 years ago
version 42
a427d77b
42 commits,
4 years ago
version 41
b459a53e
41 commits,
4 years ago
version 40
f9bcae5a
40 commits,
4 years ago
version 39
9d1fee36
39 commits,
4 years ago
version 38
cb128fca
38 commits,
4 years ago
version 37
c2bd0a4d
37 commits,
4 years ago
version 36
a95efc05
36 commits,
4 years ago
version 35
bf3393a6
35 commits,
4 years ago
version 34
298f4f24
34 commits,
4 years ago
version 33
b3d93755
33 commits,
4 years ago
version 32
65f86faf
32 commits,
4 years ago
version 31
f2f4045d
31 commits,
4 years ago
version 30
f311b1ba
30 commits,
4 years ago
version 29
0d2cd471
29 commits,
4 years ago
version 28
fb3244a4
28 commits,
4 years ago
version 27
7eea3248
27 commits,
4 years ago
version 26
4c87d2bd
26 commits,
4 years ago
version 25
27f37dac
25 commits,
4 years ago
version 24
d770f4e1
24 commits,
4 years ago
version 23
20a252cd
23 commits,
4 years ago
version 22
c4c8a869
22 commits,
4 years ago
version 21
b9dc712b
21 commits,
4 years ago
version 20
0ee98684
20 commits,
4 years ago
version 19
7623ee1f
19 commits,
4 years ago
version 18
de934ba5
18 commits,
4 years ago
version 17
f047e758
17 commits,
4 years ago
version 16
b4e60383
16 commits,
4 years ago
version 15
b7831309
15 commits,
4 years ago
version 14
218d8c0e
14 commits,
4 years ago
version 13
d51626fb
13 commits,
4 years ago
version 12
b19a0b48
12 commits,
4 years ago
version 11
3efb4d9f
11 commits,
4 years ago
version 10
5070e846
10 commits,
4 years ago
version 9
f5a3ac29
9 commits,
4 years ago
version 8
499bd8e4
8 commits,
4 years ago
version 7
2e05132f
7 commits,
4 years ago
version 6
1497787c
6 commits,
4 years ago
version 5
a2722784
5 commits,
4 years ago
version 4
9c2a837b
4 commits,
4 years ago
version 3
9fd9ba07
3 commits,
4 years ago
version 2
6d391841
2 commits,
4 years ago
version 1
ed8b0cdd
1 commit,
4 years ago
5 files
+
495
−
1
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
Files
5
Search (e.g. *.vue) (Ctrl+P)
benchmarks/barrel_ecal/scripts/emcal_barrel_pions_electrons.cxx
0 → 100644
+
100
−
0
Options
//////////////////////////////////////////////////////////////
// EMCAL Barrel detector
// Single Pion dataset
// J.KIM 04/04/2021
//////////////////////////////////////////////////////////////
#include
"HepMC3/GenEvent.h"
#include
"HepMC3/Print.h"
#include
"HepMC3/ReaderAscii.h"
#include
"HepMC3/WriterAscii.h"
#include
<TMath.h>
#include
<cmath>
#include
<iostream>
#include
<math.h>
#include
<random>
using
namespace
HepMC3
;
void
emcal_barrel_pions_electrons
(
int
n_events
=
1e6
,
double
e_start
=
0.0
,
double
e_end
=
30.0
,
const
char
*
out_fname
=
"./data/emcal_barrel_pions_electrons.hepmc"
)
{
/*
n_events = 1000;
e_start = 5;
e_end = 18;
out_fname = "temp_pions_electrons.hepmc";
*/
WriterAscii
hepmc_output
(
out_fname
);
int
events_parsed
=
0
;
GenEvent
evt
(
Units
::
GEV
,
Units
::
MM
);
// Random number generator
TRandom
*
r1
=
new
TRandom
();
// Constraining the solid angle, but larger than that subtended by the
// detector
// https://indico.bnl.gov/event/7449/contributions/35966/attachments/27177/41430/EIC-DWG-Calo-03192020.pdf
// See a figure on slide 26
double
cos_theta_min
=
std
::
cos
(
M_PI
*
(
45.0
/
180.0
));
double
cos_theta_max
=
std
::
cos
(
M_PI
*
(
135.0
/
180.0
));
for
(
events_parsed
=
0
;
events_parsed
<
n_events
;
events_parsed
++
)
{
// FourVector(px,py,pz,e,pdgid,status)
// type 4 is beam
// pdgid 11 - electron
// pdgid 111 - pi0
// pdgid 2212 - proton
GenParticlePtr
p1
=
std
::
make_shared
<
GenParticle
>
(
FourVector
(
0.0
,
0.0
,
10.0
,
10.0
),
11
,
4
);
GenParticlePtr
p2
=
std
::
make_shared
<
GenParticle
>
(
FourVector
(
0.0
,
0.0
,
0.0
,
0.938
),
2212
,
4
);
// Define momentum
Double_t
p
=
r1
->
Uniform
(
e_start
,
e_end
);
Double_t
phi
=
r1
->
Uniform
(
0.0
,
2.0
*
M_PI
);
Double_t
costheta
=
r1
->
Uniform
(
cos_theta_min
,
cos_theta_max
);
Double_t
theta
=
std
::
acos
(
costheta
);
Double_t
px
=
p
*
std
::
cos
(
phi
)
*
std
::
sin
(
theta
);
Double_t
py
=
p
*
std
::
sin
(
phi
)
*
std
::
sin
(
theta
);
Double_t
pz
=
p
*
std
::
cos
(
theta
);
// Generates random vectors, uniformly distributed over the surface of a
// sphere of given radius, in this case momentum.
// r1->Sphere(px, py, pz, p);
// type 1 is final state
// pdgid 211 - pion+ 139.570 MeV/c^2
// pdgid -211 - pion- 139.570 MeV/c^2
// pdgid 111 - pion0 134.977 MeV/c^2
GenParticlePtr
p3
=
std
::
make_shared
<
GenParticle
>
(
FourVector
(
px
,
py
,
pz
,
sqrt
(
p
*
p
+
(
0.139570
*
0.139570
))),
-
211
,
1
);
p
=
r1
->
Uniform
(
e_start
,
e_end
);
phi
=
r1
->
Uniform
(
0.0
,
2.0
*
M_PI
);
costheta
=
r1
->
Uniform
(
cos_theta_min
,
cos_theta_max
);
theta
=
std
::
acos
(
costheta
);
px
=
p
*
std
::
cos
(
phi
)
*
std
::
sin
(
theta
);
py
=
p
*
std
::
sin
(
phi
)
*
std
::
sin
(
theta
);
pz
=
p
*
std
::
cos
(
theta
);
GenParticlePtr
p4
=
std
::
make_shared
<
GenParticle
>
(
FourVector
(
px
,
py
,
pz
,
sqrt
(
p
*
p
+
(
0.000511
*
0.000511
))),
11
,
1
);
GenVertexPtr
v1
=
std
::
make_shared
<
GenVertex
>
();
GenVertexPtr
v2
=
std
::
make_shared
<
GenVertex
>
();
v1
->
add_particle_in
(
p1
);
v1
->
add_particle_in
(
p2
);
if
(
r1
->
Uniform
(
0
,
1
)
<=
0.5
)
{
v1
->
add_particle_out
(
p3
);}
else
{
v1
->
add_particle_out
(
p4
);}
evt
.
add_vertex
(
v1
);
if
(
events_parsed
==
0
)
{
std
::
cout
<<
"First event: "
<<
std
::
endl
;
Print
::
listing
(
evt
);
}
hepmc_output
.
write_event
(
evt
);
if
(
events_parsed
%
10000
==
0
)
{
std
::
cout
<<
"Event: "
<<
events_parsed
<<
std
::
endl
;
}
evt
.
clear
();
}
hepmc_output
.
close
();
std
::
cout
<<
"Events parsed and written: "
<<
events_parsed
<<
std
::
endl
;
}
Loading