如何找到状态转移矩阵符号参数有效吗

215(30天)
我要找到一个4 x4的状态转移矩阵系统。但matlab跑很长一段时间没有给一个解决方案。有没有其他方法来找到解决方案了吗?
谢谢
信谊t
= (-2.1 - -0.98 -0.158 - -2.05
2.22 - -11.03 0 0
-27.64 0.19 -6.39 -82.6
0 0 1 0]
TM = expm (A * t)

接受的答案

Arnab森
Arnab森 2016年2月23日
嗨xianjie,
我试着给你执行代码,发现同样的问题,提供运行长时间没有给出输出。我调查和发现功能“expm”被定义为:
> > [V D] = eig (X)
> > expm (X) = V *诊断接头(exp(诊断接头(D))) / V
现在我发现合适的矩阵分裂“mrdivide”(“/”)正在长时间。我不明白为什么花这么长时间。然而,对矩阵分裂' / '可以近似为矩阵逆“发票”其次是矩阵乘法。也就是说,A / B可以近似的操作*发票(B)。作为一个解决方案,你可以考虑下面的代码片段来实现相同的功能:
> > sym t;
> > = (-2.1 - -0.98 -0.158 - -2.05
2.22 - -11.03 0 0
-27.64 0.19 -6.39 -82.6
0 0 1 0);
> > X = A * t;
> > [V D] = eig (X);
> > TM = (V *诊断接头(exp(诊断接头(D)))) *发票(V)
有关更多细节,请参考以下链接:

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!