Relationship between magnitude response and phase response for minimum phase is:
Phase plots are obtained from Hilbert transform of real magnitude values. Input to Hilbert transform was a vector (array) of real magnitude values in dB. Magnitude vs. frequency (Fig. 1.) is a raised-cosine function defining a Mesa filter with plateau.
I obtained phase values in two ways. In Fig. 2. the resulting phase plot (phase from the previous formula, not the phase from analytic signal) is obtained from SciLab using command
x = -hilbert(xr), printing
imag(x). Variable xr is vector holding magnitude values. In Fig. 3. the phase plot (phase from the previous formula, not the phase from analytic signal) is obtained from C implementation of Hilbert transform taken from ht.c file on the web. Hilbert transform here is implemented as convolution and the values are in
Although similar, the phase plots on Fig. 2. and Fig. 3. are quite different. Any insights why I am getting two different graphs of phase?