Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/extended/medical/DICOM2/

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Name Size       Last modified (GMT) Description
Back Parent directory       2024-12-05 15:16:16
Folder data/       2024-12-05 15:16:16
Folder include/       2024-12-05 15:16:16
Folder src/       2024-12-05 15:16:16
File CMakeLists.txt 3236 bytes       2024-12-05 15:16:16
File GNUmakefile 416 bytes       2024-12-05 15:16:16
File History 2957 bytes       2024-12-05 15:16:16
File README 3431 bytes       2024-12-05 15:16:16
C++ file dicom2.cc 6090 bytes       2024-12-05 15:16:16
File run.mac 636 bytes       2024-12-05 15:16:16
File run.out 54180 bytes       2024-12-05 15:16:16
File run_DICOM_HEAD.mac 636 bytes       2024-12-05 15:16:16
File vis.mac 2095 bytes       2024-12-05 15:16:16

  1 -------------------------------------------------------------------
  2 
  3      =========================================================
  4      Geant4 - an Object-Oriented Toolkit for Simulation in HEP
  5      =========================================================
  6 
  7                             Example DICOM2
  8                             --------------
  9 
 10 
 11 ---> 1) Introduction
 12 
 13 This example demonstrates how to inherit from the DICOM example.
 14 For more information on the DICOM example, see the README in
 15 the DICOM example. In addition to demonstrating inheritance from DICOM,
 16 this example demonstrates method for memory savings, scoring into a sequential
 17 container instead of an associative container, accumulating the scoring
 18 with a statistics class instead of a simple floating point, and generic iteration
 19 over the variety of scoring container storage variants provided by Geant4
 20 
 21 ---> 2) Configuration and Building
 22 
 23 The DICOM example should be built and installed. By default, the CMake configuration
 24 for the DICOM example will install to the same directory as ${Geant4_DIR}.
 25 
 26 When configurating this example, provide DICOM_DIR=<path-to-cmake-configuration>, e.g.
 27 
 28 $ cmake -DGeant4_DIR=/usr/local/lib/Geant4-10.5.0 -DDICOM_DIR=/usr/local/lib/Geant4-10.5.0 <path-to-source>
 29 
 30 This example will enable DCMTK and/or DICOM_HEAD based on the configuration set when
 31 the DICOM example was installed. The files "Data.dat.old" and "Data.dat.new" follow
 32 the same pattern of being copied to "Data.dat" in the binary directory that is detailed
 33 out in Section 4 of the DICOM README.
 34 
 35 ---> 3) Class Overview
 36 
 37 - Dicom2Run:
 38     - How to save memory with G4VTHitsVector instead of G4THitsMap
 39     - How to implement G4VTHitsVector with objects instead of pointers (saving more memory)
 40     - How to use G4StatAnalysis within G4VTHitsVector (or G4VTHitsMap) to obtain per-voxel
 41     statistics
 42         - G4StatAnalysis provides standard deviation, mean, variance, relative error,
 43         FOM, r2int, r2eff, coefficient of variant, and efficiency in a class that
 44         consumes significantly less memory than G4ConvergenceTester
 45     - Implements scoring accumulation over the course of a run in
 46     G4VTHitsVector<G4StatAnalysis, std::vector<G4StatAnalysis>> Dicom2RunVector
 47         - The first template parameter is the type of the data (i.e. double, G4StatAnalysis, etc.)
 48         and the second template parameter is the underlying storage type -- by
 49         specifying std::vector<G4StatAnalysis>, we override the default storage
 50         format of std::vector<G4StatAnalysis*> which results in memory savings
 51 - Dicom2RunAction:
 52     - Overloads EndOfRunAction(const G4Run*) to print out the same quantities
 53     as DICOM but with the G4StatAnalysis class
 54     - Demonstrates generic iteration of hits containers
 55         - The new iteration scheme over hits containers works
 56         regardless of whether the underlying storage type is a map, multimap, unordered_map,
 57         unordered_multimap, vector, or deque and regardless of whether the data
 58         type stored in the sequential container types (vector and deque) are an object or
 59         or a pointer to an object
 60 - Dicom2PrimaryGeneratorAction:
 61     - Minor variation of DicomPrimaryGeneratorAction that randomizes the initial
 62     direction of the particle
 63 - Dicom2ActionInitialization:
 64     - In addition Dicom2RunAction and Dicom2PrimaryGeneratorAction, this class
 65     instantiates DicomEventAction