Scintillator with tyvek skin

Please fill out the following information to help in answering your question, and also see tips for posting code snippets. If you don’t provide this information it will take more time to help with your problem!

_Geant4 Version:11.2.0
_Operating System:AlmaLinux release 9.3
_Compiler/Version:Visual Studio Code 1.88.1
_CMake Version:3.20.2

Dear experts,
I am running the simulation of optical photons produced by a muon hitting a scintillator layer. I want to simulate the behavior of optical photons produced in the scintillator layer surrounded by a layer of Tyvek, everything in a world made of air, so I went through the Forum and the Geant4 Book to understand all the different possible layouts. I want check if I have correctly understood some points.

From my understanding, I could have two options to simulate the surface between scintillator and Tyvek (assuming unified model):

  1. simulate it with the dielectric_dielectric type, ground or polished, by specifying the Tyvek R index.
    In this case, I am assuming that in total there are three materials: the scintillator | Tyvek | air.
    If I keep the reflectivity coefficient to 1 and transmission 0 in the scint-tyvek surface definition, the snell’s law is used to calculate photons behavior using the scintillator and the Tyvek R indexes (and ph incidence angles).
    It is not clear to me if in the tyvek | air interface the snell’s law is used as well, according to their refractive indexes.
    R=1,T=0 in this case doesn’t mean that photons are 100% reflected, as in the dielectric_metal, but just that the snell’s law is used.

  2. simulate it with the dielectric_dielectric type, groundbackpainted.
    In this case I am assuming that there are four materials in the simulation: scintillator | tyvek | paint | air. Is it correct?
    In this second case, if I explicit the surface R index, is it applied to the gap material between the surface and the paint (tyvek)?
    Furthermore, I find confusing the sentence “Reflection off the wrapper is set with reflectivity” on the UNIFIED graph. As far as I understood, the snell’s law should take place between scintillator->tyvek, and Lambertian reflection should take place at the paint.
    So, in this case it is not clear what is the Reflectivity parameter (R) in this case (it refers to scintillator->tyvek as in case 1) or it is the probability of photons to be reflected by the paint?)

If someone could give a feedback to understand if I am reasoning in a correct way, should be great!

Thank you,


You’re on the right track. If in reality what you have is
scintillator | tyvek | air
then there are several ways of approaching this.

  1. Model in detail. (same idea as your 1) Define 3 materials (scint, tyvek, air) and 2 dielectric-dielectric surfaces (scint-tyvek, tyvek-air). Give a refractive index to the 3 materials. Then Snell’s law will be used at both surfaces.
  2. Use groundbackpainted (same idea as your 2) Yes, in this case the surface refractive index corresponds to the tyvek. But you don’t have any paint in reality, so you would have to approximate the tyvek-air surface. You can adjust the fraction of photons that reflect, transmit, or absorb at the tyvek-air surface by specifying the material parameters of the (groundbackpainted) surface. This is what “Reflection off the wrapper is set with reflectivity” means. That is, if you specify a surface REFLECTIVITY, that value is used for tyvek-air, not scint-tyvek. You won’t get any refraction at the tyvek-air surface this way.
  3. There are scint-tyvek-air lookup tables available:
    Physics Processes — Book For Application Developers 11.2 documentation
1 Like

Thank you for your reply!
I know the existence of this third possibility, but I read in arXiv:1612.05162v1 that “Altogether, using LUT surfaces is therefore not recommended, at least for the simulation of wrappings.”
That’s why I focused on studying the UNIFIED model.
For sure I should go through LUT surface and test it to decide if in first approximation they can be valid for my case.
However, I couldn’t find a piece of code where parameters for the different LUT surfaces are shown. I mean, I would expect a piece of code where the measured angular distributions mentioned in the Book are defined. Do you know where I can find it maybe?

Thank you very much for your support!

Moreover, it is not fully clear to me how many surfaces you would define in your point 1.
I mean, I would define one single dielectric-dielectric Skinsurface for the scintillator, specifying the Rindex and roughness of the tyvek. In this case it should be necessary to define the scintillator and the air material and volumes only in the code, since the tyvek properties interesting for refraction are specified within the Skinsurface. In this way the code should calculate Snell’s law between tyvek|air automatically, right?

Should I define them in a different way by using three different Rindex, material and volumes and specify two bordersurfaces?
In this latter case it is not clear to me where to specify the tyvek roughness.

Thank you,

Let’s start with option 1, and assume we want to model transport in all three volumes.

At a minimum there needs to be refractive indices for scint, tyvek, and air defined. In this case there will be ideal (smooth) dielectric-dielectric surfaces at the scint-tyvek and tyvek-air surfaces. Then, to model the scattering more realistically, for one or both surfaces you may define either a logical border surface or skin surface. You can attach parameters like roughness and specular lobe coefficient to these surfaces.

If you are interested in photons that interact at both scint-tyvek and tyvek-air surfaces, then probably you want to defined the roughness on both surfaces.

Another way of saying this is it’s not the tyvek that’s rough, it’s the scint-tyvek (say) surface.

Thank you, I took some time to think about.

From my previous studies I was convinced that the definition of just two volumes (scintillator surrounded by air) and one ground dielectric-dielectric skin surface (around the scintillator, and specifying the tyvek Rindex as surface property) was correctly simulating the transport of optical photons through all the volumes: both in scintillator | tyvek and tyvek | air surfaces.
In other worlds, I thought that the simulation of the “thin tyvek layer”, defined in a single skinsurface around the scintillator, was giving enough informations to geant4, to automatically simulate even the behavior of optical photons though the tyvek| air (snell’s law), without the need of additional surface for tyvek|air.

From this conversation I am understanding that the only way to simulate opt up to air is to define all three volumes and two surfaces.

Thank you for your patience!


P.S. Furthermore, I am curious if you have any comment/suggestion about my other reply above concerning LUT (Scintillator with tyvek skin - #3 by lbuoninc).

I fixed one or two bugs with the LUTs several years ago (after the Arxiv paper), but haven’t received any feedback. I don’t know if the LUTs work as expected or not. If you want to try, the easiest way to start would be to use OpNovice2 example and the relevant part of boundary.mac macro.

I don’t know what you mean by you can’t find any code giving the angular distributions. The measurements are in the paper cited in the Book for Application Developers. Let me know if that’s not what you’re looking for.