There are two issues with the newly implemented thin-layer optics physics:
-
Unexpected Absorption/Transmission/Reflection Coefficients: The observed coefficients do not match the expected values, though the discrepancy is minor. The issue likely arises because the reflection at the glass boundary does not account for the imaginary part of the refractive index. Although Geant4 has a function (G4OpBoundaryProcess::GetReflectivity) that correctly calculates the Fresnel coefficients, it seems this function is not being invoked in the current setup.
-
Transmission Angle Calculation: The transmission angle of photons is being calculated using Geant4's default Snell's law, which does not include the imaginary part of the refractive index. The important code can be found starting at line 1777 of OMSimOpBoundaryProcess.cc. The difference introduced by this omission is expected to be very small.
Action Items:
There are two issues with the newly implemented thin-layer optics physics:
Unexpected Absorption/Transmission/Reflection Coefficients: The observed coefficients do not match the expected values, though the discrepancy is minor. The issue likely arises because the reflection at the glass boundary does not account for the imaginary part of the refractive index. Although Geant4 has a function (
G4OpBoundaryProcess::GetReflectivity) that correctly calculates the Fresnel coefficients, it seems this function is not being invoked in the current setup.Transmission Angle Calculation: The transmission angle of photons is being calculated using Geant4's default Snell's law, which does not include the imaginary part of the refractive index. The important code can be found starting at line 1777 of
OMSimOpBoundaryProcess.cc. The difference introduced by this omission is expected to be very small.Action Items:
G4OpBoundaryProcess::GetReflectivityis called at the glass boundary.costhetavariable used to calculate the new photon momentum and confirm that the simulation behaves as expected.