matlab中place函数使用问题The "place" command cannot place the poles at the specified locations because the resulting eigenvector matrix is nearly singular.这个该如何解决?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 23:09:35
matlab中place函数使用问题The

matlab中place函数使用问题The "place" command cannot place the poles at the specified locations because the resulting eigenvector matrix is nearly singular.这个该如何解决?
matlab中place函数使用问题
The "place" command cannot place the poles at the specified locations because the resulting eigenvector matrix is nearly singular.
这个该如何解决?

matlab中place函数使用问题The "place" command cannot place the poles at the specified locations because the resulting eigenvector matrix is nearly singular.这个该如何解决?
极点配置算法涉及到右除特征向量矩阵的计算,所以会对该矩阵条件数的倒数进行估计,如果不满足,就会导致此错误.
从根源上说,导致这个错误常见的原因有:
1、系统(A,B)不可控或接近不可控;
2、期望极点过于靠近.
从你贴出的期望极点看,应该不是第二个原因,猜测第一个原因的可能性偏大,但由于你没有给出A和B的数据,所以不敢确定.请检查一下系统的可控性:
rank(ctrb(A,B))

“place”命令不能放置在指定的零点位置,因为生成的特征向量矩阵接近奇异。我用place配置极点。极点的具体形式为
op=[ -3 + 6i -3 - 6i -10 -8 ] ;
怎么会是指定的位置?我不知道这个函数是干什么的,而且你也没有什么语句贴出来,所以帮不到你。
place函数:
用法为:K = place(A,B,P)或[K...

全部展开

“place”命令不能放置在指定的零点位置,因为生成的特征向量矩阵接近奇异。

收起