Inverse Laplace Transform for a complex transfer function

For my signals project I was able to represent a system using a transfer function consisting of 50 zeros and 60 poles. However, when I tried to get the time domain function of this laplace domain impulse response using ilaplace() with the numerators and denominators as inputs, the code has been running for hours with no end.
I understand that due to the complexity of the transfer function matlab may not be able to find an exact answer. Is there a way to estimate or possible improve the identification of this time domain equation? Thank you

10 件のコメント

David Goodmanson
David Goodmanson 2019 年 12 月 11 日
Hi Darren,
do you mean that F(s) is entirely described by a ratio of polynomials and that you have the positions of all the zeros and poles?
Darren Tran
Darren Tran 2019 年 12 月 11 日
Hi David,
Yes, all the poles and zeros have been found and F(s) is a ratio of polynomials. Is there a better way to find the inverse laplace?
Thank you for your time.
David Goodmanson
David Goodmanson 2019 年 12 月 11 日
Hi Darren,
what can you say about the locations of the poles in the s plane (all negative? all distinct? minimum spacing, etc)
Darren Tran
Darren Tran 2019 年 12 月 11 日
Transfer function of system
% tf6 =
%
% From input "u1" to output "y1":
%
% -6.226e14 (+/- 1.801e23) s^50 - 1.406e16 (+/- 1.397e25) s^49 + 8.548e17 (+/- 1.196e27) s^48
%
% + 4.345e19 (+/- 7.827e28) s^47 + 9.782e20 (+/- 3.5e30) s^46 + 2.544e22 (
%
% +/- 1.269e32) s^45 + 5.779e23 (+/- 3.364e33) s^44 + 3.644e24 (+/- 6.743e34) s^43
%
% - 1.348e25 (+/- 1.047e36) s^42 - 2.659e26 (+/- 1.27e37) s^41 - 8.311e27 (
%
% +/- 1.188e38) s^40 - 6.417e28 (+/- 8.344e38) s^39 - 2.217e29 (+/- 4.219e39) s^38
%
% + 6.008e29 (+/- 1.462e40) s^37 - 6.462e29 (+/- 3.238e40) s^36 - 5.825e30 (
%
% +/- 4.437e40) s^35 + 1.03e29 (+/- 3.587e40) s^34 - 3.185e29 (+/- 1.619e40) s^33
%
% - 1.096e29 (+/- 5.946e39) s^32 + 9.797e27 (+/- 1.52e39) s^31 - 1.609e27 (
%
% +/- 3.429e38) s^30 + 1.159e25 (+/- 1.074e38) s^29 + 1.467e24 (+/- 2.715e37) s^28
%
% - 3.907e22 (+/- 4.977e36) s^27 - 1.293e21 (+/- 6.965e35) s^26 - 7.722e19 (
%
% +/- 7.773e34) s^25 + 2.404e18 (+/- 7.1e33) s^24 - 9.765e16 (+/- 5.451e32) s^23
%
% - 7.257e14 (+/- 3.5e31) s^22 - 4.564e13 (+/- 1.963e30) s^21 - 1.388e13 (
%
% +/- 8.909e28) s^20 - 2.323e11 (+/- 4.094e27) s^19 + 1.235e10 (+/- 1.583e26) s^18
%
% - 1.486e08 (+/- 7.64e24) s^17 + 1.401e07 (+/- 5.14e23) s^16 + 5.671e04 (
%
% +/- 1.497e22) s^15 + 2.435e04 (+/- 1.176e21) s^14 - 40.67 (+/- 2.494e19) s^13
%
% + 20.68 (+/- 1.543e18) s^12 + 0.6052 (+/- 3.44e16) s^11 - 0.009592 (+/- 1.484e15) s^10
%
% + 0.0003821 (+/- 4.398e13) s^9 + 4.003e-06 (+/- 1.474e12) s^8 - 6.035e-08 (
%
% +/- 3.966e10) s^7 + 2.338e-08 (+/- 9.562e08) s^6 - 5.411e-10 (+/- 1.838e07) s^5
%
% - 1.838e-11 (+/- 2.944e05) s^4 + 1.819e-13 (+/- 3599) s^3 + 2.949e-15 (+/
%
% - 33.09) s^2 + 1.31e-16 (+/- 0.1979) s - 2.658e-19 (+/- 0.0006273)
%
% -----------------------------------------------------------------------------------------------
%
% s^60 + 1.899e06 (+/- 1.357e14) s^59 + 1.639e09 (+/- 4.228e15) s^58 + 3.51e11 (+/
%
% - 5.578e17) s^57 + 4.653e13 (+/- 1.798e19) s^56 + 4.57e15 (+/- 6.798e20) s^55
%
% + 3.538e17 (+/- 2.246e22) s^54 + 2.217e19 (+/- 6.035e23) s^53 + 1.148e21 (
%
% +/- 3.098e25) s^52 + 4.983e22 (+/- 5.6e26) s^51 + 1.824e24 (+/- 2.159e28) s^50
%
% + 5.657e25 (+/- 2.839e29) s^49 + 1.487e27 (+/- 2.863e31) s^48 + 3.299e28 (
%
% +/- 9.496e32) s^47 + 6.138e29 (+/- 1.494e34) s^46 + 9.528e30 (+/- 5.066e35) s^45
%
% + 1.228e32 (+/- 6.374e36) s^44 + 1.298e33 (+/- 6.645e37) s^43 + 1.105e34 (
%
% +/- 3.778e38) s^42 + 7.44e34 (+/- 1.666e39) s^41 + 3.847e35 (+/- 4.62e39) s^40
%
% + 1.472e36 (+/- 1.406e40) s^39 + 3.955e36 (+/- 9.029e40) s^38 + 7.153e36 (
%
% +/- 2.322e41) s^37 + 8.251e36 (+/- 2.837e41) s^36 + 5.806e36 (+/- 3.443e41) s^35
%
% + 2.847e36 (+/- 4.663e40) s^34 + 1.043e36 (+/- 1.239e40) s^33 + 2.946e35 (
%
% +/- 6.114e39) s^32 + 6.593e34 (+/- 9.715e38) s^31 + 1.199e34 (+/- 3.931e38) s^30
%
% + 1.81e33 (+/- 4.698e37) s^29 + 2.308e32 (+/- 1.533e37) s^28 + 2.523e31 (
%
% +/- 1.646e36) s^27 + 2.395e30 (+/- 2.413e35) s^26 + 1.994e29 (+/- 8.35e34) s^25
%
% + 1.469e28 (+/- 1.041e34) s^24 + 9.641e26 (+/- 9.937e32) s^23 + 5.671e25 (
%
% +/- 7.081e31) s^22 + 3.003e24 (+/- 5.501e30) s^21 + 1.437e23 (+/- 1.657e29) s^20
%
% + 6.23e21 (+/- 8.191e27) s^19 + 2.451e20 (+/- 3.165e26) s^18 + 8.757e18 (
%
% +/- 2.724e25) s^17 + 2.843e17 (+/- 1.716e24) s^16 + 8.377e15 (+/- 2.829e22) s^15
%
% + 2.238e14 (+/- 1.025e21) s^14 + 5.405e12 (+/- 6.42e19) s^13 + 1.176e11 (
%
% +/- 3.507e18) s^12 + 2.296e09 (+/- 1.11e17) s^11 + 3.996e07 (+/- 3.805e15) s^10
%
% + 6.154e05 (+/- 2.567e14) s^9 + 8299 (+/- 1.338e13) s^8 + 96.76 (+/- 2.452e11) s^7
%
% + 0.9582 (+/- 1.675e10) s^6 + 0.007867 (+/- 6.701e08) s^5 + 5.172e-05 (+/
%
% - 1.53e07) s^4 + 2.58e-07 (+/- 1.609e06) s^3 + 8.936e-10 (+/- 3.073e04) s^2
%
% + 1.807e-12 (+/- 1041) s + 1.364e-15 (+/- 47.24)
Chuguang Pan
Chuguang Pan 2019 年 12 月 11 日
Maybe a ratio of polynomials can be decomposed into partial fractions.
Darren Tran
Darren Tran 2019 年 12 月 11 日
Hi Chuguang,
How would I be able to decompose the above transfer function into partial fractions?
Thank you for your time.
Walter Roberson
Walter Roberson 2019 年 12 月 11 日
Please post the coefficients in a form we can use in code.
David Goodmanson
David Goodmanson 2019 年 12 月 11 日
編集済み: David Goodmanson 2019 年 12 月 11 日
Hi Darren,
There are not positions of poles and zeros here, just two polynomials with coefficients. Those coefficients all have values like -6.226e14 (+/- 1.801e23), meaning that they are of no use at all. You might want to consider how realistic it is to have a transfer function with 50 poles and 60 zeros. If you did know, accurately, the positions of all those poles and zeros then it's certainly possible to find the answer numericaly in short order, but there could well be big problems with numerical accuracy in such a calculation.
Walter Roberson
Walter Roberson 2019 年 12 月 11 日
-6.226e14 (+/- 1.801e23) is pretty much a nonsense number, with inprecision 1 billion times larger than the number itself.
Are these numbers coming from the output of cftool (Curve Fitting Toolbox) ?
Shashwat Bajpai
Shashwat Bajpai 2019 年 12 月 26 日
I would be in a better state to help you if the coefficients mentioned are in a MATLAB executable format.

サインインしてコメントする。

回答 (1 件)

Darren Tran
Darren Tran 2019 年 12 月 30 日

0 投票

Hello I have found the solution. The 50 poles 60 zeros method was wrong and I ended up using 2 zeroes and three poles. I then did an inverse laplace and found the original function. Than you everyone for you help.

カテゴリ

質問済み:

2019 年 12 月 10 日

回答済み:

2019 年 12 月 30 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by