Message: Re: Sciintillation Emission Spectrum table Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

More Re: Sciintillation Emission Spectrum table 

Forum: Processes Involving Optical Photons
Re: Question Sciintillation Emission Spectrum table (Ron Mathis)
Re: Feedback Re: Sciintillation Emission Spectrum table (Gumplinger Peter)
Date: 22 Jan, 2010
From: Ron Mathis <Ron Mathis>

On Thu, 21 Jan 2010 21:36:30 GMT, Gumplinger Peter wrote:
> Hello Ron,
> 
> Can you please check what scintillation photon energies are sampled and
> put on the stack (by putting the histogram in StackingAction). The code
> for interpolation of the MaterialPropertiesVector has not changed for a
> very long time and is a simple linear interpolation between points:
> 
> http://www-geant4.kek.jp/lxr/source/materials/src/G4MaterialPropertyVector.cc#L154
> 
> From this intensity distribution an integral intensity distribution
> vector is made at:
> 
> http://www-geant4.kek.jp/lxr/source/processes/electromagnetic/xrays/src/G4Scintillation.cc#L486
> 
> where the integration between points is easy by assuming a linear
> increase. The photon energy points in that vector are the same as your
> input. In any event, I can't see how gaps can result from sampling this
> integral table at:
> 
> http://www-geant4.kek.jp/lxr/source/processes/electromagnetic/xrays/src/G4Scintillation.cc#L301
> 
> where the G4PhysicsOrderedFreeVector is also linear interpolated:
> 
> http://www-geant4.kek.jp/lxr/source/global/management/src/G4PhysicsOrderedFreeVector.cc#L148
> 
> There was however a small change made to the G4PhysicsOrderedFreeVector
> on Jul 03, 2009 V.Ivanchenko (global-V09-02-06). What happens if you
> changed the 9.3 version of that class by the 9.2 version?
> 
> Peter
> 

Peter, As you suggested I generated a histogram of all Optical Photons from StackingAction. The number of entries in the scintillation table was reduced to 14. The code in StackingAction is

G4ClassificationOfNewTrack ExN02StackingAction::
				ClassifyNewTrack(const G4Track * aTrack)
{
	if(aTrack->GetDefinition() == G4OpticalPhoton::OpticalPhotonDefinition())
	{   // particle is optical photon
	    if(aTrack->GetParentID()>0)  // particle is secondary
	    { 
	    G4double optPhEnergy=0., wvlength = 0.;
	    G4int wavelength =0;
	    optPhEnergy = aTrack->GetKineticEnergy();
	    wvlength = (((1.24e3)/(optPhEnergy/eV))+ 0.5 )*nm; //To nearest nm
	    wavelength = (wvlength/nm); //convert to int to use as index
	    runManager->IncrementTotalOPArray(wavelength); //program in RunAction	    
	    }
	}

And the code in RunAction is

 void ExN02RunAction::IncrementTotalOPArray(G4int wl)
  {
    if( wl < oPArraySize )    
    TotalOPArray[wl]++; 
    totOpEntries++;
  }

The resulting plot is attached. I understand that this should be very straightforward which is why this result is confusing.

Thank you for your help.

Ron

   Attachment:
      http://hypernews.slac.stanford.edu/HyperNews/geant4/get/AUX/2010/01/22/10.15-28313-100122TestResult.odg

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

1 Warning: Re: Sciintillation Emission Spectrum table   (Gumplinger Peter - 22 Jan, 2010)
(_ Feedback: Re: Sciintillation Emission Spectrum table   (Ron Mathis - 25 Jan, 2010)
 Add Message Add Message
to: "Re: Sciintillation Emission Spectrum table"

 Subscribe Subscribe

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