You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
TRAP FILTER: currently for loop, change to DSP filter -> can somebody do it because it seems that I can procrastinate forever from this because I'm scared of DSP filters. @oschulz@fhagemann ? It's the slowest stupidest part of the code currently that prevents us from benchmarking the framework, which is important to estimate production "cost"
Noise from data: currently extracts baseline from all waveforms that have flat baselines (i.e. no pileup) to create "baseline catalog" -> works bad because then the baseline is shorter than the waveform we generated, cannot simply slap it on top, need to "elongate", defeats all purpose -> need not to extract baselines but find waveforms that are all baseline and no signal (1 - happens in phy acquisition by definition, 2 - was told there is a sort of a no-trigger trigger that just records regularly) -> @oschulz can someone from your Julia DSP side teach me how to do that, how to find flat baseline-waveforms?
Noise is implemented in quite a convoluted way. Each "component" of elec chain can have a noise contribution. This is convenient if we want to add component like "cable" which is a separate source of noise with different parameters from preamp. However, I think it would be more meaningful to just have ONE noise model which could have multiple Gaussians or whatever we want, which is applied after the PreAmp CR-RC differentiation and stuff, and before digitization. Noise as part of "component" doesn't make sense to me because FADC is also a component, but does it contribute noise in our model? ADC noise? -> I think I will discuss it with Julieta and her L1000 team, they are interested in this because it's more important for L1000 and AISIC design, nobody in L200 cares about this stuff right now.
FADC bits as settings? (currently UInt16 hard coded) Or better separate type (e.g. Struck)?
Group effects via convolution: should be added as keyword in simulation settings dict, propagated through SSDSimulator into ideal pulse simulation in pss.jl, making sure they are turned off in SSD itself, and then convolution is called
When adding a new preamp type, bug when preamp_gain() from temp_utils.jl is called, as it's only made for GenericPrAmp. Should be fixed to work for any PreAmp but then requires each struct of subtype of PreAmp to have a gain parameter . Also question why is it even needed to calculate gain based on offset and max of UInt16 etc. Gain is easily extracted by checking ADC value of FEP in given detector in dsp files on storage, doesn't need to be calculated based on offset. This situation happens when NoiseFromData is used (which currently has never been actually used), i.e. when baseline catalog is being read to sample data baselines. So right now for NoiseFromSim it's simply enough to fix the bug, replacing type GenericPreAmp with just PreAmp
The text was updated successfully, but these errors were encountered:
ToDo items from the pss->raw (elecsim) stage
SSDSimulator
into ideal pulse simulation inpss.jl
, making sure they are turned off in SSD itself, and then convolution is calledpreamp_gain()
fromtemp_utils.jl
is called, as it's only made forGenericPrAmp
. Should be fixed to work for anyPreAmp
but then requires each struct of subtype ofPreAmp
to have again
parameter . Also question why is it even needed to calculate gain based on offset and max of UInt16 etc. Gain is easily extracted by checking ADC value of FEP in given detector in dsp files on storage, doesn't need to be calculated based on offset. This situation happens whenNoiseFromData
is used (which currently has never been actually used), i.e. when baseline catalog is being read to sample data baselines. So right now forNoiseFromSim
it's simply enough to fix the bug, replacing typeGenericPreAmp
with justPreAmp
The text was updated successfully, but these errors were encountered: