-
|
Hello, Thank you very much for developing and maintaining this project. I often refer to it during digital signal processing. I am analyzing data from HPGe detector (preamlifier output), after applying a trapezoidal filter, the energy resolution was not satisfactory. Therefore, I try the DPLMS method to synthesize an optimal filter, mainly referencing However, I have encountered some issues. Below are my processing steps and results. I would greatly appreciate any suggestions for checks or debugging. 1. Waveform basic infoSampling rate: 100 MHz 2. Data selection & baseline subtractionSelected Cs-137 full-energy-peak waveforms. For each waveform, baseline is calculated and subtracted: 3. Noise matrix calculationI took the first 9 µs baseline region to compute the noise matrix: 4. Signal alignment & reference matrixAligned waveforms using trigger position, then extracted ±3 µs around the trigger for wfs (size = 600). Here are the aligned waveforms. Computed reference waveform and reference matrix(Flat-top and pile-up constraints are temporarily not considered.) 5. Filter synthesisonly the noise matrix (nmat) and the reference matrix (rmat) are considered for testing. 6. VisualizationFinal results show that y (filtered output) and refy (reference) differ significantly in the rising edge: Question:What could be the possible reasons for the difference between y and refy in the rising edge of the waveform? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
|
Thanks a lot for starting this discussion! From what I can see, the procedure looks mostly correct. I'm a bit uncertain about the indices ( I’d suggest using the functions already defined in the routine whenever possible, to ensure consistency. A general comment about the filter: a flat top will be needed to properly calculate the energy. For any further discussion, feel free to reach out at valerio.dandrea@lngs.infn.it |
Beta Was this translation helpful? Give feedback.




Thanks a lot for starting this discussion! From what I can see, the procedure looks mostly correct.
I'm a bit uncertain about the indices (
floandfhi) used to calculateref_segmentfromref, and later in the filter calculation.In our implementation, they are defined as:
I’d suggest using the functions already defined in the routine whenever possible, to ensure consistency.
A general comment about the filter: a flat top will be needed to properly calculate the energy.
For any further discussion, feel free to reach out at valerio.dandrea@lngs.infn.it