EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
ResolutionLevel.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file ResolutionLevel.h
1
//
2
// AYK (ayk@bnl.gov)
3
//
4
// Resolution level description;
5
//
6
// Initial port from OLYMPUS sources: Oct'2015;
7
//
8
9
#ifndef _RESOLUTION_LEVEL_
10
#define _RESOLUTION_LEVEL_
11
12
class
HoughTree
;
13
14
class
ResolutionLevel
15
{
16
public
:
17
ResolutionLevel
(
const
HoughTree
*tree,
const
unsigned
div[]);
18
~ResolutionLevel
() {};
19
20
// THINK: calls from main code only -> no range check?;
21
double
GetParameterSplitFactor
(
unsigned
ip
)
const
{
return
mParameterSplit
[
ip
]; };
22
double
GetCellSize
(
unsigned
ip
)
const
{
return
mCellSize
[
ip
]; };
23
24
unsigned
GetTotalDivisionNumber
(
unsigned
ip
)
const
{
return
mTotalDivisionNum
[
ip
]; };
25
unsigned
GetDaughterCellNumber
()
const
{
return
mDaughterCellNum
; };
26
27
// NB: since mDim is readily available in this class, it is convenient
28
// to sort of swap indices in mRemap[] 2D storage array;
29
unsigned
Remap
(
unsigned
i,
unsigned
ip
)
const
{
return
mRemap
[i+ip*
mDaughterCellNum
]; };
30
31
private
:
32
// Divisions of individual parameters and overall dimension of
33
// the (linear, 1D) daughter cell array on this level;
34
unsigned
*
mParameterSplit
,
mDaughterCellNum
;
35
36
// Accumulated number of cells on this level, including divisions
37
// of each dimension separately;
38
unsigned
*
mTotalDivisionNum
,
mTotalCellNum
;
39
40
// Parameter space rectangular cell size on this resolution level;
41
double
*
mCellSize
;
42
43
unsigned
*
mRemap
;
44
};
45
46
#endif
EicRoot
blob
master
eic
htree
ResolutionLevel.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:35
using
1.8.2 with
EIC GitHub integration