我正在使用函数 F(s)= 1 / s 5 + 5 * s 4 + 9 * s 3 + 7 * s 2 + 2 * s ,我想获取各个分数以应用Laplace。
s= %s
n2=1
d2=s^5+5*s^4+9*s^3+7*s^2+2*s
sist2=syslin('c',n2/d2)
sist2desc=pfss(sist2)
sist2desc =
sist2desc(1)
0.5
---
s
sist2desc(2)
0.5
-----
2 + s
sist2desc(3)
2
- 2 - 2s - s
--------------
2 3
1 + 3s + 3s + s
这是我通过该代码获得的输出,但是我想获得0.5 / s + 0.5 /(s + 2)-1 / s + 1 -1 /(s + 1)
答案 0 :(得分:1)
对于Scilab来说,您的分数是一个难题,在处理多项式和分数时,Scilab使用浮点算法,因为多个根降低了经典根查找方法(伴随矩阵的特征值)的精度。在这里,分母的-1为三重根,三重多重性已经太多了,如
所示--> roots((s+1)^3*(s+2)*s)
ans =
-2.
-1.0000109
-0.9999945 + 0.0000095i
-0.9999945 - 0.0000095i
0.
请参阅@ http://bugzilla.scilab.org/show_bug.cgi?id=15349上的讨论,以了解替代的根查找方法。这种现象表明,将Scilab用于此类学术研究不是一个好主意。线性代数可以,但符号演算则不能。