How to simulate scintillator+SiPM

Hi all,
I build up a simulation of scintillator+SiPM. I defined two LogicalVomues, one for scintillator and the other for SiPM. After define the properties of the scintillator and mirror surface, I made some test. If I put the scintillator and SiPM close to each other without any gap, the SiPM can register 555 photons of each event in average, which is expected. But If I put the scintillator and SiPM have 1mm gap, then almost no photon can enter into the SiPM, with only 0.84 photons of one event recorded in average. Part of codes are

  BC400= nist->FindOrBuildMaterial("G4_PLASTIC_SC_VINYLTOLUENE");
  G4MaterialPropertiesTable *mptBC400=new G4MaterialPropertiesTable();
  mirrorSurface = new G4OpticalSurface("mirrorSurface");
  G4double reflectivity[2] = {0.98, 0.98};
  G4MaterialPropertiesTable *mptMirror = new G4MaterialPropertiesTable();
  mptMirror->AddProperty("REFLECTIVITY", energy_ph, reflectivity, 2);

When we simulate a scintillator+ SiPM, shoud we put them close to each other without any gap to recond the photons? I don’t know is there any other method to deal with the problem. By the way, Are the properties defined in my codes correct? If I have used “groundteflonair”, do I still need to set up the reflectivity by manual.

1 Like

You need to make sure that you have indices of refraction for all of your materials that photons can travel through. But if you have an airgap, you would expect some photons to reflect in the scintillator. In fact, you have set your reflectivity to 0.98, so I would expect that your SiPM will reflect 98% of photons.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.