# Digital Signal Processing of the Inharmonic Complex Tone
## 3 The Developed Application Details
### Submodule MuPI_S
The practical limits arising from the numerical instability of calculating the order and coefficients of the EMQF prototype and transformed filters are \(A_{s}=80\) dB and \(\omega_{p0}=0.495\pi\). The filter order for the Butterworth filter is larger compared to EMQF, and, as a result, the practical limits are further decreased to \(A_{s}=60\) dB and \(\omega_{p0}=0.45\pi\). After all parameters are set, the filter bank design is performed by selecting the \"New bank\" and \"Design Bank\" controls. As a result of the design procedure, additional figures are generated and plotted as part of the bank design control. If the design fails, it can be repeated with less strict requirements. After the design is completed, the processing itself can be initialized by the control \"Processing\". As a result, two new figures are created. One with instant frequencies obtained by frame-by-frame processing of the channel signals for each segment of the input signal (selected in the previous step described in Section 3.1). These curves can be used to verify the frequency glide. The other is with values of the inharmonicity coefficient \(B\) obtained by frame-by-frame processing of the channel  
lated as a ratio between the maximum and mean values in the relevant spectrum range. It is transferred to the next submodule and can be used as a rough estimate of the partial prominence. If the ratio is small, the partial might be missing, and the frequency of the maximum is, in fact, a random value in the frequency range of the channel. By selecting the controls located above the diagram, other components can be added or removed from the plot. The \(x\)-axis is in a linear scale. Although logarithmic frequency scales are commonly used in audio signal processing, for this type of analysis, with partials in a quasi-harmonic array, a linear scale seems more suitable. The \(y\)-axis can be in a linear or logarithmic scale. The components of the plot are as follows:  
* Spectrum of the input signal (segment corresponds to the whole signal) calculated as a whole-length DFT with a rectangular window;
* Spectrum of the input signal (segment corresponds to the whole signal) calculated as a whole-length DFT with selected window, control \"win\";
* Spectrum of the windowed additional segment, control \"seg\";
* Additional lines correspond to the expected positions of the phantom partials that are corollary to non-linear phenomena, controls \"d1\" and \"x2\";
* Gains of equivalent channel filters, control \"Bnk\";
* Frame-by-frame positions of maximal values of channel spectra, control \"oFDs\". This control is activated after the signal has been processed by a designed filter bank, as the values are calculated based on the filtered signal. Darker and smaller markers correspond to the later frames. As an example, the plot of the fundamental frequency in time for two segments is shown in Figure 6, along with the corresponding graphics within the GUI window. It can be seen that both representations show the small frequency change over time. The limits of change are smaller for the second segment. The outputs of this submodule, transferred to the next submodule by a temporarily saved *.mat file, are subchannel signals, parameters of the designed bank, sampling frequency, estimated values of fundamental partial, inharmonicity coefficient \(B\), M2M array values, and the recorded signal file path. Figure 6: The presentation of the frequency glide involves obtaining values of instantaneous frequencies through frame by frame analysis: (**a**) partial frequency in time for two different segments (blue is whole signal and red is segment selected in MuPI_S), while (**b**) markers correspond to (frequency of the maximum, maximum value) pairs. Star (*) corresponds to whole length signal. Red dashed help-line corresponds to expected partial frequency. Circles (o) corresponds to maxima obtained based on frame by frame analysis (one marker per frame). Darker and smaller markers correspond to later windows.