Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
CEPCSW
Manage
Activity
Members
Labels
Plan
Issues
6
Issue boards
Milestones
Wiki
Code
Merge requests
9
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package 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
cepc
CEPCSW
Commits
ab0a46e0
Commit
ab0a46e0
authored
2 years ago
by
FU Chengdong
Browse files
Options
Downloads
Patches
Plain Diff
optional symmetry
parent
faa35be5
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
Detector/DetCEPCv4/src/calorimeter/SHcalSc04_Barrel_v04.cpp
+7
-12
7 additions, 12 deletions
Detector/DetCEPCv4/src/calorimeter/SHcalSc04_Barrel_v04.cpp
with
7 additions
and
12 deletions
Detector/DetCEPCv4/src/calorimeter/SHcalSc04_Barrel_v04.cpp
+
7
−
12
View file @
ab0a46e0
...
@@ -46,11 +46,11 @@ using dd4hep::rec::LayeredCalorimeterData;
...
@@ -46,11 +46,11 @@ using dd4hep::rec::LayeredCalorimeterData;
// After reading in all the necessary parameters.
// After reading in all the necessary parameters.
// To check the radius range and the space for placing the total layers
// To check the radius range and the space for placing the total layers
static
bool
validateEnvelope
(
double
rInner
,
double
rOuter
,
double
radiatorThickness
,
double
layerThickness
,
int
layerNumber
){
static
bool
validateEnvelope
(
double
rInner
,
double
rOuter
,
double
radiatorThickness
,
double
layerThickness
,
int
layerNumber
,
int
symmetry
){
bool
Error
=
false
;
bool
Error
=
false
;
bool
Warning
=
false
;
bool
Warning
=
false
;
double
spaceAllowed
=
rOuter
*
cos
(
M_PI
/
16.
)
-
rInner
;
double
spaceAllowed
=
rOuter
*
cos
(
M_PI
/
symmetry
)
-
rInner
;
double
spaceNeeded
=
(
radiatorThickness
+
layerThickness
)
*
layerNumber
;
double
spaceNeeded
=
(
radiatorThickness
+
layerThickness
)
*
layerNumber
;
double
spaceToleranted
=
(
radiatorThickness
+
layerThickness
)
*
(
layerNumber
+
1
);
double
spaceToleranted
=
(
radiatorThickness
+
layerThickness
)
*
(
layerNumber
+
1
);
double
rOuterRecommaned
=
(
rInner
+
spaceNeeded
)
/
cos
(
M_PI
/
16.
);
double
rOuterRecommaned
=
(
rInner
+
spaceNeeded
)
/
cos
(
M_PI
/
16.
);
...
@@ -59,17 +59,17 @@ static bool validateEnvelope(double rInner, double rOuter, double radiatorThickn
...
@@ -59,17 +59,17 @@ static bool validateEnvelope(double rInner, double rOuter, double radiatorThickn
if
(
spaceNeeded
>
spaceAllowed
)
if
(
spaceNeeded
>
spaceAllowed
)
{
{
printout
(
dd4hep
::
ERROR
,
"SHcalSc04_Barrel_v0
1
"
,
" Layer number is more than it can be built! "
)
;
printout
(
dd4hep
::
ERROR
,
"SHcalSc04_Barrel_v0
4
"
,
" Layer number is more than it can be built! "
)
;
Error
=
true
;
Error
=
true
;
}
}
else
if
(
spaceToleranted
<
spaceAllowed
)
else
if
(
spaceToleranted
<
spaceAllowed
)
{
{
printout
(
dd4hep
::
WARNING
,
"SHcalSc04_Barrel_v0
1
"
,
" Layer number is less than it is able to build!"
)
;
printout
(
dd4hep
::
WARNING
,
"SHcalSc04_Barrel_v0
4
"
,
" Layer number is less than it is able to build!"
)
;
Warning
=
true
;
Warning
=
true
;
}
}
else
else
{
{
printout
(
dd4hep
::
DEBUG
,
"SHcalSc04_Barrel_v0
1
"
,
" has been validated and start to build it."
)
;
printout
(
dd4hep
::
DEBUG
,
"SHcalSc04_Barrel_v0
4
"
,
" has been validated and start to build it."
)
;
Error
=
false
;
Error
=
false
;
Warning
=
false
;
Warning
=
false
;
}
}
...
@@ -179,13 +179,8 @@ static Ref_t create_detector(Detector& theDetector, xml_h element, SensitiveDete
...
@@ -179,13 +179,8 @@ static Ref_t create_detector(Detector& theDetector, xml_h element, SensitiveDete
int
Hcal_nlayers
=
theDetector
.
constant
<
int
>
(
"Hcal_nlayers"
);
int
Hcal_nlayers
=
theDetector
.
constant
<
int
>
(
"Hcal_nlayers"
);
double
TPC_outer_radius
=
theDetector
.
constant
<
double
>
(
"TPC_outer_radius"
);
printout
(
dd4hep
::
INFO
,
"SHcalSc04_Barrel_v04"
,
"Hcal_inner_radius : %e - Hcal_outer_radius %e "
,
Hcal_inner_radius
,
Hcal_outer_radius
);
validateEnvelope
(
Hcal_inner_radius
,
Hcal_outer_radius
,
Hcal_radiator_thickness
,
Hcal_chamber_thickness
,
Hcal_nlayers
,
Hcal_inner_symmetry
);
double
Ecal_outer_radius
=
theDetector
.
constant
<
double
>
(
"Ecal_outer_radius"
);
printout
(
dd4hep
::
DEBUG
,
"SHcalSc04_Barrel_v04"
,
"TPC_outer_radius : %e - Ecal_outer_radius: %e "
,
TPC_outer_radius
,
Ecal_outer_radius
)
;
validateEnvelope
(
Hcal_inner_radius
,
Hcal_outer_radius
,
Hcal_radiator_thickness
,
Hcal_chamber_thickness
,
Hcal_nlayers
);
Readout
readout
=
sens
.
readout
();
Readout
readout
=
sens
.
readout
();
dd4hep
::
Segmentation
seg
=
readout
.
segmentation
();
dd4hep
::
Segmentation
seg
=
readout
.
segmentation
();
...
...
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