Bilinear transform and higher order differential equation

259 Views Asked by At

The bilinear transform as I understand corresponds to the trapezoid rule. However, I have not been able to find whether the correspondence holds for higher order ODEs, or what kind of estimate the bilinear transform corresponds to in that case. As an example I use the Butterworth filter. The ODE of the filter is given by

$$y(t)=-\frac{r}{\omega^2}y'(t)-\frac{1}{\omega^2}y''(t)$$

with initial condition $y(0)=0,y'(0)=\omega^2$.

First calculate the coefficients by using the bilinear transform. Butterworth filter has the following transfer function:

$$H(s)=\frac{\omega^2}{s^2+s\cdot r+\omega^2}$$

The bilinear transform is given by $s\rightarrow \frac{2}{T}\frac{1-z^{-1}}{1+z^{-1}}$. Then

$$H(z)=\frac{\omega^2}{(\frac{2}{T}\frac{1-z^{-1}}{1+z^{-1}})^2+\frac{2}{T}\frac{1-z^{-1}}{1+z^{-1}} r+\omega^2}= \frac{\omega^2(1+z^{-1})^2}{(\frac{2}{T}(1-z^{-1}))^2+\frac{2}{T}(1-z^{-1})(1+z^{-1}) r+\omega^2(1+z^{-1})^2} =\frac{\omega^2(1+2z^{-1}+z^{-2})}{\frac{4}{T^2}(1-2z^{-1}+z^{-2})+\frac{2}{T}(1-z^{-2}) r+\omega^2(1+2z^{-1}+z^{-2})} =\frac{\omega^2(1+2z^{-1}+z^{-2})}{(\frac{4}{T^2}+\frac{2}{T}r+\omega^2)+2(-\frac{4}{T^2}+\omega^2)z^{-1}+(\frac{4}{T^2}-\frac{2}{T}r+\omega^2)z^{-2}} =\frac{\omega^2(1+2z^{-1}+z^{-2})/D}{1+2(-\frac{4}{T^2}+\omega^2)z^{-1}/D+(\frac{4}{T^2}-\frac{2}{T}r+\omega^2)z^{-2}/D}$$

So the coefficients are: $$a_0=1,a_1=2(-\frac{4}{T^2}+\omega^2)/D,a_2=(\frac{4}{T^2}-\frac{2}{T}r+\omega^2)/D$$ $$b_0=\omega^2/D,b_1=2b_1,b_2=b_0$$ $$D=(\frac{4}{T^2}+\frac{2}{T}r+\omega^2)$$

Ok, now do the same using the trapezoid method. We have the differential equation as before and the estimates (the stepsize is $h=T$): $$y(t+h)=y(t)+\frac{h}{2}(y'(t+h)+y'(t))$$ $$y'(t+h)=y'(t)+\frac{h}{2}(y''(t+h)+y''(t))$$

So that $$y(t+h)=y(t)+\frac{h}{2}(2y'(t)+\frac{h}{2}(y''(t+h)+y''(t)))$$ $$=y(t)+\frac{h}{2}(2y'(t)+\frac{h}{2}(-\omega^2y(t+h)-ry'(t+h)+\omega^2y(t)-ry'(t)))$$ $$=y(t)+\frac{h}{2}(2y'(t)+\frac{h}{2}(-\omega^2(y(t+h)+y(t))-r(y'(t+h)+y'(t)))$$ $$=y(t)+\frac{h}{2}(2y'(t)+\frac{h}{2}(-\omega^2(y(t+h)+y(t)))-r(y(t+h)-y(t))$$

And $$y(t+h)(1+\frac{h^2}{4}\omega^2+\frac{h}{2}r)=y(t)(1-\frac{h^2}{4}\omega^2+\frac{h}{2}r)+hy'(t)$$

$$\Leftrightarrow y(t+h)(\frac{4}{h^2}+\frac{2}{h}r+\omega^2)=y(t)(\frac{4}{h^2}+\frac{2}{h}r-\omega^2)+\frac{4}{h}y'(t)$$

But the above is not the same difference equation as given by the bilinear transform. For one $y(0)=0$ was an initial condition, but the bilinear transform gives $y(0)=\omega^2/D$ (unless there was a mistake somewhere). So what happens in higher order ODEs?

1

There are 1 best solutions below

5
On BEST ANSWER

Take one step more, either using $y(x+2h)$ or here for symmetry $y(x-h)$, and consider that equality is only up to terms of size $O(h^3)$, \begin{align} &y(x+h)-2y(x)+y(x-h) \\ &=\frac{h}2(y'(x+h)-y'(x-h))=\frac{h^2}4(y''(x+h)+2y''(x)+y''(x-h)) \\ &=-\frac{h^2}4[ry'(x+h)+ω^2y(x+h)+2ry'(x)+2ω^2y(x)+ry'(x+h)+ω^2y(x+h)] \\ &=-\frac{ω^2h^2}4[y(x+h)+2y(x)+y(x-h)]-\frac{rh}2[y(x+h)-y(x-h)] \end{align} using $y(x+h)-y(x-h)=[y(x+h)-y(x)]+[y(x)-y(x-h)]=\frac{h}2[y'(x+h)+2y'(x)+y'(x-h)]$ in the last step. Collecting coefficients gets us $$ \left[1+\frac{rh}2+\frac{ω^2h^2}4\right]y(x+h)-2\left[1-\frac{ω^2h^2}4\right]y(x)+\left[1-\frac{rh}2+\frac{ω^2h^2}4\right]y(x-h)=0 $$ which has exactly the same coefficient structure as your first approach.


Let's back-test what the actual order of this method is by inserting Taylor expansions for $y(x\pm h)$ and then reducing by the ODE and its derivatives. \begin{align} -2&\left[1-\frac{ω^2h^2}4\right]y(x)+\left[1+\frac{ω^2h^2}4\right](y(x+h)+y(x-h))+\frac{rh}2(y(x+h)-y(x-h)) \\ &=2\left[-1+\frac{ω^2h^2}4\right]y(x) +2\left[1+\frac{ω^2h^2}4\right]\left(y(x)+\frac{h^2}2y''(x)+\frac{h^4}{24}y^{(4)}(x)+O(h^6)\right) +rh\left(hy'(x)+\frac{h^3}6y'''(x)+\frac{h^5}{120}y^{(5)}(x)+O(h^7)\right) \\ &=h^2\left(ω^2y(x)+ry'(x)+y''(x)\right)+\frac{h^4}{12}\left(3ω^2y''(x)+2ry'''(x)+y^{(4)}(x)\right)+O(h^6) \\ &=\frac{h^4}{12}\left(2ω^2y''(x)+ry'''(x)\right)+O(h^6) \end{align} Thus as the truncation error is $O(h^4)$, the method is $O(h^2)$ if the first step is $O(h^3)$, that is, $y(h)=y_1+O(h^3)$, $y_1=y(0)+hy'(0)-\frac{h^2}2(ω^2y(0)+ry'(0))$.

The Lagrange and $z$ transformation methods assume that everything (not explicitly mentioned otherwise) is zero for negative times. Thus at time $0$ the right side of the recursion has to contain the defects of applying the difference operator to the sequence $...,0,y_0,y_1,y_2$, $b_k=a_0y_{k+1}+a_1y_k+a_2y_{k-1}$. This gives $b_{-2}=0$, $b_{-1}=a_0y_0$, $b_0=a_0y_1+a_1y_0$, $b_1=a_0y_2+a_1y_1+a_2y_0=0$, everything else is zero. This does not give the same structure as the numerator of $H(z)$.