Finding implicit form of Nyquist curve without using a general algorithm for Groebner bases.

123 Views Asked by At

According to Conversion Methods Between Parametric and Implicit Curves and Surfaces, by Christoph N1. Hoffmann p.3

Every plane parametric curve can be expressed as an implicit curve.

In problems related to control theory, we often need to create a Nyquist plot from a transfer function. To do so, we first substitute $j\omega$ for $s$ in the transfer function. (Engineers use $j$ where mathematicians use $i$.)

For example, if we are given the transfer function

$$F(s)=\frac{1}{as^2 + bs + c}$$

we generate the new function

$$G(\omega)=\frac{1}{a(j\omega)^2+b(j\omega)+c} =\frac{1}{(c-a\omega^2)+jb\omega}=\frac{(c-a\omega^2)-jb\omega}{(c-a\omega^2)^2-(jb\omega)^2}=\frac{(c-a\omega^2)-jb\omega}{(c-a\omega^2)^2+(b\omega)^2} $$

The next step is to separate the real and imaginary parts of this function

$$G_r(\omega) = Re(G(\omega)) = \frac{(c-a\omega^2)}{(c-a\omega^2)^2+(b\omega)^2}$$

$$G_i(\omega) = Im(G(\omega)) = \frac{-b\omega}{(c-a\omega^2)^2+(b\omega)^2}$$

This gives a parameterized curve $(G_r(\omega),G_i(\omega))$, which when plotted is known as a Nyquist plot. The Nyquist plot is useful for determining the stability of a system.

There are software packages that will quickly give a Nyquist plot for a given transfer function. For example WolframAlpha has a Nyquist method. This tool shows the Nyquist plot for $1/(s^2+s+1)$ as a cardiod-like curve. (The transfer function $1/(s^2+2s+1)$ would give a "true" cardiod Nyquist plot.)

enter image description here

While plotting is useful, it is sometimes desirable to know the implicit equation (level set equation) for the parametric curve defined by $(G_r(\omega),G_i(\omega))$

It is possible to find such an implicit equation using Groebner bases.

For example, we can rearrange the algebraic equations

$$x = \frac{P_r(\omega)}{P_d(\omega)}$$ $$y = \frac{P_i(\omega)}{P_d(\omega)}$$

to

$$xP_d(\omega) - P_r(\omega) = 0$$ $$yP_d(\omega) - P_i(\omega) = 0$$

And then find a Groebner basis for the polynomials

$$\{xP_d(\omega) - P_r(\omega),\; yP_d(\omega) - P_i(\omega)\}$$

Continuing with our example of

$$G(\omega)=\frac{(c-a\omega^2)-jb\omega}{(c-a\omega^2)^2+(b\omega)^2}$$

We wish to find a Groebner basis for

$$\{x((c-a\omega^2)^2+(b\omega)^2)- (c-a\omega^2),\;\; y((c-a\omega^2)^2+(b\omega)^2))+b\omega\}$$

if we choose $a=b=c=1$ then we have

$$\{x((1-\omega^2)^2+\omega^2)-(1-\omega^2),\;\; y((1-\omega^2)^2+\omega^2)+\omega\}=\{x(\omega^4-\omega^2+1)-(1-\omega^2),\;\; y(\omega^4-\omega^2+1)+\omega\}$$

We can again use WolframAlpha to find the Groebner basis polynomial with $\omega$ eliminated. The result given is:

$${x^4 - x^3 + 2 x^2 y^2 - x y^2 + y^4 - y^2}$$

and setting that polynomial equal to $0$ seems to give the implicit equation for our Nyquist curve.

enter image description here

Which gives us the same cardiod-like curve.

Suppose I wanted to calculate the implicit form for the Nyquist curve by hand. If I follow the procedure just outlined, I would use the algorithm for finding Groebner bases. It is my understanding that this algorithm involves tedious search. But I know something about the Nyquist curve besides it's parametric form. I also know that it was derived by splitting the complex extension of a rational function into real and imaginary parts. I am hoping this fact gives me some leverage to simplify the algorithm for finding the implicit equation for the Nyquist curve.

And that, in essence is my question.

Knowing that $F(s)$ is a rational function with real co-efficients, and that $F(j\omega) = G_r(\omega) + jG_i(\omega)$, is there an algorithm to find the implicit form (level set form) of the curve defined parametrically by points $(G_r(\omega), G_i(\omega))$ without using a general algorithm for calculating Groebner bases? (That is, is there an algorithm that is specialized to this particular problem.)