JuliaPhysics/SolidStateDetectors.jl

Improve internal representation of Events / Hits / Charge clouds

fhagemann opened this issue · 1 comments

  • Using StructArrays (e.g. Path = Vector{CartesianPoint{T})
  • Changing the naming of simulate! to something more specific
  • Adjust simulate_waveforms for handling Tables
  • Proper implementation of add_fano_noise
  • Have a clear simulation chain: energy deposits -> charge deposits -> clustering + charge clouds -> drift -> waveforms
  • Proper models for diffusion and self-repulsion and allowing the user to choose

We should also think of a way to (optionally) pass the time of the charge carrier creation to simulate pile-up events, e.g.

pos = [CartesianPoint{T}(0,0,0), CartesianPoint{T}(0.1,0.1,0.1)]
E = [1000u"keV", 1200u"keV"]
t = [0u"ns", 300u"ns"]
evt = Event(pos, E, t)
                             ____________
                            /
             ______________/
            /
___________/
          0ns           300ns