Message: Optical photons stopping at boundary of scintillator Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Optical photons stopping at boundary of scintillator 

Forum: Particles
Date: 18 Nov, 2010
From: Mario <Mario>

Hello folks,

I started last week my diploma thesis in simulation of the Muon Veto Detector of NA62. So I am introducing myself to geant4.

I am trying to build a scintillator and the production of optical photons is working so far.

   Attachment:
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2010/11/18/09.57-47523-2010_11_10.png

The problem: The photons stop at the boundary of my scintillator. There is no transmission or reflection. They just stop. I tried to add some surface options, but I am not sure how...

Maybe someone has a hint.

Thanks!

Here some extract of my DetectorConstruction Code:

G4Material* Air = 
 new G4Material("Air"  , density= 1.290*mg/cm3, ncomponents=2);
 Air->AddElement(N, fractionmass=0.7);
 Air->AddElement(O, fractionmass=0.3);

  //Define POPOP
  std::vector<G4String> POPOPEl(4);
  std::vector<G4int> POPOPNA(4);
  POPOPEl[0] = "C"; POPOPNA[0] = 24;
  POPOPEl[1] = "O"; POPOPNA[1] = 2;
  POPOPEl[2] = "H"; POPOPNA[2] = 16;
  POPOPEl[3] = "N"; POPOPNA[3] = 2;
  nistMgr->ConstructNewMaterial("POPOP",POPOPEl,POPOPNA,1.204,true);

// Define p-Terphenyl
  std::vector<G4String> pTerphenylEl(2);
  std::vector<G4int> pTerphenylNA(2);
  pTerphenylEl[0] = "C"; pTerphenylNA[0] = 18;
  pTerphenylEl[1] = "H"; pTerphenylNA[1] = 14;
  nistMgr->ConstructNewMaterial("pTerphenyl",pTerphenylEl,pTerphenylNA,1.23,true);

//Define Scintillator material
 G4Material* Scint = new G4Material("Scint",1.06*g/cm3,3);
  Scint->AddMaterial(G4Material::GetMaterial("G4_POLYSTYRENE"), 97.7*perCent); // 98%
  Scint->AddMaterial(G4Material::GetMaterial("POPOP"),  0.3*perCent); // 0.3%
  Scint->AddMaterial(G4Material::GetMaterial("pTerphenyl"),  2.0*perCent); // 2%

  // Add optical properties to Scint
  // Number of bins for Scintillator material properties table
  const G4int nEntries = 5;

  G4double PhotonEnergy[nEntries] =
            { 2.52*eV, 2.8*eV, 3*eV, 3.2*eV, 3.35*eV};
  G4double RefractiveIndexScint[nEntries] =
               { 1.5, 1.5,  1.5, 1.5, 1.5 };
     G4double AbsorptionScint[nEntries] =
     	 	 	 {0.5*m,  0.5*m,  0.5*m, 0.5*m, 0.5*m};
     G4double ScintilFast[nEntries] =
               { 0.0, 0.125, 0.5, 0.25, 0.125};
  // Define property table for Scint
  G4MaterialPropertiesTable* myMPTScint = new G4MaterialPropertiesTable();
  myMPTScint->AddProperty("RINDEX",PhotonEnergy, RefractiveIndexScint, nEntries);
  myMPTScint->AddProperty("ABSLENGTH",PhotonEnergy, AbsorptionScint, nEntries);
  myMPTScint->AddProperty("FASTCOMPONENT",PhotonEnergy, ScintilFast, nEntries);
  myMPTScint->AddConstProperty("SCINTILLATIONYIELD",50/MeV);
  myMPTScint->AddConstProperty("RESOLUTIONSCALE",1.0);
  myMPTScint->AddConstProperty("FASTTIMECONSTANT", 1.*ns);

  myMPTScint->AddConstProperty("YIELDRATIO",0.8);
  Scint->SetMaterialPropertiesTable(myMPTScint);

  // Volumes--------------------------------------------------------
  //
  // The world volume -> expHall
  // We make a 1m3 box
  G4double expHall_x = 1.0*m;
  G4double expHall_y = 1.0*m;
  G4double expHall_z = 1.0*m;

  G4Box* experimentalHall_box
    = new G4Box("expHall_box",expHall_x/2. ,expHall_y/2. ,expHall_z/2. );

  experimentalHall_log = new G4LogicalVolume(experimentalHall_box,
                                             Air,"expHall_log",0,0,0);

  G4VPhysicalVolume* experimentalHall_phys
      = new G4PVPlacement(0,                       // no rotation
                          G4ThreeVector(0.,0.,0.), // translation position
                          experimentalHall_log,    // its logical volume
                          "expHall",               // its name
                          0,                       // its mother volume
                          false,                   // no boolean operations
                          0);                      // its copy number

  // The scintillator-----------------------------------------------------

  G4Box* scintillator_box
    = new G4Box("sci_box", // Name
		sci_x / 2. , // x lenght
		sci_y / 2. , // y lenght
		sci_z / 2.  // z length
		);

  scintillator_log = new G4LogicalVolume(scintillator_box, //
				Scint,            // material
				"sci_log",        // name ?
				0,0,0            // coordinates?
				);

  scintillator_phys
    = new G4PVPlacement(0,                         // no rotation
                          G4ThreeVector(0.,0.,0.), // translation position
                          scintillator_log,        // its logical volume
                          "sci",                   // its name
                          experimentalHall_log,    // its mother volume
                          false,                   // no boolean operations
                          0);                      // its copy number

  //---------------------------------------------------------------------------------------------

  // sensitive zone--------------------------------------------------------------------

  G4SDManager* SDman = G4SDManager::GetSDMpointer();

  G4String scintillatorSDname = "scintillatorSD";
  scintillatorTrackerSD* aTrackerSD = new scintillatorTrackerSD( scintillatorSDname );
  SDman->AddNewDetector( aTrackerSD );
  scintillator_log->SetSensitiveDetector( aTrackerSD );

   //----------------------------------------------------------------------

  	G4OpticalSurface* TiO2Surface = new G4OpticalSurface("TiO2Surface",
                                                         glisur,
                                                         ground,
                                                         dielectric_metal,
                                                         1.); //extrusionPolish

    G4MaterialPropertiesTable* TiO2SurfaceProperty =
                                               new G4MaterialPropertiesTable();

    G4double p_TiO2[2] = {2.00*eV, 3.47*eV};
    G4double refl_TiO2[2] = {1.,1.};
    G4double effi_TiO2[2] = {0, 0};

    TiO2SurfaceProperty -> AddProperty("REFLECTIVITY",p_TiO2,refl_TiO2,2);
    TiO2SurfaceProperty -> AddProperty("EFFICIENCY",p_TiO2,effi_TiO2,2);

    TiO2Surface -> SetMaterialPropertiesTable(TiO2SurfaceProperty);

// Scint Surface

    G4OpticalSurface* OpScintSurface = new G4OpticalSurface("OpScintSurface");
      OpScintSurface->SetType(dielectric_dielectric);
      OpScintSurface->SetFinish(ground);
      OpScintSurface->SetModel(unified);

      G4LogicalBorderSurface* ScintSurface =
                                     new G4LogicalBorderSurface("OpScintSurface",
                                     scintillator_phys,experimentalHall_phys,OpScintSurface);

      const G4int num = 2;
        G4double Ephoton[num] = {2.5*eV, 3.5*eV};

        //OpticalScintSurface
        G4double RefractiveIndex[num] = {1.5, 1.5};
        G4double SpecularLobe[num]    = {0.3, 0.3};
        G4double SpecularSpike[num]   = {0.2, 0.2};
        G4double Backscatter[num]     = {0.2, 0.2};

        G4MaterialPropertiesTable* myST1 = new G4MaterialPropertiesTable();

        myST1->AddProperty("RINDEX",                Ephoton, RefractiveIndex, num);
        myST1->AddProperty("SPECULARLOBECONSTANT",  Ephoton, SpecularLobe,    num);
        myST1->AddProperty("SPECULARSPIKECONSTANT", Ephoton, SpecularSpike,   num);
        myST1->AddProperty("BACKSCATTERCONSTANT",   Ephoton, Backscatter,     num);

        OpScintSurface->SetMaterialPropertiesTable(myST1);

        new G4LogicalSkinSurface("TiO2Surface",scintillator_log,OpScintSurface);

  //--------------------------------------------------------------------

  return experimentalHall_phys;

Inline Depth:
 1 1
 All All
Outline Depth:
 1 1
 2 2
 All All
Add message: (add)

1 Feedback: Re: Optical photons stopping at boundary of scintillator   (Gumplinger Peter - 18 Nov, 2010)
(_ Question: Re: Optical photons stopping at boundary of scintillator   (Mario - 19 Nov, 2010)
(_ Feedback: Re: Optical photons stopping at boundary of scintillator   (Gumplinger Peter - 19 Nov, 2010)
 Add Message Add Message
to: "Optical photons stopping at boundary of scintillator"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]