<div dir="ltr"><div class="gmail_extra">
















<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> Frequency response is
normally computed in terms of</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> magnitude and</span><span style="font-size:9.5pt;font-family:Arial"> <span style="background-image:initial;background-repeat:initial">phase--because the result of
applying</span></span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> a filter is to multiply
the</span><span style="font-size:9.5pt;font-family:Arial"> <span style="background-image:initial;background-repeat:initial">magnitudes and
shift (add) the</span></span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> phases.</span><span style="font-size:9.5pt;font-family:Arial"><br>
<br>
</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial">That seems clear for me. I know how to get
both mag/phase but my patch is simplified to get the magnitude only. I also
know how to get mag & phase with real/Imaginary parts too. Where I get
stuck is the z transform deal. More precisely, adapting the patch to a complex
version. <br>
<br>
For instance, it works on plotting the freq response of a real pole with an
input of the filter coefficient. But I’d like to plot the freq response of
complex pole, from the real and imaginary part of the coefficient.</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial"> </span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> To put it in terms of
'f' in Hz relative to the</span><span style="font-size:9.5pt;font-family:Arial"> <span style="background-image:initial;background-repeat:initial">sampling frequency, use</span><br>
<span style="background-image:initial;background-repeat:initial">> w=(2*pi/Fs) * f,  with Fs=sampling
frequency in Hz</span></span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial"> </span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial">Yeah, the patch already calculates frequency
in rad/sample. More over, it uses complex frequencies, which are the cosine and
sine of the freq in rad/sample.</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial"> </span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial">Now, as I said before, I know the transfer
function of [cpole~] is </span><span style="font-size:9.5pt;font-family:Arial;color:rgb(80,0,80)">is H(Z) = 1/(1 -
aZ^-1) – just like the [rpole~] by the way – but that is not clear on how to
deal with a complex coefficient.</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial"> <br>
<span style="background-image:initial;background-repeat:initial">> The next problem: you get a complex number
in the denominator.</span></span><span style="font-size:9.5pt;font-family:Arial;color:rgb(80,0,80)"></span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial"> </span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">I guess you mean what I just
said :)</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial"><br>
<span style="background-image:initial;background-repeat:initial">> Multiply numerator and denominator by the
conjugate and split into</span></span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> real and imaginary parts
before applying the magnitude and phase</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial">> <span style="background-image:initial;background-repeat:initial">calculations
to get your spectrum.  Your coefficient 'a'  is a complex</span></span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> number, so work
carefully with the conjugate math to separate the</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">> real</span><span style="font-size:9.5pt;font-family:Arial"> <span style="background-image:initial;background-repeat:initial">and imaginary parts.</span><br>

<br>
<span style="background-image:initial;background-repeat:initial">well, if this is the solution to my problem, I
don’t think I could follow what you meant.</span></span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial"> </span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">Anyway, I’m attaching a much
more objective and simpler version of the patch I’ve sent before. It also has a
descriptive text that explains the patch and the issue. I think I’m really
close to nailing this. I just need a tiny hand with the math.</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial"> </span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">Thanks</span></p>

<p class="MsoNormal"><span style="font-size:9.5pt;font-family:Arial;background-image:initial;background-repeat:initial">Alex</span><span style="font-size:10pt;font-family:Times"></span></p>

</div></div>