Skip to content

Commit

Permalink
Deploy 1.2
Browse files Browse the repository at this point in the history
  • Loading branch information
davidplotzki committed Feb 12, 2023
1 parent 612fb58 commit 7d66290
Show file tree
Hide file tree
Showing 34 changed files with 707 additions and 631 deletions.
2 changes: 1 addition & 1 deletion docs/.buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 3eb4cc4285e92a8a6e27cc140cdee970
config: 51264c5f43e9023cb5c909f513bbac44
tags: 645f666f9bcd5a90fca523b33c5a78b7
22 changes: 11 additions & 11 deletions docs/_sources/acquisition.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ For a circular CT scan, the start and stop angle of the sample stage are defined

.. code-block:: json-object
:linenos:
:lineno-start: 320
:lineno-start: 329
"start_angle": {"value": 0, "unit": "deg"},
"stop_angle": {"value": 320, "unit": "deg"}
Expand All @@ -27,7 +27,7 @@ The direction of the sample stage rotation can be counter-clockwise (:json:`"CCW

.. code-block:: json-object
:linenos:
:lineno-start: 322
:lineno-start: 331
"direction": "CW",
"direction": "CCW"
Expand All @@ -36,7 +36,7 @@ The parameter :json:`"scan_mode"` defines if the rotation stops while a projecti

.. code-block:: json-object
:linenos:
:lineno-start: 323
:lineno-start: 332
"scan_mode": "stop+go",
"scan_mode": "continuous"
Expand All @@ -45,15 +45,15 @@ The property for scan speed should only be used for continuous-motion scans. If

.. code-block:: json-object
:linenos:
:lineno-start: 324
:lineno-start: 333
"scan_speed": {"value": 360, "unit": "deg/h"}
For stop&go scans, it should be set to :json:`null`:

.. code-block:: json-object
:linenos:
:lineno-start: 324
:lineno-start: 333
"scan_speed": null
Expand All @@ -69,15 +69,15 @@ The :json:`"number_of_projections"` is also given in the acquisition section.

.. code-block:: json-object
:linenos:
:lineno-start: 325
:lineno-start: 334
"number_of_projections": 2001
Beginning from the start angle, the necessary number of angular steps is performed (in the case of a stop&go scan). It is assumed that a frame is taken before each step (starting with the first frame at the start angle). The parameter :json:`"include_final_angle"` can be set to :json:`true` if the last projection should be taken after the stop angle has been reached, or to :json:`false` if it is meant to be taken at the last step before the stop angle is reached.

.. code-block:: json-object
:linenos:
:lineno-start: 326
:lineno-start: 335
"include_final_angle": true
Expand All @@ -90,7 +90,7 @@ The number of frames to be averaged for one projection image can be specified:

.. code-block:: json-object
:linenos:
:lineno-start: 327
:lineno-start: 336
"frame_average": 3
Expand All @@ -103,7 +103,7 @@ If dark field and flat field images are acquired along with the projections, the

.. code-block:: json-object
:linenos:
:lineno-start: 328
:lineno-start: 337
"dark_field": {
"number": 1,
Expand All @@ -127,7 +127,7 @@ The number of pixels to bin in directions :math:`\vec{u}` and :math:`\vec{v}` of

.. code-block:: json-object
:linenos:
:lineno-start: 340
:lineno-start: 349
"pixel_binning": {"u": 1, "v": 1}
Expand All @@ -140,6 +140,6 @@ This parameter specifies if X-ray scattering should be simulated or not.

.. code-block:: json-object
:linenos:
:lineno-start: 341
:lineno-start: 350
"scattering": false
4 changes: 4 additions & 0 deletions docs/_sources/changes.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ Specification Changes

The following listing contains the changes to the file format in its prior versions.

Version 1.2
-----------
* Detector: new distinction between its :json:`"window"` and additional :json:`"filters"`. All :json:`"filters"` defined in previous versions of the file format should rather be re-interpreted as windows now (sec. :ref:`sec_scintillator_and_filters`).

Version 1.1
-----------
* Material :json:`"composition"` is now an array that can contain the components of a compound material, each with their specific :json:`"mass_fraction"` (sec. :ref:`sec_materials`).
Expand Down
27 changes: 20 additions & 7 deletions docs/_sources/detector.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ External characteristics file

For a more general approach, it is also possible to provide an arbitrary gray value characteristics from a CSV or TSV file specified by the parameter :json:`"intensity_characteristics_file"`. The file should contain the columns listed in :numref:`tab_csvDetectorIntensityCharacteristics`, separated by a comma or tab character.

A linear interpolation is assumed to take place between the given values. Therefore, if higher precision is required, a higher value density should be provided in this file.
A linear interpolation is assumed to take place between the given values. Therefore, if higher precision is required, a higher density of values should be provided in this file.

If a valid intensity characteristics CSV file is specified and the parameter is not set to :json:`null`, this method has precedence over the first two methods.

Expand All @@ -149,7 +149,9 @@ Quantum efficiency

The photon **conversion efficiency** (quantum efficiency) of the detector can be provided as a characteristics curve from a file, using the parameter :json:`"efficiency_characteristics_file"`. This file should contain the columns listed in :numref:`tab_csvDetectorEfficiencyCharacteristics`, separated by a comma or tab character.

A linear interpolation is assumed to take place between the given values. Therefore, if higher precision is required, a higher value density should be provided in this file.
A linear interpolation is assumed to take place between the given values. Therefore, if higher precision is required, a higher density of values should be provided in this file.

The quantum efficiency is assumed to already take the detector's :ref:`window <sec_scintillator_and_filters>` into account, but not additional, external :ref:`filters <sec_scintillator_and_filters>`.

.. _tab_csvDetectorEfficiencyCharacteristics:

Expand Down Expand Up @@ -264,10 +266,12 @@ The bad pixel map provided here should be a 2D gray-scale image file with a sign
.. _sec_scintillator_and_filters:

Scintillator & filters
----------------------
Scintillator, window & filters
------------------------------

In this section, the scintillator and filter materials for the detector can be defined. The window and filter materials are split into :json:`"front"` and :json:`"rear"` components (e.g., to use as a back panel, mostly to consider backscattering). Any number of windows and filters can be defined. For the materials, only a material ID is given here. The actual material definition and declaration of its chemical composition is found in the :ref:`materials section <sec_materials>` of the JSON file.

In this section, the scintillator and filter materials for the detector can be defined. The filter materials are split into :json:`"front"` filters and :json:`"rear"` filters (i.e., a back panel, mostly to consider backscattering). Any number of filters can be defined. For the materials of scintillator and filters, only a material ID is given here. The actual material definition and declaration of its chemical composition is found in the :ref:`materials section <sec_materials>` of the JSON file.
The :json:`"window"` materials refer to the detector's built-in components, whereas :json:`"filters"` are assumed to be additional components that are not originally part of the detector housing. This distinction is made because the detector's :ref:`quantum efficiency <sec_detector_quantum_efficiency>` (which can be defined in the :json:`"efficiency_characteristics_file"`) already takes the window material into account, but none of the additional, external filters.

Note that front and rear of the detector are not explicitly identified by the detector's normal vector or any other property, but only given implicitly by the side of the detector facing the source.

Expand All @@ -279,15 +283,24 @@ Note that front and rear of the detector are not explicitly identified by the de
"material_id": "CsI",
"thickness": {"value": 0.15, "unit": "mm"}
},
"window": {
"front": [
{
"material_id": "Kapton",
"thickness": {"value": 0.13, "unit": "mm"}
}
],
"rear": []
},
"filters": {
"front": [
{
"material_id": "Al",
"thickness": {"value": 0.2, "unit": "mm"}
},
{
"material_id": "Kapton",
"thickness": {"value": 0.13, "unit": "mm"}
"material_id": "Cu",
"thickness": {"value": 0.1, "unit": "mm"}
}
],
"rear": [
Expand Down
6 changes: 3 additions & 3 deletions docs/_sources/file.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ The :json:`"file_type"` is a constant string to identify this as a CTSimU scenar
"contact": "David Plotzki",
"date_created": "2020-04-23",
"date_changed": "2023-02-05",
"version": {"major": 1, "minor": 7},
"date_changed": "2023-02-11",
"version": {"major": 1, "minor": 8},
"file_type": "CTSimU Scenario",
"file_format_version": {"major": 1, "minor": 1}
"file_format_version": {"major": 1, "minor": 2}
}
8 changes: 4 additions & 4 deletions docs/_sources/materials.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ The following gives an example of a single-component material: pure copper.

.. code-block:: json-object
:linenos:
:lineno-start: 412
:lineno-start: 421
{
"id": "Cu",
Expand All @@ -53,7 +53,7 @@ Simple multi-component materials with known number fractions can be modeled usin

.. code-block:: json-object
:linenos:
:lineno-start: 401
:lineno-start: 410
{
"id": "Brass",
Expand All @@ -71,7 +71,7 @@ Multi-component materials with different **mass fractions** can be modeled by ad

.. code-block:: json-object
:linenos:
:lineno-start: 434
:lineno-start: 443
{
"id": "Glass Ceramic",
Expand All @@ -93,7 +93,7 @@ Another example for a multi-component material would be the environment's air:

.. code-block:: json-object
:linenos:
:lineno-start: 345
:lineno-start: 354
{
"id": "Air",
Expand Down
20 changes: 13 additions & 7 deletions docs/_sources/parameters.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,12 @@ Parameter List
:code:`detector bad_pixel_map headersize` integer no
:code:`detector scintillator material_id` string no
:code:`detector scintillator thickness` float yes
:code:`detector window front` array --
:code:`detector window front material_id` string no
:code:`detector window front thickness` float yes
:code:`detector window rear` array --
:code:`detector window rear material_id` string no
:code:`detector window rear thickness` float yes
:code:`detector filters front` array --
:code:`detector filters front material_id` string no
:code:`detector filters front thickness` float yes
Expand All @@ -94,12 +100,12 @@ Parameter List
:code:`source spot intensity_map headersize` integer no
:code:`source spectrum monochromatic` boolean no
:code:`source spectrum file` string yes
:code:`source spectrum window` array --
:code:`source spectrum window material_id` string no
:code:`source spectrum window thickness` float yes
:code:`source spectrum filters` array --
:code:`source spectrum filters material_id` string no
:code:`source spectrum filters thickness` float yes
:code:`source window` array --
:code:`source window material_id` string no
:code:`source window thickness` float yes
:code:`source filters` array --
:code:`source filters material_id` string no
:code:`source filters thickness` float yes
**Samples**
:code:`samples` array --
:code:`samples name` string no
Expand Down Expand Up @@ -140,7 +146,7 @@ Parameter List
:code:`materials composition mass_fraction` float yes
============================================================= ============= ============================

Objects in the scene may come with geometrical deviations. These are defined as an array of deviation objects. The structure of deviation objects is listed in :numref:`tab_deviations`.
Objects in the scene may come with :ref:`geometrical deviations <sec_geometry_deviations>`. These are defined as an array of deviation objects. The structure of deviation objects is listed in :numref:`tab_deviations`.


.. _tab_deviations:
Expand Down
2 changes: 1 addition & 1 deletion docs/_sources/proprietary.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ If a simulation software requires additional information or simulation parameter

.. code-block:: json-object
:linenos:
:lineno-start: 452
:lineno-start: 460
"simulation": {
"aRTist": {
Expand Down
14 changes: 7 additions & 7 deletions docs/_sources/samples.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,31 +14,31 @@ The sample name:

.. code-block:: json-object
:linenos:
:lineno-start: 256
:lineno-start: 265
"name": "Tetrahedron"
A reference to the model file (e.g. STL or CAD file) that describes the sample geometry:

.. code-block:: json-object
:linenos:
:lineno-start: 257
:lineno-start: 266
"file": {"value": "tetra.stl", "drifts": null}
The unit of length that is used in the model file:

.. code-block:: json-object
:linenos:
:lineno-start: 258
:lineno-start: 267
"unit": "mm"
A scaling factor for each axis of the sample coordinate system, if the model should be resized by a constant factor:

.. code-block:: json-object
:linenos:
:lineno-start: 259
:lineno-start: 268
"scaling_factor": {
"r": {"value": 0.75, "drifts": null},
Expand All @@ -50,7 +50,7 @@ The material of the sample, given by a :json:`"material_id"` that references a m

.. code-block:: json-object
:linenos:
:lineno-start: 264
:lineno-start: 273
"material_id": "Glass Ceramic"
Expand All @@ -76,7 +76,7 @@ The description follows the convention that has been established for the :ref:`p

.. code-block:: json-object
:linenos:
:lineno-start: 265
:lineno-start: 274
"position": {
"center": {
Expand Down Expand Up @@ -116,7 +116,7 @@ The description is very similar to placing a sample in the stage coordinate syst

.. code-block:: json-object
:linenos:
:lineno-start: 286
:lineno-start: 295
{
"name": "Attachment Frame",
Expand Down
Loading

0 comments on commit 7d66290

Please sign in to comment.