{
  "id": 56266,
  "title": "Questions on Reconstructing the Detector. ",
  "url": "/competitions/trackml-particle-identification/discussion/56266",
  "author_name": "Physicsman",
  "post_date": "2018-05-08T06:02:28.771000",
  "votes": 1,
  "comment_count": 12,
  "views": 0,
  "content": "<p>Trying to reconstruct cell location and number...</p>\n\n<blockquote>\n  <p><strong>module_minhu, module_maxhu</strong>: the minimum/maximum half-length of the module boundary along the local u direction (in millimeter).</p>\n</blockquote>\n\n<p>My inclination is to say that the module LENGTH is (module_maxhu-module_minhu)*2. But I'm not sure at all since I would assume the data would have given one number for a length instead of two. </p>\n\n<blockquote>\n  <p><strong>cx, cy, cz</strong>: position of the local origin in the described in the global coordinate system (in millimeter).</p>\n</blockquote>\n\n<p>\"in the described in the global\" .. okay .. I'm guessing that cx, cy, cz is the point in the global coordinate system that sits in the exact center of the module except some modules are trapezoidal so that theory goes out the window.  </p>\n\n<blockquote>\n<pre><code>pos_xyz = rotation_matrix * pos_uvw + offset\n</code></pre>\n</blockquote>\n\n<p>Im guessing, again, that offset is the cx, cy, cz position? </p>",
  "messages": [
    {
      "id": 325146,
      "postDate": "2018-05-08T07:04:59.540Z",
      "content": "<p>Hi, </p>\n\n<p>Sorry, this is not fully clear:\n- for rectangular modules the <code>module_minhu</code> is identical to <code>module_maxhu</code>, for trapezoidal modules it is the two dimensions.\n- also the <code>module_t</code> is the half module thickness \n- exactly, the <code>cx,cy,cz</code> is the offset.</p>",
      "rawMarkdown": "Hi, \n\nSorry, this is not fully clear:\n- for rectangular modules the ``module_minhu`` is identical to ``module_maxhu``, for trapezoidal modules it is the two dimensions.\n- also the ``module_t`` is the half module thickness \n- exactly, the ``cx,cy,cz`` is the offset.",
      "votes": 3,
      "replies": [
        {
          "id": 325156,
          "postDate": "2018-05-08T07:17:12.040Z",
          "content": "<p>That's what I was looking to clarify. Thank you. </p>",
          "rawMarkdown": "That's what I was looking to clarify. Thank you. "
        },
        {
          "id": 325169,
          "postDate": "2018-05-08T07:26:53.780Z",
          "rawMarkdown": "",
          "isDeleted": true
        },
        {
          "id": 325171,
          "postDate": "2018-05-08T07:27:34.997Z",
          "content": "<p>Please have a look at the updated <a href=\"https://www.kaggle.com/c/trackml-particle-identification/data\">data</a> section, I've added some drawings and more information.</p>",
          "rawMarkdown": "Please have a look at the updated [data][1] section, I've added some drawings and more information.\n\n  [1]: https://www.kaggle.com/c/trackml-particle-identification/data",
          "votes": 1
        },
        {
          "id": 325172,
          "postDate": "2018-05-08T07:27:58.720Z",
          "content": "<pre><code>detectors['cells'] = ((detectors['module_maxhu']+detectors['module_minhu']) *\n                  (detectors['module_hv']*2) / (detectors['pitch_v']*detectors['pitch_u']))\n</code></pre>\n\n<p>Which gives 2,265,547,320 cells for the detector. Does that sound about right?</p>",
          "rawMarkdown": "    detectors['cells'] = ((detectors['module_maxhu']+detectors['module_minhu']) *\n                      (detectors['module_hv']*2) / (detectors['pitch_v']*detectors['pitch_u']))\n\nWhich gives 2,265,547,320 cells for the detector. Does that sound about right?"
        },
        {
          "id": 325183,
          "postDate": "2018-05-08T07:42:53.690Z",
          "content": "<p>Pretty much ... to make it easier to digest, the readout structure in the trapezoidal modules is also rectangular, I will add another picture to explain...</p>\n\n<p>BTW, this is indeed an order or magnitude more channels that we will <em>ever</em> (never say never...) build, but that has another reason (if you are interested):\n- in reality we often use double-sided strip modules with stereo angle to get a 3D measurement in the outer detectors, but we thought this would be too complicated, as it needs some other code and assumptions to constrain the measurement, so we went with long pixels instead of strips. </p>",
          "rawMarkdown": "Pretty much ... to make it easier to digest, the readout structure in the trapezoidal modules is also rectangular, I will add another picture to explain...\n\nBTW, this is indeed an order or magnitude more channels that we will *ever* (never say never...) build, but that has another reason (if you are interested):\n- in reality we often use double-sided strip modules with stereo angle to get a 3D measurement in the outer detectors, but we thought this would be too complicated, as it needs some other code and assumptions to constrain the measurement, so we went with long pixels instead of strips. ",
          "votes": 1
        },
        {
          "id": 325828,
          "postDate": "2018-05-08T23:27:49.903Z",
          "content": "<p>I assume the double-sided strips give two points (enter/exit)for a line in 3D.  Does \"stereo angle\" mean orthogonal strips? </p>\n\n<p>Thank you for the extra information on the data page. </p>\n\n<p>Edit: The ch0/ch1 min/max values would be helpful. Can they be calculated as 0-(module_maxhu*2/pitch_u) and the same for 'v' ?</p>",
          "rawMarkdown": "I assume the double-sided strips give two points (enter/exit)for a line in 3D.  Does \"stereo angle\" mean orthogonal strips? \n\nThank you for the extra information on the data page. \n\nEdit: The ch0/ch1 min/max values would be helpful. Can they be calculated as 0-(module_maxhu*2/pitch_u) and the same for 'v' ?"
        },
        {
          "id": 326059,
          "postDate": "2018-05-09T08:03:51.350Z",
          "content": "<p>The stereo angle refers to the angle between the strips in one-layer with respect to the second. Typically this angle is not 90 degrees, but, as Andreas was saying, we decide that this level of detail was beyond the scope of the problem.</p>",
          "rawMarkdown": "The stereo angle refers to the angle between the strips in one-layer with respect to the second. Typically this angle is not 90 degrees, but, as Andreas was saying, we decide that this level of detail was beyond the scope of the problem.",
          "votes": 1
        },
        {
          "id": 327319,
          "postDate": "2018-05-11T09:10:16.230Z",
          "content": "<p>I would like to explore minimal parameterizations of the detector which would require the range of ch0 and ch1 accessible by each module. Would it be possible to get these values added to the data? Otherwise I might get a good estimate by scanning through all the data and recording all the ch1/ch0 pairs for the modules or guess based on pitch u/v and module dimensions.  </p>",
          "rawMarkdown": "I would like to explore minimal parameterizations of the detector which would require the range of ch0 and ch1 accessible by each module. Would it be possible to get these values added to the data? Otherwise I might get a good estimate by scanning through all the data and recording all the ch1/ch0 pairs for the modules or guess based on pitch u/v and module dimensions.  "
        },
        {
          "id": 327528,
          "postDate": "2018-05-11T19:26:14.747Z",
          "content": "<p>Absolutely right, if you have the module dimensions and the pitch in <code>u</code> an <code>v</code> - that gives you the range of of the <code>ch0</code> (<code>u</code>) and <code>ch1</code> (<code>v</code>) direction. </p>",
          "rawMarkdown": "Absolutely right, if you have the module dimensions and the pitch in ``u`` an ``v`` - that gives you the range of of the ``ch0`` (``u``) and ``ch1`` (``v``) direction. ",
          "votes": 1
        },
        {
          "id": 327549,
          "postDate": "2018-05-11T20:25:06.653Z",
          "content": "<p>What about the trapezoidal modules? If ch0 and ch1 map a grid then there are ch0/1 pairs in the corners that never get used.</p>",
          "rawMarkdown": "What about the trapezoidal modules? If ch0 and ch1 map a grid then there are ch0/1 pairs in the corners that never get used."
        },
        {
          "id": 327664,
          "postDate": "2018-05-12T06:18:50.887Z",
          "content": "<p>For simplicity, also in the trapezoidal modules, it is a rectangular grid, the cells are just cut off by the trapezoidal corners.</p>",
          "rawMarkdown": "For simplicity, also in the trapezoidal modules, it is a rectangular grid, the cells are just cut off by the trapezoidal corners.",
          "votes": 1
        }
      ]
    },
    {
      "id": 325105,
      "postDate": "2018-05-08T06:02:28.770Z",
      "content": "<p>Trying to reconstruct cell location and number...</p>\n\n<blockquote>\n  <p><strong>module_minhu, module_maxhu</strong>: the minimum/maximum half-length of the module boundary along the local u direction (in millimeter).</p>\n</blockquote>\n\n<p>My inclination is to say that the module LENGTH is (module_maxhu-module_minhu)*2. But I'm not sure at all since I would assume the data would have given one number for a length instead of two. </p>\n\n<blockquote>\n  <p><strong>cx, cy, cz</strong>: position of the local origin in the described in the global coordinate system (in millimeter).</p>\n</blockquote>\n\n<p>\"in the described in the global\" .. okay .. I'm guessing that cx, cy, cz is the point in the global coordinate system that sits in the exact center of the module except some modules are trapezoidal so that theory goes out the window.  </p>\n\n<blockquote>\n<pre><code>pos_xyz = rotation_matrix * pos_uvw + offset\n</code></pre>\n</blockquote>\n\n<p>Im guessing, again, that offset is the cx, cy, cz position? </p>",
      "rawMarkdown": "Trying to reconstruct cell location and number...\n\n&gt; **module_minhu, module_maxhu**: the minimum/maximum half-length of the module boundary along the local u direction (in millimeter).\n\nMy inclination is to say that the module LENGTH is (module_maxhu-module_minhu)*2. But I'm not sure at all since I would assume the data would have given one number for a length instead of two. \n\n&gt; **cx, cy, cz**: position of the local origin in the described in the global coordinate system (in millimeter).\n\n\"in the described in the global\" .. okay .. I'm guessing that cx, cy, cz is the point in the global coordinate system that sits in the exact center of the module except some modules are trapezoidal so that theory goes out the window.  \n\n&gt;     pos_xyz = rotation_matrix * pos_uvw + offset\n\nIm guessing, again, that offset is the cx, cy, cz position? ",
      "votes": 1
    }
  ],
  "comments": [
    {
      "id": 325146,
      "author_name": "Andreas Salzburger",
      "author_url": "",
      "post_date": "2018-05-08T07:04:59.540000",
      "content": "<p>Hi, </p>\n\n<p>Sorry, this is not fully clear:\n- for rectangular modules the <code>module_minhu</code> is identical to <code>module_maxhu</code>, for trapezoidal modules it is the two dimensions.\n- also the <code>module_t</code> is the half module thickness \n- exactly, the <code>cx,cy,cz</code> is the offset.</p>",
      "votes": 3,
      "replies": [
        {
          "id": 325156,
          "author_name": "Physicsman",
          "author_url": "",
          "post_date": "2018-05-08T07:17:12.040000",
          "content": "<p>That's what I was looking to clarify. Thank you. </p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 325169,
          "author_name": "",
          "author_url": "",
          "post_date": "2018-05-08T07:26:53.780000",
          "content": "",
          "votes": 0,
          "replies": []
        },
        {
          "id": 325171,
          "author_name": "Andreas Salzburger",
          "author_url": "",
          "post_date": "2018-05-08T07:27:34.997000",
          "content": "<p>Please have a look at the updated <a href=\"https://www.kaggle.com/c/trackml-particle-identification/data\">data</a> section, I've added some drawings and more information.</p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 325172,
          "author_name": "Physicsman",
          "author_url": "",
          "post_date": "2018-05-08T07:27:58.720000",
          "content": "<pre><code>detectors['cells'] = ((detectors['module_maxhu']+detectors['module_minhu']) *\n                  (detectors['module_hv']*2) / (detectors['pitch_v']*detectors['pitch_u']))\n</code></pre>\n\n<p>Which gives 2,265,547,320 cells for the detector. Does that sound about right?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 325183,
          "author_name": "Andreas Salzburger",
          "author_url": "",
          "post_date": "2018-05-08T07:42:53.690000",
          "content": "<p>Pretty much ... to make it easier to digest, the readout structure in the trapezoidal modules is also rectangular, I will add another picture to explain...</p>\n\n<p>BTW, this is indeed an order or magnitude more channels that we will <em>ever</em> (never say never...) build, but that has another reason (if you are interested):\n- in reality we often use double-sided strip modules with stereo angle to get a 3D measurement in the outer detectors, but we thought this would be too complicated, as it needs some other code and assumptions to constrain the measurement, so we went with long pixels instead of strips. </p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 325828,
          "author_name": "Physicsman",
          "author_url": "",
          "post_date": "2018-05-08T23:27:49.903000",
          "content": "<p>I assume the double-sided strips give two points (enter/exit)for a line in 3D.  Does \"stereo angle\" mean orthogonal strips? </p>\n\n<p>Thank you for the extra information on the data page. </p>\n\n<p>Edit: The ch0/ch1 min/max values would be helpful. Can they be calculated as 0-(module_maxhu*2/pitch_u) and the same for 'v' ?</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 326059,
          "author_name": "Heather Gray",
          "author_url": "",
          "post_date": "2018-05-09T08:03:51.350000",
          "content": "<p>The stereo angle refers to the angle between the strips in one-layer with respect to the second. Typically this angle is not 90 degrees, but, as Andreas was saying, we decide that this level of detail was beyond the scope of the problem.</p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 327319,
          "author_name": "Physicsman",
          "author_url": "",
          "post_date": "2018-05-11T09:10:16.230000",
          "content": "<p>I would like to explore minimal parameterizations of the detector which would require the range of ch0 and ch1 accessible by each module. Would it be possible to get these values added to the data? Otherwise I might get a good estimate by scanning through all the data and recording all the ch1/ch0 pairs for the modules or guess based on pitch u/v and module dimensions.  </p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 327528,
          "author_name": "Andreas Salzburger",
          "author_url": "",
          "post_date": "2018-05-11T19:26:14.747000",
          "content": "<p>Absolutely right, if you have the module dimensions and the pitch in <code>u</code> an <code>v</code> - that gives you the range of of the <code>ch0</code> (<code>u</code>) and <code>ch1</code> (<code>v</code>) direction. </p>",
          "votes": 1,
          "replies": []
        },
        {
          "id": 327549,
          "author_name": "Physicsman",
          "author_url": "",
          "post_date": "2018-05-11T20:25:06.653000",
          "content": "<p>What about the trapezoidal modules? If ch0 and ch1 map a grid then there are ch0/1 pairs in the corners that never get used.</p>",
          "votes": 0,
          "replies": []
        },
        {
          "id": 327664,
          "author_name": "Andreas Salzburger",
          "author_url": "",
          "post_date": "2018-05-12T06:18:50.887000",
          "content": "<p>For simplicity, also in the trapezoidal modules, it is a rectangular grid, the cells are just cut off by the trapezoidal corners.</p>",
          "votes": 1,
          "replies": []
        }
      ]
    }
  ],
  "raw_markdown_by_id": {
    "325146": "Hi, \n\nSorry, this is not fully clear:\n- for rectangular modules the ``module_minhu`` is identical to ``module_maxhu``, for trapezoidal modules it is the two dimensions.\n- also the ``module_t`` is the half module thickness \n- exactly, the ``cx,cy,cz`` is the offset.",
    "325105": "Trying to reconstruct cell location and number...\n\n&gt; **module_minhu, module_maxhu**: the minimum/maximum half-length of the module boundary along the local u direction (in millimeter).\n\nMy inclination is to say that the module LENGTH is (module_maxhu-module_minhu)*2. But I'm not sure at all since I would assume the data would have given one number for a length instead of two. \n\n&gt; **cx, cy, cz**: position of the local origin in the described in the global coordinate system (in millimeter).\n\n\"in the described in the global\" .. okay .. I'm guessing that cx, cy, cz is the point in the global coordinate system that sits in the exact center of the module except some modules are trapezoidal so that theory goes out the window.  \n\n&gt;     pos_xyz = rotation_matrix * pos_uvw + offset\n\nIm guessing, again, that offset is the cx, cy, cz position? "
  }
}