I’m having some issues with the simulation of a muon track signal in a drift chamber cell (similar to the one in my previous topic):
- The cell structure is defined using the native geometry (in particular using
SolidWirefor wires) and the electric field is then computed with
- I use the
DriftLineRKFclass to simulate electron and ion drift and avalanches on the signal wire.
The “regular” electron avalanche size that I find is of
3*10^5 electrons and ions, which is consistent with the gain computation and corresponds to a signal plot of this type:
What I noticed is that in some runs, a small number of electrons (~3 out of all) have oversized avalanches with up to
10^10 particles produced, so the signal plots look like this:
When this happens I get these warning messages:
DriftLineRKF::Avalanche: Cannot retrieve alpha at drift line point x, segment y //or DriftLineRKF::Avalanche: Warning: Integrating the Townsend coefficients would lead to exponential overflow. Avalanche truncated.
As I suspected I could be having issues in the avalanche simulation, I decided to output the avalanche parameters at each step of the computation in
- I’m printing the
dparameters, from which the electron number is calculated (with exponent
exp) and, for each step point, the distance
rfrom the origin in the
x-yplane and the electric field magnitude.
- Once the drift and avalanche simulation ends, I’m printing the final
rand arrival time
te, the gain estimated with
DriftLineRKF::GetGain(), the avalanche size (n_el, n_ion) and the electric field magnitude at the endpoint.
The output below is for a regular avalanche behaviour:
which seems sensible to me.
For the oversized avalanches the behaviour is different:
As my signal wire has a radius of
0.002 cm, the avalanche step seems to be getting inside the wire before moving back, at which point
alpsum jumps by a factor of 10. This then leads to the oversized avalanches.
Is this the expected behaviour for the avalanche simulation? What could be a workaround apart from neglecting the oversized signals in that case?
Any feedback that you may have would be greatly appreciated.
I’m attaching the code and gas file below.
camera_signal_simu.cpp (8.3 KB)
ar_85_co2_15_1atm.txt.zip (7.3 KB)