查看: 713|回复: 8|关注: 0

[已解决] 怎样用Matlab编程求Smith 标准型

[复制链接]

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
只要您能帮我解决,会给您一点小报酬。联系QQ905389674

论坛优秀回答者

权威

8821 麦片

财富积分



8

主题

1万

帖子

1951

最佳答案
  • 关注者: 464
发表于 2018-11-15 07:29:34 | 显示全部楼层 |此回复为最佳答案
对于matlab而言,这个不需要编程的。相关函数拿过来用就行了。[U,V,S] = smithForm(A)

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
 楼主| 发表于 2018-11-15 09:31:45 | 显示全部楼层
jingzhaos 发表于 2018-11-15 07:29
对于matlab而言,这个不需要编程的。相关函数拿过来用就行了。 = smithForm(A)

谢谢您,可是老师让编程来求,我还想问您一下多项式怎么输入到Matlab中

论坛优秀回答者

权威

8821 麦片

财富积分



8

主题

1万

帖子

1951

最佳答案
  • 关注者: 464
发表于 2018-11-15 12:43:26 | 显示全部楼层
陈金祝 发表于 2018-11-15 09:31
谢谢您,可是老师让编程来求,我还想问您一下多项式怎么输入到Matlab中

这看你打算怎么编程了。比如用数值,你可以使用系数向量[2 9 1 9 0 2]或系数矩阵,使用符号,可以直接用表达式或表达式矩阵,如syms x; A=3*x^2+6*x

新手

7 麦片

财富积分


050


13

主题

25

帖子

0

最佳答案
发表于 2019-1-2 12:23:39 | 显示全部楼层
jingzhaos 发表于 2018-11-15 12:43
这看你打算怎么编程了。比如用数值,你可以使用系数向量[2 9 1 9 0 2]或系数矩阵,使用符号,可以直接用表 ...

你好,我现在打算用[U,V,S] = smithForm(A),这个求smith''标准化。
程序如下:
>> syms s;
A=[-3-s 1 1 1 0;
1 -3-s 0 0 1;
0 1 0 0 0 ;
0 0 1 0 0 ]
[U,V,S] = smithForm(A)

A =

[ - s - 3,       1, 1, 1, 0]
[       1, - s - 3, 0, 0, 1]
[       0,       1, 0, 0, 0]
[       0,       0, 1, 0, 0]

Undefined function 'smithForm' for input arguments of type 'sym'.
---------------------------------------------------------------------------------
我的matlab 是2013b,是因为版本过低的原因吗?

论坛优秀回答者

权威

8821 麦片

财富积分



8

主题

1万

帖子

1951

最佳答案
  • 关注者: 464
发表于 2019-1-2 12:26:14 | 显示全部楼层
本帖最后由 jingzhaos 于 2019-1-2 12:29 编辑
carrys 发表于 2019-1-2 12:23
你好,我现在打算用 = smithForm(A),这个求smith''标准化。
程序如下:
>> syms s;

是版本低的缘故,这是R2015b才有的函数。不过,即便版本高了,你的A也有问题,看看帮助说的是什么:S = smithForm(A) returns the Smith normal form of a square invertible matrix A. 要求A是可逆方阵。

新手

7 麦片

财富积分


050


13

主题

25

帖子

0

最佳答案
发表于 2019-1-2 14:23:16 | 显示全部楼层
jingzhaos 发表于 2019-1-2 12:26
是版本低的缘故,这是R2015b才有的函数。不过,即便版本高了,你的A也有问题,看看帮助说的是什么:S[/bac ...

嗯,我现在发现自己的A阵有问题,是4*5阶,应该是5*5的。
我现在已经下载了2015b,我想通过[U,V,S] = smithForm(A),
使[A-sI B]花为smith标准型,求出P(s),和Q(s)
---------------------------------------------------------------
现在不知道应用这个函数,可以解决这个问题吗?
eb68c405cfbe15ec91e2ed7e824d7b1.png
4f4c13e90af5b5ddd239813bedcae33.png

论坛优秀回答者

权威

8821 麦片

财富积分



8

主题

1万

帖子

1951

最佳答案
  • 关注者: 464
发表于 2019-1-2 15:02:10 | 显示全部楼层
carrys 发表于 2019-1-2 14:23
嗯,我现在发现自己的A阵有问题,是4*5阶,应该是5*5的。
我现在已经下载了2015b,我想通过 = smithForm( ...

命令行下 doc smithForm看看帮助,里面有例子。

新手

7 麦片

财富积分


050


13

主题

25

帖子

0

最佳答案
发表于 2019-1-2 15:49:07 | 显示全部楼层
jingzhaos 发表于 2019-1-2 15:02
命令行下 doc smithForm看看帮助,里面有例子。

好的ヽ( ̄▽ ̄)و
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

快速回复 返回顶部 返回列表