Skip to content

Commit

Permalink
Monolithic fiber DRC memory usage reduction update, using IDEA o1 v03
Browse files Browse the repository at this point in the history
  • Loading branch information
swkim95 committed Jun 28, 2024
1 parent 77e501e commit d223c6f
Show file tree
Hide file tree
Showing 18 changed files with 3,377 additions and 42 deletions.
12 changes: 11 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ endif()
file(GLOB sources
./detector/tracker/*.cpp
./detector/calorimeter/*.cpp
./detector/calorimeter/dual-readout/src/*.cpp
./detector/fcal/*.cpp
./detector/other/*.cpp
./detector/CaloTB/*.cpp
Expand Down Expand Up @@ -106,9 +107,15 @@ if(NOT DCH_INFO_H_EXIST)
message(WARNING "Subdetector ${FILES_DEPENDINGON_DCH_INFO_H} will not be built because header file ${DCH_INFO_H} was not found")
endif()

find_package(EDM4HEP)
file(GLOB G4sources
./plugins/TPCSDAction.cpp
./plugins/CaloPreShowerSDAction.cpp
./plugins/FiberDRCaloSDAction.h
./plugins/FiberDRCaloSDAction.cpp
./plugins/Geant4Output2EDM4hep_DRC.cpp
./plugins/DRCaloFastSimModel.cpp
./plugins/DRCaloFastSimModel.h
)

if(DD4HEP_USE_PYROOT)
Expand All @@ -124,8 +131,11 @@ add_library(lcgeo ALIAS k4geo)
target_include_directories(${PackageName} PRIVATE ${PROJECT_SOURCE_DIR}/detector/include )
target_include_directories(${PackageName}G4 PRIVATE ${PROJECT_SOURCE_DIR}/detector/include )

target_include_directories(${PackageName} PRIVATE ${PROJECT_SOURCE_DIR}/detector/calorimeter/dual-readout/include )
target_include_directories(${PackageName}G4 PRIVATE ${PROJECT_SOURCE_DIR}/detector/calorimeter/dual-readout/include )

target_link_libraries(${PackageName} DD4hep::DDCore DD4hep::DDRec DD4hep::DDParsers ROOT::Core detectorSegmentations)
target_link_libraries(${PackageName}G4 DD4hep::DDCore DD4hep::DDRec DD4hep::DDParsers DD4hep::DDG4 ROOT::Core ${Geant4_LIBRARIES})
target_link_libraries(${PackageName}G4 DD4hep::DDCore DD4hep::DDRec DD4hep::DDParsers DD4hep::DDG4 ROOT::Core EDM4HEP::edm4hep EDM4HEP::edm4hepDict podio::podio podio::podioDict podio::podioRootIO ${Geant4_LIBRARIES})

if(K4GEO_USE_LCIO)
target_link_libraries(${PackageName} LCIO::lcio)
Expand Down
62 changes: 23 additions & 39 deletions FCCee/IDEA/compact/IDEA_o1_v03/DectDimensions_IDEA_o1_v03.xml
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@
<constant name="DetID_SiWrapper_Barrel" value=" 23"/>
<constant name="DetID_SiWrapper_Disks" value=" 24"/>

<!-- Fiber dual-readout calorimeter DetID -->
<constant name="DetID_FiberDRCalo" value=" 25"/>

<!-- BPW: Beam Pipe Width -->
<constant name="BPWWall" value="0.35*mm" />
<constant name="BPWCool" value="1.0*mm" />
Expand Down Expand Up @@ -105,45 +108,6 @@
<constant name="EndPlateAbsorber_outer_radius" value="2090*mm"/>
<constant name="EndPlateAbsorber_z_min" value="2490*mm"/>
<constant name="EndPlateAbsorber_z_half_length" value="4.209/2.0*mm"/>

<constant name="ECalBarrel_inner_radius" value="2150*mm"/>
<constant name="ECalBarrel_outer_radius" value="2352*mm"/>
<constant name="ECalBarrel_half_length" value="2210*mm"/>
<constant name="ECalBarrel_symmetry" value="12"/>

<constant name="ECalEndcap_inner_radius" value="340*mm"/>
<constant name="ECalEndcap_outer_radius" value="2350*mm"/>
<constant name="ECalEndcap_min_z" value="2307*mm"/>
<constant name="ECalEndcap_max_z" value="2509*mm"/>
<constant name="ECalEndcap_outer_symmetry" value="12"/>
<constant name="ECalEndcap_inner_symmetry" value="12"/>

<!-- ECal plug not used -->
<constant name="ECalPlug_inner_radius" value="260*mm"/>
<constant name="ECalPlug_outer_radius" value="380*mm"/>
<constant name="ECalPlug_min_z" value="2307*mm"/>
<constant name="ECalPlug_max_z" value="2509*mm"/>
<constant name="ECalPlug_outer_symmetry" value="12"/>
<constant name="ECalPlug_inner_symmetry" value="12"/>

<constant name="HCalBarrel_inner_radius" value="2400*mm"/>
<constant name="HCalBarrel_outer_radius" value="3566*mm"/>
<constant name="HCalBarrel_half_length" value="2210*mm"/>
<constant name="HCalBarrel_symmetry" value="12"/>

<constant name="HCalEndcap_inner_radius" value="340*mm"/>
<constant name="HCalEndcap_outer_radius" value="3566*mm"/>
<constant name="HCalEndcap_min_z" value="2539*mm"/>
<constant name="HCalEndcap_max_z" value="3705*mm"/>
<constant name="HCalEndcap_symmetry" value="12"/>
<constant name="HCalEndcap_zcutout" value="200*mm"/>
<constant name="HCalEndcap_rcutout" value="0*mm"/>

<constant name="HCalRing_inner_radius" value="2370*mm"/>
<constant name="HCalRing_outer_radius" value="HCalEndcap_outer_radius"/>
<constant name="HCalRing_min_z" value="2353.5*mm"/>
<constant name="HCalRing_max_z" value="HCalEndcap_min_z"/>
<constant name="HCalRing_symmetry" value="12"/>

<constant name="YokeBarrel_inner_radius" value="4479*mm"/>
<constant name="YokeBarrel_outer_radius" value="6000*mm"/>
Expand Down Expand Up @@ -214,6 +178,15 @@

<constant name="tracker_region_zmax" value="DCH_half_length_total"/>
<constant name="tracker_region_rmax" value="DCH_outer_cyl_R_total"/>

<!-- Fiber dual-readout calorimeter tower dim-->
<constant name="FiberDRCalo_barrel_z_extent" value="2.*m"/>
<constant name="FiberDRCalo_barrel_z_start" value="2.5*m"/>
<constant name="FiberDRCalo_barrel_nphi" value="144"/>
<constant name="FiberDRCalo_endcap_z_extent" value="2.*m"/>
<constant name="FiberDRCalo_endcap_z_start" value="2.5*m"/>
<constant name="FiberDRCalo_endcap_nphi" value="144"/>

</define>


Expand All @@ -230,6 +203,8 @@

<region name="SiWrapperBRegion"/>
<region name="SiWrapperDRegion"/>

<region name="FastSimOpFiberRegion"/>
</regions>


Expand Down Expand Up @@ -262,6 +237,15 @@
<vis name="GlueVis" alpha="1.0" r="1.0" g="0.75" b="0.79" showDaughters="true" visible="true"/>
<vis name="RohacellVis" alpha="1.0" r="1.0" g="1.0" b="1.0" showDaughters="true" visible="true"/>
<vis name="AirVis" alpha="0.1" r="0.1" g="0.1" b="1.0" showDaughters="false" visible="true"/>
<vis name="DRCInvisible" showDaughters="false" visible="false"/> <!-- For fiber-based dual-readout calorimeter -->
<vis name="DRCTowerVis" alpha="1." r="0.7" g="0.4" b="0.1" showDaughters="false" visible="true"/>
<vis name="DRCCerenVis" alpha="0.5" r="0.3" g="0.6" b="0.9" showDaughters="false" visible="false"/>
<vis name="DRCScintVis" alpha="0.5" r="1.0" g="0.8" b="0.1" showDaughters="false" visible="false"/>
<vis name="DRCCladVis" alpha="0.5" r="0.0" g="0.5" b="0.5" showDaughters="false" visible="false"/>
<vis name="DRCGenericVis" alpha="0.8" r="0.5" g="0.5" b="0.5" showDaughters="false" visible="false"/>
<vis name="DRCGlassVis" alpha="0.5" r="0.0" g="0.1" b="0.9" showDaughters="false" visible="false"/>
<vis name="DRCWaferVis" alpha="1." r="0.0" g="0.9" b="0.2" showDaughters="false" visible="false"/>
<vis name="DRCfilterVis" alpha="0.5" r="0.9" g="0.8" b="0.1" showDaughters="false" visible="false"/>
</display>

</lccdd>
Loading

0 comments on commit d223c6f

Please sign in to comment.