About secondary ionization

Dear GARFIELD experts,

I am using Garfield to simulate the ionization of the gaseous detector. As it is shown in the following code, there are two loops: The outer one loops on the primary clusters, and the inner one loops on the electrons associated to the primary clusters. As it is well known:
(a) for each primary cluster, it can eject more than one electrons.
(b) if the ejected electrons by the primary ionization have large enough energies, they can form secondary ionizations, and produce more electrons.

I am not sure by calling the GetElectron method of TrackHeed, the accessed electrons contain both process (a) and (b) or not? If it is true, is there a way to distinguish the two processes?


while (track.GetCluster(xc, yc, zc, tc, nc, ec, extra)) {
for (int j = 0; j < nc; ++j) {
track.GetElectron(j, xe, ye, ze, te, ee, dx, dy, dz);

Thank you!

I think @hschindl can help.

by default, step (b) is included, i. e. the electrons in a “cluster” are “conduction” electrons with energies below the ionisation threshold. You can switch off step (b) by calling TrackHeed::DisableDeltaElectronTransport(). Then the electrons in a “cluster” are the delta and Auger electrons knocked out by the primary charged particle.

I’m in the process of trying to modify/simplify the interface such that one can access both the delta/Auger electrons and the low-energy electrons produced in the subsequent cascade…

Thanks a lot for the explanation.

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