## 2 Setup and Methods
### FDDA Refinement
According to the points 1-3, it is necessary to choose a smooth function for signal processing, in which the values of \(I_{1}\)-\(I_{4}\) can be easily variable. Some neuron activation functions in artificial intelligence systems have similar features. The Gaussian Error Linear Unit (GELU) function, for example, has three regions that can be adapted in order to solve this issue by simple inversion (Figure 4a):  
\[y=-\frac{x}{2}\left\{1+\text{erf}\left[\frac{x}{\sqrt{2}}\right]\right\} \tag{3}\]  
where erf is the Gauss error function. The third area, however, does not fully meet the requirements above, so it is proposed to modify this function by combining it with the exponential one (Figure 4b):  
\[\text{windowsize}=A(1-y)w_{\text{max}}+1, \tag{4}\]  
where \(y=(3)\) if \(x<B\) and  
\[y=\frac{1}{1+e^{-3y+C}} \tag{5}\]  
if \(x\geq B\). \[x=\frac{Ds}{s_{t}}-E \tag{6}\]  
where \(s\) is the signal level value in the current point and \(s_{t}\) is the \"threshold\" signal level value. \(A\) = 0.776, \(B\) = 0.55885, \(C\) = 2.3, \(D\) = 9.8, and \(E\) = 5.8--these are empirically selected constants. The parameters of this function can be easily adjusted to various signals obtained using a distributed acoustic sensor. The original FDDA algorithm featured three variable parameters: \(w_{\text{max}}\), \(s\), and the difference between \(s\) and the subsequent signal level value. The updated algorithm, AFDA  
Figure 4: (**a**) Inverse GELU function; (**b**) form of the activation function for the maximum averaging window size of \(w_{\text{max}}\) = 100 counts, and threshold-normalized signal level value of \(s_{t}\) = 0.6.  
activation function dynamic averaging--has two variables: \(w_{\text{max}}\) and \(s_{t}\), the latter of which determines the point where the functions are combined. In both cases, the estimated parameter was SNR. It has been assumed that \(w_{\text{max}}\) should not exceed the length of the dataset. The fact is that, in order to avoid data loss and edge effects, full copies of the original dataset were inserted into the areas to the left and right of it. In turn, the areas around this array were filled with zeros. These areas' sizes were equivalent to half of the maximal window size. In the mentioned side datasets, the influence of the edge effects arising from this did not matter. But when the window size was large (it exceeds the length of the original data array), zero values from the extreme regions overlapped the window during averaging, leading to an attractive-looking image of the processed data: the noise signal became almost zero while the useful signal became significantly highlighted (Figure 5c). Nevertheless, such a result is implausible, since the original signal typically does not include many values of zero. The result obtained in this case was very close to the operation of a threshold filter that cuts off the signal below a given threshold level. If the useful signal is close to the spectrum edges, a large \(w_{\text{max}}\) leads to an influence of this signal on the noise region during averaging and causes various kinds of distortions, for example, an appearance of a \"dip\" in the location of the processed spectrum (Figure 5a) or an emerging of phantom side peaks. However, the areas to the left and right of the original dataset still needed to be filled with something. In general, the useful signal can be located anywhere, and the noise is somewhat different for different spectra. It is not possible to fill this region with noise samples while retaining an acceptable calculation time. The average signal value of the spectrum is also strongly influenced by the high-amplitude useful signal. For this reason, and also since in many cases (including the studied one), the useful signal in the DAS spectrum is represented by much fewer samples than the noise, it was decided to use the spectrum signal level mode. This mode fills only half the maximum averaging window size in the designated areas.