3.8. G4Sipm sensitive detector filter

The G4SipmSensitiveDetectorFilter implements the virtual method:

G4bool Accept(const G4Step*)

of its base class G4VSDFilter which returns true if the photon should be scored by the G4SipmSensitiveDetector while considering the effects of dead space and the photon detection efficiency.

3.8.1. Dead space

The photon should not hit the dead space on the Sipm. This is checked by the G4SensitiveDetectorFilter::acceptGeometry() function.

In G4Sipm, the cells of a Sipm are modeled as squares surrounded by a dead space border.

The dead space check can be enabled/disabled by a macro command:

/g4sipm/filter/geometry 1

3.8.2. Photon detection efficiency

This is handled by the G4SensitiveDetectorFilter::acceptPde() function. The photon detection efficiency (PDE) is a function of the photon wavelength. A random number between zero and one is picked from a uniform distribution. If the random number is smaller than the PDE for the photon wavelength, the method returns true.

To account for the reflectivity of the entrance window of the SiPM, the PDE is divided by its transmittance. The transmittance is calculated from a Fresnel-equation for three-layer transmittance whereas for inclined light the transmittance is calculated for unpolarized light. For perpendicular incidence, the transmittance is calculated for parallel polarization following Jackson’s convention.

The PDE check can be enabled/disabled by a macro:

/g4sipm/filter/pde 1

3.8.3. Source

class G4SipmSensitiveDetectorFilter

The detector filter for the G4SipmSensitiveDetector.

Handles the loss in sensitivity by the fill factor and the photon detection efficiency.

Inherits from G4VSDFilter

Public Functions

G4SipmSensitiveDetectorFilter(const G4Sipm *sipm)

Constructor.

Parameters
  • sipm: - the SiPM.

~G4SipmSensitiveDetectorFilter()
G4bool Accept(const G4Step *step) const

Protected Functions

bool acceptPde(double eKin, double theta) const

Dices the acceptance according to the PDE.

Return
bool - true if the photon should be accepted.
Parameters
  • eKin: - the energy of the photon.
  • theta: - the angle of incidence of the photon.

bool acceptGeometry(double x, double y) const

Checks if the photon hits dead space between the single cells.

Return
bool - true if the photon should be accepted.
Parameters
  • x: - the x position of the photon.
  • y: - the y position of the photon.