Effect of efficiency in optical photon

Dear All,
I am trying to simulate plastic scintillator based application. Which looks as follow.

Scintillator attached to light guide (on both short end side). Successively, optical glue, quartz, bialkali photo cathode.

Surface between quartz- photo cathode is dielectric_metal. Property as follow.

G4OpticalSurface* PCsurf=  new G4OpticalSurface("RefPC1_gre",glisur,polished ,dielectric_metal,1.0); 

new G4LogicalBorderSurface(“RefPC1_gre”,physQuartz_L,physPhotocathod_L,PCsurf);
new G4LogicalBorderSurface(“RefPC2_gre”,physQuartz_R,physPhotocathod_R,PCsurf);

G4MaterialPropertiesTable* OpRefPCGr1= new G4MaterialPropertiesTable();
G4double PC_QE[num] = {0.03 ,0.03 ,0.04 ,0.05 ,0.06 ,0.07 ,0.08 ,0.09 ,0.11 ,0.12 ,0.14 ,0.15 ,0.17 ,
0.19 ,0.21 ,0.22 ,0.24 ,0.26 ,0.27 ,0.28 ,0.28 ,0.28 ,0.28 ,0.28 ,0.27 ,0.25 };

// G4double PC_QE[num] = {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 };

 G4double PC_RI_R[num] ={2.987, 3.002, 3.015, 3.047, 3.080, 3.127, 3.201, 3.246, 3.247, 3.102, 3.014, 3.000, 3.000,
                        3.009, 2.948, 2.819, 2.714, 2.617, 2.484, 2.332, 2.208, 2.025, 2.020, 2.020, 2.020, 2.020};                 	 

G4double PC_RI_C[num] ={0.391, 0.410, 0.427, 0.455, 0.485, 0.538, 0.615, 0.747, 0.876, 1.047, 1.066, 1.073, 1.102,
1.247, 1.409, 1.465, 1.493, 1.538, 1.642, 1.714, 1.687, 1.681, 1.680, 1.680, 1.680, 1.680};
G4double PC_reflecta[num]={0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,
0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.};
/{0.22, 0.22, 0.22, 0.23, 0.24, 0.25, 0.25, 0.26, 0.25, 0.22, 0.21, 0.21, 0.21,
0.22, 0.21, 0.20, 0.19, 0.19, 0.18, 0.18, 0.17, 0.16, 0.15, 0.15, 0.15, 0.14};
/
// G4double PC_SPECULARSPIKECONSTANT[num] = {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};
OpRefPCGr1->AddProperty(“REALRINDEX”, pp,PC_RI_R, num);
OpRefPCGr1->AddProperty(“IMAGINARYRINDEX”,pp,PC_RI_C, num);
OpRefPCGr1->AddProperty(“EFFICIENCY”,pp,PC_QE,num);
OpRefPCGr1->AddProperty(“REFLECTIVITY”,pp,PC_reflecta,num);
// OpRefPCGr1->AddProperty(“SPECULARSPIKECONSTANT”, pp, PC_SPECULARSPIKECONSTANT,num);
PCsurf->SetMaterialPropertiesTable(OpRefPCGr1);

But Problem is i am not able to see effect of "Efficiency"

Do I need to define “absorption length” for Photocathode material as well?

PS: Physics list as follow
G4VModularPhysicsList* physicsList = new FTFP_BERT;
physicsList->ReplacePhysics(new G4EmStandardPhysics_option4());
physicsList->RegisterPhysics(new G4DecayPhysics());
physicsList->RegisterPhysics(new G4RadioactiveDecayPhysics());
G4OpticalPhysics* opticalPhysics = new G4OpticalPhysics();
opticalPhysics->SetTrackSecondariesFirst(kScintillation, true);
physicsList->RegisterPhysics(opticalPhysics);

1 Like

How are you trying to see detection (EFFICIENCY)? All that happens is the particle energy is deposited, the sensitive detector may be triggered, and the boundary process status is set to Detect.

Your code looks like it should work.

You can modify the macro boundary.mac with example OpNovice2 to have the same material properties as your code. The example reports the number of each type of boundary process status.


filling event by event number of photons detected at any of photo cathode.

I think, peak position should shift depending upon efficiency but I am getting same position irrespective of efficiency.

If a photon is absorbed at the surface, a random number in the interval [0,1) is chosen. If this random number is less than EFFICIENCY, the photon is detected. So, changing EFFICIENCY should change the fraction of the absorbed photons that are detected, but not anything else.

So, this fraction should be significant.
Like if I am using photon energy dependent efficiency which peak around ~30%,

While other constant 100 % for all photon energy.
this should have significant dependence.
Am I correct or still I am missing something?

There’s a lot that can go wrong with material properties. I don’t see anything obviously wrong though. If I were troubleshooting I’d try setting EFFICIENCY to all 0, and you shouldn’t see any detection. Or try to reproduce with OpNovice2.

1 Like

Hi,
I’ve been struggling with similar issues in the past.
You’d indeed expect the total hits to go down for lower efficiencies, so the peak should move.
Could it be that you create your G4LogicalBorderSurface before adding material properties to your G4OpticalSurface?
The rest of the code seems fine to me indeed.
Cheers,
Koen

Hi Koen!!
Thank you for reply
Yes, I think detector construction as whole itself one class, so it shouldn’t matter.
I can be wrong.
but even I tried keeping G4LogicalBorderSurface at the end of Material properties. I doesn’t gave any effect.