From 4a4e069745595591426116b1b9d001781be72e97 Mon Sep 17 00:00:00 2001 From: Whitney Armstrong <warmstrong@anl.gov> Date: Thu, 20 May 2021 21:07:02 -0500 Subject: [PATCH] modified: ../config/sidebar.yml modified: part1/simple_detector.md modified: ../../static/hit_position.png --- src/config/sidebar.yml | 2 +- src/docs/part1/simple_detector.md | 24 +++++++++++++++++++++++- static/hit_position.png | Bin 14188 -> 13419 bytes 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/config/sidebar.yml b/src/config/sidebar.yml index f011bd0..6988f6c 100644 --- a/src/config/sidebar.yml +++ b/src/config/sidebar.yml @@ -14,7 +14,7 @@ # link: '/getting-started/eic_container' # - label: 'Environment' # link: '/getting-started/environment' -- label: Tutorials +- label: Tutorial items: - label: 'Quick-start ' link: '/getting-started/quickstart' diff --git a/src/docs/part1/simple_detector.md b/src/docs/part1/simple_detector.md index d8a4e4a..d8127ff 100644 --- a/src/docs/part1/simple_detector.md +++ b/src/docs/part1/simple_detector.md @@ -80,7 +80,29 @@ https://eic.phy.anl.gov/eicd/ root -b -q scripts/tutorial1_hit_position.cxx # note if this fails because of ACLiC, run it again. This is a root bug. ``` -Look at the generated file in results +Look at the generated file in results:  +This is the local position in the segmentation (i.e. pixel, strip, readout pad, etc.). + +### Cell ID (channel) to Position + +At the top of the script you can see these lines: +```cpp + dd4hep::Detector& detector = dd4hep::Detector::getInstance(); + detector.fromCompact("gem_tracker.xml"); + dd4hep::rec::CellIDPositionConverter cellid_converter(detector); +``` +This + - gets the DD4hep instance + - loads the compact detector file + - initializes the [position converter tool](https://dd4hep.web.cern.ch/dd4hep/reference/classdd4hep_1_1rec_1_1CellIDPositionConverter.html) (which provides thread safe access) + +Later on you can see its use: +```cpp + auto pos1 = cellid_converter.position(h.cellID); +``` + + + diff --git a/static/hit_position.png b/static/hit_position.png index 5d4006c721be9441c1f3e59439f8a8c8fef49627..33f1d557e086265c5c92b7438e2f26facc81824a 100644 GIT binary patch literal 13419 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 b1Q$rvuiGF}z1$HruFl};>gTe~DWM4f&23e8 literal 14188 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 -- GitLab