Warning, /geant4/examples/extended/medical/DICOM/DICOM2/README is written in an unsupported language. File is not indexed.
0001 # DICOM2 Example
0002
0003 ## Introduction
0004
0005 This example demonstrates how to inherit from the DICOM example.
0006 For more information on the DICOM example, see the README in
0007 the DICOM example. In addition to demonstrating inheritance from DICOM,
0008 this example demonstrates method for memory savings, scoring into a sequential
0009 container instead of an associative container, accumulating the scoring
0010 with a statistics class instead of a simple floating point, and generic iteration
0011 over the variety of scoring container storage variants provided by Geant4
0012
0013 ## Class Overview
0014
0015 - Dicom2Run:
0016 - How to save memory with G4VTHitsVector instead of G4THitsMap
0017 - How to implement G4VTHitsVector with objects instead of pointers (saving more memory)
0018 - How to use G4StatAnalysis within G4VTHitsVector (or G4VTHitsMap) to obtain per-voxel
0019 statistics
0020 - G4StatAnalysis provides standard deviation, mean, variance, relative error,
0021 FOM, r2int, r2eff, coefficient of variant, and efficiency in a class that
0022 consumes significantly less memory than G4ConvergenceTester
0023 - Implements scoring accumulation over the course of a run in
0024 G4VTHitsVector<G4StatAnalysis, std::vector<G4StatAnalysis>> Dicom2RunVector
0025 - The first template parameter is the type of the data (i.e. double, G4StatAnalysis, etc.)
0026 and the second template parameter is the underlying storage type -- by
0027 specifying std::vector<G4StatAnalysis>, we override the default storage
0028 format of std::vector<G4StatAnalysis*> which results in memory savings
0029 - Dicom2RunAction:
0030 - Overloads EndOfRunAction(const G4Run*) to print out the same quantities
0031 as DICOM but with the G4StatAnalysis class
0032 - Demonstrates generic iteration of hits containers
0033 - The new iteration scheme over hits containers works
0034 regardless of whether the underlying storage type is a map, multimap, unordered_map,
0035 unordered_multimap, vector, or deque and regardless of whether the data
0036 type stored in the sequential container types (vector and deque) are an object or
0037 or a pointer to an object
0038 - Dicom2PrimaryGeneratorAction:
0039 - Minor variation of DicomPrimaryGeneratorAction that randomizes the initial
0040 direction of the particle
0041 - Dicom2ActionInitialization:
0042 - In addition Dicom2RunAction and Dicom2PrimaryGeneratorAction, this class
0043 instantiates DicomEventAction