Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
E
eicd
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
eicd
Commits
a65376aa
Commit
a65376aa
authored
3 years ago
by
Sylvester Joosten
Browse files
Options
Downloads
Patches
Plain Diff
Updated EICD tracker data structures
parent
ce028eee
No related branches found
No related tags found
1 merge request
!42
Resolve "Update tracking data structures"
Pipeline
#15529
failed
3 years ago
Stage: config
Stage: build
Stage: deploy
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
eic_data.yaml
+61
-42
61 additions, 42 deletions
eic_data.yaml
source/include/eicd/helpers.h
+3
-3
3 additions, 3 deletions
source/include/eicd/helpers.h
with
64 additions
and
45 deletions
eic_data.yaml
+
61
−
42
View file @
a65376aa
...
@@ -206,15 +206,15 @@ components:
...
@@ -206,15 +206,15 @@ components:
eic::CovDiagXYZT
:
eic::CovDiagXYZT
:
Members
:
Members
:
-
float
xx
-
double
xx
-
float
yy
-
double
yy
-
float
zz
-
double
zz
-
float
tt
-
double
tt
ExtraCode
:
ExtraCode
:
declaration
:
"
declaration
:
"
CovDiagXYZT()
:
xx{0},
yy{0},
zz{0},
tt{0}
{}
\n
CovDiagXYZT()
:
xx{0},
yy{0},
zz{0},
tt{0}
{}
\n
CovDiagXYZT(
float
x,
float
y,
float
z,
float
t)
:
xx{x},
yy{y},
zz{z},
tt{t}
{}
\n
CovDiagXYZT(
double
x,
double
y,
double
z,
double
t)
:
xx{x},
yy{y},
zz{z},
tt{t}
{}
\n
float
operator()(unsigned
i,
unsigned
j)
const
{return
(i
==
j)
?
*(&xx
+
i)
:
0.;}
\n
double
operator()(unsigned
i,
unsigned
j)
const
{return
(i
==
j)
?
*(&xx
+
i)
:
0.;}
\n
"
"
eic::CovXYZ
:
eic::CovXYZ
:
...
@@ -245,42 +245,6 @@ components:
...
@@ -245,42 +245,6 @@ components:
datatypes
:
datatypes
:
eic::RawTrackerHit
:
Description
:
"
Raw
(digitized)
tracker
hit"
Author
:
"
W.Armstrong"
Members
:
-
long long cellID // The detector specific (geometrical) cell id.
-
int time // tdc value.
-
int charge // adc value
eic::TrackerHit
:
Description
:
"
Tracker
hit
(reconstructed
from
Raw)"
Author
:
"
W.Armstrong"
Members
:
-
long long cellID // The detector specific (geometrical) cell id.
-
float time // The time of the hit.
-
float EDep // EDep
-
float EDepError // error on EDep
-
eic::VectorXYZ position // position
-
eic::CovDiagXYZ covMatrix // covMatrix
eic::TrackParameters
:
Description
:
"
ACTS
Track
parameters"
Author
:
"
W.Armstrong"
Members
:
-
double loc0 // loc0
-
double loc1 // loc1
-
double phi // phi
-
double theta // theta
-
double qOverP // qOverP
-
double time // time
-
double err_loc0 // err_loc0
-
double err_loc1 // err_loc1
-
double err_phi // err_phi
-
double err_theta // err_theta
-
double err_qOverP // err_qOverP
-
double err_time // err_time
eic::Vertex
:
eic::Vertex
:
Description
:
"
EIC
vertex"
Description
:
"
EIC
vertex"
Author
:
"
W.Armstrong"
Author
:
"
W.Armstrong"
...
@@ -404,6 +368,7 @@ datatypes:
...
@@ -404,6 +368,7 @@ datatypes:
-
eic::VectorXYZ local // The local position of the hit in detector coordinates [mm].
-
eic::VectorXYZ local // The local position of the hit in detector coordinates [mm].
-
eic::VectorXYZ dimension // The dimension information of the cell [mm].
-
eic::VectorXYZ dimension // The dimension information of the cell [mm].
## ==========================================================================
## ==========================================================================
## Clustering
## Clustering
## ==========================================================================
## ==========================================================================
...
@@ -462,3 +427,57 @@ datatypes:
...
@@ -462,3 +427,57 @@ datatypes:
-
float radius // Shower radius [mm]
-
float radius // Shower radius [mm]
-
float skewness // Skewness of hits distribution
-
float skewness // Skewness of hits distribution
-
eic::VectorXYZ position // Global center position. [mm]
-
eic::VectorXYZ position // Global center position. [mm]
## ==========================================================================
## Tracking
## ==========================================================================
eic::RawTrackerHit
:
Description
:
"
Raw
(digitized)
tracker
hit"
Author
:
"
W.
Armstrong,
S.
Joosten"
Members
:
-
int64_t cellID // The detector specific (geometrical) cell id.
-
eic::Index ID // unique ID for this hit
-
int32_t time // tdc value.
-
int32_t charge // adc value
eic::TrackerHit
:
Description
:
"
Tracker
hit
(reconstructed
from
Raw)"
Author
:
"
W.
Armstrong,
S.
Joosten"
Members
:
-
int64_t cellID // The detector specific (geometrical) cell id.
-
eic::Index ID // unique ID for this hit
-
eic::VectorXYZT position // Hit (cell) position and time [mm, ns]
-
eic::CovDiagXYZT covMatrix // Covariance Matrix
-
float edep // Energy deposit in this hit [GeV]
-
float edepError // Error on the energy deposit [GeV]
ConstExtraCode
:
declaration
:
"
double
time()
const
{return
position().t;}
\n
"
## Here's a stub for a prototrack setup. If this is all we use we should
## probably just use protocluster instead, but I assume there will be other
## members we'll need to communicate
## eic::ProtoTrack:
## Description: "Proto track info"
## Author: "S. Joosten"
## Members:
## eic::Index hitID // Unique hit identifier
## eic::Index trackID // link to the associated track
## eic::Weight weight // prototrack weight, in case we share pixels [0-1]
eic::TrackParameters
:
Description
:
"
ACTS
Bound
Track
parameters"
Author
:
"
W.
Armstrong,
S.
Joosten"
Members
:
-
eic::Index ID // unique ID for this track
-
eic::FloatPair loc // tracking location
-
eic::FloatPair locError // error on the location
-
eic::Direction direction // track direction (theta, phi) [rad, 0-pi and -pi->pi]
-
eic::Direction directionError // error on the direction [rad]
-
float qOverP // [e/GeV]
-
float qOverPError // error on qOverP
-
float time // track time [ns]
-
float timeError // error on the time
This diff is collapsed.
Click to expand it.
source/include/eicd/helpers.h
+
3
−
3
View file @
a65376aa
...
@@ -32,9 +32,9 @@ namespace eicd::helpers {
...
@@ -32,9 +32,9 @@ namespace eicd::helpers {
return
ROOT
::
Math
::
PxPyPzMVector
{};
return
ROOT
::
Math
::
PxPyPzMVector
{};
}
}
const
double
p
=
fabs
(
1.
/
track
.
qOverP
);
const
double
p
=
fabs
(
1.
/
track
.
qOverP
);
const
double
px
=
p
*
cos
(
track
.
phi
)
*
sin
(
track
.
theta
);
const
double
px
=
p
*
cos
(
track
.
direction
.
phi
)
*
sin
(
track
.
direction
.
theta
);
const
double
py
=
p
*
sin
(
track
.
phi
)
*
sin
(
track
.
theta
);
const
double
py
=
p
*
sin
(
track
.
direction
.
phi
)
*
sin
(
track
.
direction
.
theta
);
const
double
pz
=
p
*
cos
(
track
.
theta
);
const
double
pz
=
p
*
cos
(
track
.
direction
.
theta
);
return
ROOT
::
Math
::
PxPyPzMVector
{
px
,
py
,
pz
,
mass
};
return
ROOT
::
Math
::
PxPyPzMVector
{
px
,
py
,
pz
,
mass
};
});
});
return
momenta
;
return
momenta
;
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment