Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated default and backup STT geometry for SAND added. #34

Merged
merged 7 commits into from
Dec 10, 2024
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to a modified version of [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
Geometry releases will be tagged as `Descriptive_tag_v_X.Y.Z`.

### Added

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These two lines should not be added.

- Updated STT geometry with Default and Backup options. Can be built as a standalone geometry. `build_hall.sh only_sand_def_stt` `build_hall.sh only_sand_bck_stt`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Updated STT geometry with Default and Backup options. Can be built as a standalone geometry. `build_hall.sh only_sand_def_stt` `build_hall.sh only_sand_bck_stt`
- Added STT geometry with Complete and Initial options. Can be built as a standalone geometry: `build_hall.sh only_sand_def_stt` `build_hall.sh only_sand_initial_stt`. Not yet part of the default "production" detector hall.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated the log file.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated to the makefile method from the build_hall.sh method

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like those changes are not actually reflected in the branch? Also, please put this "added" line under the "unreleased" section rather than putting it at the top of the file.


## [Unreleased]

### Changed
Expand Down
30 changes: 30 additions & 0 deletions build_hall.sh
Original file line number Diff line number Diff line change
Expand Up @@ -443,6 +443,36 @@ gegede-cli duneggd/Config/WORLDggd.cfg \
-w World -o SAND_opt3_STT1.gdml
fi


if [ $option = "all" -o $option = "only_sand_complete_stt" ];
then
gegede-cli duneggd/Config/WORLDggd.cfg \
duneggd/Config/ND_Hall_Air_Volume_Only_SAND.cfg \
duneggd/Config/ND_Hall_Rock.cfg \
duneggd/Config/ND_ElevatorStruct.cfg \
duneggd/Config/SAND_MAGNET.cfg \
duneggd/Config/SAND_INNERVOLOPT_DefaultSTT.cfg \
duneggd/Config/SAND_ECAL.cfg \
duneggd/Config/SAND_STT/STT_Default.cfg \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have this "default geometry", but it is not actually used in the default that is built when no argument is given to "build_hall.sh". If this is the default, then it should be used for the "prod" options. Currently, that is still using "STT1.cfg", whatever that is.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The default configuration, has some volume naming changes with some slight modifications. The sandreco package is sensitive to volume names. In order to not break the sandreco code due to volume name conflicts, this is not added as part of the prod geometries as we talked about sometime ago. Moreover after discussion we have decided to rename the argument in the build_hall.sh script as default -> complete, backup -> initial respectively.

duneggd/Config/SAND_GRAIN.cfg \
-w World -o only_SAND_STT_Complete.gdml
fi

if [ $option = "all" -o $option = "only_sand_initial_stt" ];
then
gegede-cli duneggd/Config/WORLDggd.cfg \
duneggd/Config/ND_Hall_Air_Volume_Only_SAND.cfg \
duneggd/Config/ND_Hall_Rock.cfg \
duneggd/Config/ND_ElevatorStruct.cfg \
duneggd/Config/SAND_MAGNET.cfg \
duneggd/Config/SAND_INNERVOLOPT_BackupSTT.cfg \
duneggd/Config/SAND_ECAL.cfg \
duneggd/Config/SAND_STT/STT_Backup.cfg \
duneggd/Config/SAND_GRAIN.cfg \
-w World -o only_SAND_STT_Initial.gdml
fi


# SAND OPT 3 DRIFT1
if [ $option = "all" -o $option = "sand_opt3_DRIFT1" ];
then
Expand Down
12 changes: 12 additions & 0 deletions duneggd/Config/SAND_INNERVOLOPT_BackupSTT.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[SANDINNERVOLUME]
class = duneggd.SubDetector.SandInnerVolume.SandInnerVolumeBuilder
subbuilders = ['GRAIN', 'STT_Backup']
halfDimension = {'rmin':Q('0.0cm'), 'rmax':Q('2.00m'), 'dz':Q('1.69m')}
Material = "Air35C"
nBarrelModules = 24
configuration = "option_4"
GRAINThickness = Q("0.902m")

clearenceECALGRAIN = Q("1.15cm")
clearenceGRAINTracker = Q("1cm")
clearenceTrackerECAL = Q("6.8cm")
12 changes: 12 additions & 0 deletions duneggd/Config/SAND_INNERVOLOPT_DefaultSTT.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[SANDINNERVOLUME]
class = duneggd.SubDetector.SandInnerVolume.SandInnerVolumeBuilder
subbuilders = ['GRAIN', 'STT_Default']
halfDimension = {'rmin':Q('0.0cm'), 'rmax':Q('2.00m'), 'dz':Q('1.69m')}
Material = "Air35C"
nBarrelModules = 24
configuration = "option_4"
GRAINThickness = Q("0.902m")

clearenceECALGRAIN = Q("1.15cm")
clearenceGRAINTracker = Q("1cm")
clearenceTrackerECAL = Q("6.8cm")
51 changes: 51 additions & 0 deletions duneggd/Config/SAND_STT/STT_Backup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
[STT_Backup]

#**********************************| SAND inner vol |********************************************

class = duneggd.SubDetector.STT_Backup.STTBuilder
STTconfiguration = "STT_Backup"
nBarrelModules = {SANDINNERVOLUME:nBarrelModules}
halfDimension = {SANDINNERVOLUME:halfDimension}
Material = {SANDINNERVOLUME:Material}
configuration = {SANDINNERVOLUME:configuration}
GRAINThickness = {SANDINNERVOLUME:GRAINThickness}
clearenceECALGRAIN = {SANDINNERVOLUME:clearenceECALGRAIN}
clearenceGRAINTracker = {SANDINNERVOLUME:clearenceGRAINTracker} # this should be read from SANDINNERVOLUME
clearenceTrackerECAL = {SANDINNERVOLUME:clearenceTrackerECAL} # the same

#**********************************| STT tracker |********************************************

nofUpstreamTrkMod = 1
nofDownstreamTrkMod = 6
nofC3H6ModAfterCMod = 6
nofC3H6ModNoRadAfterCMod = 3

#**********************************| STT MODULE |********************************************

# target
FrameThickness = Q("10cm")
AddGapForSlab = Q("7cm")
targetThickness = {"CMod" : Q("4mm"), "C3H6Mod": Q("5mm"), "C3H6ModNoRad": Q("5mm"), "TrkMod":Q("0mm"), "TrkMod2lyr":Q("0mm")}

# radiator
radiator = "yes" # "yes" or "no
nofFoils = 105 if radiator=="yes" else 0
FoilThickness = Q("18um") if radiator=="yes" else Q("0um")
AirGapThickness = Q("117um") if radiator=="yes" else Q("0um")
RadiatorThickness = {"CMod" : Q("0mm"), "C3H6Mod": nofFoils*FoilThickness + (nofFoils-1)*AirGapThickness, "C3H6ModNoRad":Q("0mm"), "TrkMod":Q("0mm"), "TrkMod2lyr":Q("0mm")}
# straw planes
nofStrawPlanes = {"CMod" : 2, "C3H6Mod": 2, "C3H6ModNoRad": 2, "TrkMod": 3, "TrkMod2lyr": 2}
gap = {"CMod" : Q("4.67mm"), "C3H6Mod": Q("0mm"), "C3H6ModNoRad": Q("4.17mm"), "TrkMod":Q("4.67mm"), "TrkMod2lyr":Q("4.67mm")}

#**********************************| STRAW |********************************************

StrawRadius = Q('2.5mm')
StrawPlug = Q('0mm')
DistStrawStraw = Q('0mm')
DistStrawWall = Q('0mm')
AngleStrawStraw = Q('60deg')
StrawWireRadius = Q('20um')
StrawWireCoatThickness = Q('20nm')
CoatThickness = Q("70nm")
MylarThickness = Q("12um")
StrawGas = {"CMod" : "stGas_Ar19", "C3H6Mod":"stGas_Xe19", "C3H6ModNoRad":"stGas_Ar19", "TrkMod":"stGas_Ar19", "TrkMod2lyr":"stGas_Ar19"}
51 changes: 51 additions & 0 deletions duneggd/Config/SAND_STT/STT_Default.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
[STT_Default]

#**********************************| SAND inner vol |********************************************

class = duneggd.SubDetector.STT_Default.STTBuilder
STTconfiguration = "STT_Default"
nBarrelModules = {SANDINNERVOLUME:nBarrelModules}
halfDimension = {SANDINNERVOLUME:halfDimension}
Material = {SANDINNERVOLUME:Material}
configuration = {SANDINNERVOLUME:configuration}
GRAINThickness = {SANDINNERVOLUME:GRAINThickness}
clearenceECALGRAIN = {SANDINNERVOLUME:clearenceECALGRAIN}
clearenceGRAINTracker = {SANDINNERVOLUME:clearenceGRAINTracker} # this should be read from SANDINNERVOLUME
clearenceTrackerECAL = {SANDINNERVOLUME:clearenceTrackerECAL} # the same

#**********************************| STT tracker |********************************************

nofUpstreamTrkMod = 1
nofDownstreamTrkMod = 6
nofC3H6ModAfterCMod = 6
nofC3H6ModNoRadAfterCMod = 3

#**********************************| STT MODULE |********************************************

# target
FrameThickness = Q("10cm")
AddGapForSlab = Q("7cm")
targetThickness = {"CMod" : Q("4mm"), "C3H6Mod": Q("5mm"), "C3H6ModNoRad": Q("5mm"), "TrkMod":Q("0mm"), "TrkMod2lyr":Q("0mm")}

# radiator
radiator = "yes" # "yes" or "no
nofFoils = 105 if radiator=="yes" else 0
FoilThickness = Q("18um") if radiator=="yes" else Q("0um")
AirGapThickness = Q("117um") if radiator=="yes" else Q("0um")
RadiatorThickness = {"CMod" : Q("0mm"), "C3H6Mod": nofFoils*FoilThickness + (nofFoils-1)*AirGapThickness, "C3H6ModNoRad":Q("0mm"), "TrkMod":Q("0mm"), "TrkMod2lyr":Q("0mm")}
# straw planes
nofStrawPlanes = {"CMod" : 2, "C3H6Mod": 2, "C3H6ModNoRad": 2, "TrkMod": 3, "TrkMod2lyr": 2}
gap = {"CMod" : Q("4.67mm"), "C3H6Mod": Q("0mm"), "C3H6ModNoRad": Q("4.17mm"), "TrkMod":Q("4.67mm"), "TrkMod2lyr":Q("4.67mm")}

#**********************************| STRAW |********************************************

StrawRadius = Q('2.5mm')
StrawPlug = Q('0mm')
DistStrawStraw = Q('0mm')
DistStrawWall = Q('0mm')
AngleStrawStraw = Q('60deg')
StrawWireRadius = Q('20um')
StrawWireCoatThickness = Q('20nm')
CoatThickness = Q("70nm")
MylarThickness = Q("12um")
StrawGas = {"CMod" : "stGas_Ar19", "C3H6Mod":"stGas_Xe19", "C3H6ModNoRad":"stGas_Ar19", "TrkMod":"stGas_Ar19", "TrkMod2lyr":"stGas_Ar19"}
Loading
Loading