Added functionality to only scan in one or two dimensions in [DepositonPointCharge]. This can be very useful if one for example wants to check arrival time from different positions in the x-y plane.
This introduces the new keyword
scan_coordinates, which takes a combination of the values
x y z. If only one or two values are defined, you get a 1D or 2D scan. The
position parameter is used to set the positions for the directions that are not scanned.
Output plots have been added to show the deposition position in the three planes xy, xz, and yz. The keyword
output_plots_bins_per_um is used to set how many bins per micrometre will be used in the output plots.
An example configuration that scan over the x-z plane with a fixed y-position of 10um is shown below:
source_type = "point"
model = "scan"
scan_coordinates = x z
position = 0um 10um 0um
number_of_charges = 1000
output_plots = true
output_plots_bins_per_um = 5
The output plots of this, for 10 000 events, look like this:
The binning could certainly be improved in this case, but the principle is visible; we scan the position in x and z, while keeping y fixed.
With just 100 events, we get this, which looks nicer:
Finally, an example of "collection time", showing the average time needed to collect 1600 electrons (out of a deposited 1640 electrons) vs different deposition positions in the xy-plane in a rectangular silicon pixel with a highly non-linear electric field. It's super handy to be able to make a scan like this at a fixed z-position.