Minimum-phase filter design often requires creating a minimum-phase
desired frequency response
(usually starting from a real
amplitude response
). As is clear from
§12.2, any filter transfer function
can be made
minimum-phase, in principle, by completely factoring
and
``reflecting'' all zeros
for which
inside the
unit circle, i.e., replacing
by
. However, factoring a
polynomial this large can be impractical. An approximate
``non-parametric'' method is based on the property of the
complex cepstrum (see §8.4)
that each minimum-phase zero in the spectrum gives rise to a causal
exponential in the cepstrum, while each non-minimum-phase zero
corresponds to an anti-causal exponential in the cepstrum
[60]. Therefore, by computing the cepstrum and
converting anti-causal exponentials to causal exponentials, the
corresponding spectrum is converted to minimum-phase form.
A matlab function mps.m which carries out this method is listed in §H.11.13.3 It works well for smooth desired frequency response curves. Specifically, the inverse DFT of the log magnitude frequency response should not be longer than the number of samples in the frequency response (no ``time aliasing'').