Back to home page

EIC code displayed by LXR

 
 

    


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