68    fZSliceHeaderMerged(0),
 
  135                                    z = 6.0, a = 12.011 * 
g/
mole );
 
  138                                    z = 1.0, a = 1.008  * 
g/
mole );
 
  141                                    z = 7.0, a = 14.007 * 
g/
mole );
 
  144                                    z = 8.0, a = 16.00  * 
g/
mole );
 
  147                                     z= 11.0, a = 22.98977* 
g/
mole );
 
  150                                    z = 16.0,a = 32.065* 
g/
mole );
 
  153                                     z = 17.0, a = 35.453* 
g/
mole );
 
  156                                    z = 19.0, a = 30.0983* 
g/
mole );
 
  159                                    z = 30.0, a = 30.973976* 
g/
mole );
 
  162                                     z = 26, a = 56.845* 
g/
mole );
 
  165                                     z = 12.0, a = 24.3050* 
g/
mole );
 
  168                                     z = 20.0, a = 40.078* 
g/
mole );
 
  171     G4int numberofElements;
 
  176                           numberofElements = 2 );
 
  182                                             density = 0.217*
g/
cm3,
 
  183                                             numberofElements = 9);
 
  196                                             density = 0.508*
g/
cm3,
 
  197                                             numberofElements = 9 );
 
  210                                                density = 0.967*
g/
cm3,
 
  211                                                numberofElements = 7);
 
  222                                         density = 0.990*
g/
cm3,
 
  223                                         numberofElements = 8 );
 
  236                                        numberofElements = 2 );
 
  242                                         density = 1.061*
g/
cm3,
 
  243                                         numberofElements = 9 );
 
  256                                        density = 1.071*
g/
cm3,
 
  257                                        numberofElements = 9);
 
  270                                                 density = 1.159*
g/
cm3,
 
  271                                                 numberofElements = 12 );
 
  287                                            density = 1.575*
g/
cm3,
 
  288                                            numberofElements = 11 );
 
  321     std::ifstream finDF(dataFile.c_str());
 
  323     if(finDF.good() != 1 ) {
 
  324         G4String descript = 
"Problem reading data file: "+dataFile;
 
  325         G4Exception(
" DicomDetectorConstruction::ReadPhantomData",
 
  332     finDF >> compression; 
 
  353   G4cout << 
" DicomDetectorConstruction::ReadPhantomDataFile opening file "  
  356   std::ifstream fin(fname.c_str(), std::ios_base::in);
 
  357   if( !fin.is_open() ) {
 
  358     G4Exception(
"DicomDetectorConstruction::ReadPhantomDataFile",
 
  361                 G4String(
"File not found " + fname ).c_str());
 
  365   char* part = getenv( 
"DICOM_CHANGE_MATERIAL_DENSITY" );
 
  368   if( densityDiff != -1. ) {
 
  398   for( 
G4int ii = 0; ii < nVoxels; ii++, voxelCopyNo++ ){
 
  409   for( 
G4int ii = 0; ii < nVoxels; ii++, voxelCopyNo++ ){
 
  419     float densityBin = 0.;
 
  420     if( densityDiff != -1.) {
 
  431       if( 
fMaterials[im]->GetName() == newMateName ) {
 
  440       if( densityDiff != -1.) {
 
  442                                                   densityBin, newMateName ) );
 
  447         G4Exception(
"DicomDetectorConstruction::ReadPhantomDataFile",
 
  450                     "Wrong index in material"); 
 
  478   for( 
G4int ii = 0; ii < nelem; ii++ ){
 
  527   G4cout << 
" placing voxel container volume at " << posCentreVoxels << 
G4endl;
 
  551   G4cout << 
"\n\n\n\n\t SET SCORER : " << voxel_logic->
GetName() 
 
  563   G4cout << 
"\n\n\n\n\t CONSTRUCT SD AND FIELD \n\n\n" << 
G4endl;
 
  571   G4String concreteSDname = 
"phantomSD";
 
  572   std::vector<G4String> scorer_names;
 
  573   scorer_names.push_back(concreteSDname);
 
  588   for(std::set<G4LogicalVolume*>::iterator ite = 
scorers.begin(); 
 
G4bool RegisterPrimitive(G4VPrimitiveScorer *)
 
void SetScorer(G4LogicalVolume *voxel_logic)
 
Definition of the DicomDetectorConstruction class. 
 
void MergeZSliceHeaders()
 
CLHEP::Hep3Vector G4ThreeVector
 
Definition of the DicomRunAction class. 
 
G4LogicalVolume * fWorld_logic
 
const G4String & GetName() const 
 
std::vector< DicomPhantomZSliceHeader * > fZSliceHeaders
 
std::set< G4LogicalVolume * > scorers
 
static G4String ConvertToString(G4bool boolVal)
 
virtual G4VPhysicalVolume * Construct()
 
const G4Element * GetElement(G4int iel) const 
 
Definition of the DicomRun class. 
 
DicomPhantomZSliceHeader * fZSliceHeaderMerged
 
G4VPhysicalVolume * fWorld_phys
 
G4LogicalVolume * fContainer_logic
 
void ConstructPhantomContainer()
 
void InitialisationOfMaterials()
 
G4Material * BuildMaterialWithChangingDensity(const G4Material *origMate, float density, G4String newMateName)
 
G4GLOB_DLL std::ostream G4cout
 
virtual void ConstructSDandField()
 
static G4double ConvertToDouble(const char *st)
 
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
G4VPhysicalVolume * fContainer_phys
 
void AddElement(G4Element *element, G4int nAtoms)
 
size_t GetNumberOfElements() const 
 
std::vector< G4Material * > fMaterials
 
std::vector< G4Material * > fOriginalMaterials
 
void ReadPhantomDataFile(const G4String &fname)
 
const G4double * GetFractionVector() const 
 
virtual void ConstructPhantom()=0
 
DicomDetectorConstruction()
 
~DicomDetectorConstruction()
 
G4GLOB_DLL std::ostream G4cerr
 
std::map< G4int, G4double > fDensityDiffs