diff --git a/Detector/DetFCCeeCLD/compact/FCCee_o2_v02/FCCee_o2_v02.xml b/Detector/DetFCCeeCLD/compact/FCCee_o2_v02/FCCee_o2_v02.xml index 7ba9fa70..bed10efc 100644 --- a/Detector/DetFCCeeCLD/compact/FCCee_o2_v02/FCCee_o2_v02.xml +++ b/Detector/DetFCCeeCLD/compact/FCCee_o2_v02/FCCee_o2_v02.xml @@ -30,12 +30,10 @@ - - @@ -50,5 +48,9 @@ + + + + diff --git a/Detector/DetFCCeeCommon/compact/Beampipe.xml b/Detector/DetFCCeeCommon/compact/Beampipe.xml index b86af521..581cbd61 100644 --- a/Detector/DetFCCeeCommon/compact/Beampipe.xml +++ b/Detector/DetFCCeeCommon/compact/Beampipe.xml @@ -28,7 +28,7 @@ Part of beampipe made of Beryllium - + @@ -40,7 +40,7 @@ - + @@ -75,7 +75,7 @@ Full Cone Tungsten Shield - + Before HOM space @@ -99,7 +99,7 @@ Asymmetric Tungsten Shield no Rotation - +
- - - COmpensating and screening solenoids for FCCee - - - - - Beampipe Instrumentation - - - - - - -
- - - - - - - - -
- -
- - - - diff --git a/Detector/DetFCCeeIDEA/compact/Beampipe.xml b/Detector/DetFCCeeIDEA/compact/Beampipe.xml deleted file mode 100644 index b86af521..00000000 --- a/Detector/DetFCCeeIDEA/compact/Beampipe.xml +++ /dev/null @@ -1,150 +0,0 @@ - - - - A beampipe for FCCee, R(central) = 1.5 cm - - - - - - - - - - - - - - - - - - - - Part of beampipe made of Beryllium - - - - - - - -
- -
- - - - - - - - - - - - - Golden foil in the inner part of the Be beampipe - -
- -
- - Part of beampipe made of Copper - -
- - - - - -
- - - -
- - -
- - -Full Cone Tungsten Shield - - - - Before HOM space -
- - After HOM space (1197.5*m - 1298.7*mm) +18 cm as solenoid is now closer to IP -
- - -Asymmetric Tungsten Shield no Rotation - - - - -
- - was 370 -
- - one degree less, to fit lumical window -
- -
- - - - - diff --git a/Detector/DetFCCeeIDEA/compact/FCCee_DectDimensions.xml b/Detector/DetFCCeeIDEA/compact/FCCee_DectDimensions.xml index 8a85757e..d866d1c1 100644 --- a/Detector/DetFCCeeIDEA/compact/FCCee_DectDimensions.xml +++ b/Detector/DetFCCeeIDEA/compact/FCCee_DectDimensions.xml @@ -15,12 +15,11 @@ - + - @@ -28,10 +27,11 @@ - - - - + + + + + @@ -47,20 +47,15 @@ - - - + + + - + - - - - - @@ -68,23 +63,17 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + @@ -199,11 +188,9 @@ - - - - + + @@ -215,12 +202,13 @@ + - + diff --git a/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster.xml b/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster.xml index 872c8564..933d1d7c 100644 --- a/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster.xml +++ b/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster.xml @@ -16,6 +16,8 @@ + + @@ -29,13 +31,24 @@ + + + + + + + + + + + + + + + - - - - - - - + + + diff --git a/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster_v01.xml b/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster_v01.xml index 78253c94..2784ca45 100644 --- a/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster_v01.xml +++ b/Detector/DetFCCeeIDEA/compact/FCCee_DectMaster_v01.xml @@ -32,11 +32,11 @@ - - - - - + + + + + diff --git a/Detector/DetFCCeeIDEA/compact/HOMAbsorber.xml b/Detector/DetFCCeeIDEA/compact/HOMAbsorber.xml deleted file mode 100644 index 862207ea..00000000 --- a/Detector/DetFCCeeIDEA/compact/HOMAbsorber.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - Higher mode absorber for FCCee - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - diff --git a/Detector/DetFCCeeIDEA/compact/LumiCal.xml b/Detector/DetFCCeeIDEA/compact/LumiCal.xml deleted file mode 100644 index 15f0434e..00000000 --- a/Detector/DetFCCeeIDEA/compact/LumiCal.xml +++ /dev/null @@ -1,191 +0,0 @@ - - - - LumiCal for FCCee detector based on CLD - - - - - - - - - - system:8,barrel:3,layer:8,slice:8,r:32:-16,phi:-16 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Detector/DetFCCeeIDEA/compact/Vertex.xml b/Detector/DetFCCeeIDEA/compact/Vertex.xml new file mode 100644 index 00000000..52dbe815 --- /dev/null +++ b/Detector/DetFCCeeIDEA/compact/Vertex.xml @@ -0,0 +1,521 @@ + + + + + + A Vertex Detector for FCCee IDEA detector concept + + + Tracking detectors + + + + + + + + + + + + + Vertex Assembly + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ${GlobalTrackerReadoutID} + + + ${GlobalTrackerReadoutID} + + + ${GlobalTrackerReadoutID} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Vertex Detector Outer Barrel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Vertex Detector Endcaps + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Detector/DetFCCeeIDEA/models/Vertex/VertexSupport.stl b/Detector/DetFCCeeIDEA/models/Vertex/VertexSupport.stl new file mode 100644 index 00000000..d4e8bc61 Binary files /dev/null and b/Detector/DetFCCeeIDEA/models/Vertex/VertexSupport.stl differ diff --git a/scripts/overlap.sh b/scripts/overlap.sh new file mode 100644 index 00000000..cf9b3bc6 --- /dev/null +++ b/scripts/overlap.sh @@ -0,0 +1,5 @@ +### Script to check for overlaps, as described in +### https://hep-fcc.github.io/fcc-tutorials/full-detector-simulations/Geometry/Geometry.html#overlap-checking + +# IDEA +ddsim --compactFile Detector/DetFCCeeIDEA/compact/FCCee_DectMaster.xml --runType run --macroFile scripts/utils/overlap.mac diff --git a/scripts/simulate.sh b/scripts/simulate.sh new file mode 100644 index 00000000..689c24eb --- /dev/null +++ b/scripts/simulate.sh @@ -0,0 +1,10 @@ +### Use ddsim to make a simple particle gun test +### like in the FCC tutorial https://hep-fcc.github.io/fcc-tutorials/full-detector-simulations/Geometry/Geometry.html#modify-an-existing-xml-file + +ddsim --compactFile Detector/DetFCCeeIDEA/compact/FCCee_DectMaster.xml \ + --enableGun \ + --gun.distribution uniform \ + --gun.energy "10*GeV" \ + --gun.particle mu- \ + --numberOfEvents 10000 \ + --outputFile Step1_edm4hep.root diff --git a/scripts/teveDisplay.sh b/scripts/teveDisplay.sh new file mode 100644 index 00000000..9555bea0 --- /dev/null +++ b/scripts/teveDisplay.sh @@ -0,0 +1,8 @@ +### Script to look at detector geometry (warning: very slow for complex detectors) +### and over bad connection + +# IDEA Vertex +teveDisplay -ui -compact Detector/DetFCCeeIDEA/compact/FCCee_DectEmptyMaster.xml ~/FCCDetectors/Detector/DetFCCeeIDEA/compact/Vertex.xml + +# CLD Vertex +teveDisplay -ui -compact Detector/DetFCCeeCLD/compact/FCCee_o2_v02/FCCee_o2_v02_empty.xml ~/FCCDetectors/Detector/DetFCCeeCLD/compact/FCCee_o2_v02/Vertex.xml diff --git a/scripts/utils/dd4hep2root b/scripts/utils/dd4hep2root new file mode 100755 index 00000000..2879def5 --- /dev/null +++ b/scripts/utils/dd4hep2root @@ -0,0 +1,36 @@ +#!/usr/bin/env python3 + +import sys +import argparse + + +def main(): + parser = argparse.ArgumentParser(description='Convert detector') + parser.add_argument('-c', '--compact', help='Compact file location(s)', + required=True, type=str, nargs='+') + parser.add_argument('-o', '--out', help='Converted file path', + default='detector.root', type=str) + args = vars(parser.parse_args()) + + convert(args['compact'], args['out']) + + +def convert(compact_files, out_path): + print('INFO: Converting following compact file(s):') + for cfile in compact_files: + print(' ' + cfile) + + import ROOT + + ROOT.gSystem.Load('libDDCore') + description = ROOT.dd4hep.Detector.getInstance() + for cfile in compact_files: + description.fromXML(cfile) + + ROOT.gGeoManager.SetVisLevel(9) + ROOT.gGeoManager.SetVisOption(0) + ROOT.gGeoManager.Export(out_path) + + +if __name__ == '__main__': + main() diff --git a/scripts/utils/overlap.mac b/scripts/utils/overlap.mac new file mode 100644 index 00000000..0b678e2b --- /dev/null +++ b/scripts/utils/overlap.mac @@ -0,0 +1,2 @@ +/geometry/test/run +exit \ No newline at end of file