mathematica 矩阵问题

怎么用mathematica直接解出一个矩阵?比如已知A,B,要求矩阵S使得A=S^-1BS... 怎么用mathematica直接解出一个矩阵?比如已知A,B,要求矩阵S使得A=S^-1BS 展开
maming1758
2012-10-24 · TA获得超过294个赞
知道小有建树答主
回答量:94
采纳率:100%
帮助的人:113万
展开全部
你问的是矩阵的分解吧,Mathematica中矩阵分解的命令为:JordanDecomposition[A],表示将矩阵A分解为A=PBP^(-1)的形式,例如:A = {{1, 2, 3}, {2, 1, 3}, {3, 2, 1}}为这样的矩阵时,它的分解为:
A = {{1, 2, 3}, {2, 1, 3}, {3, 2, 1}};
{P, B} = JordanDecomposition[A]
执行结果为:
{{{-3, 2, 1}, {-3, -5, 1}, {5, 2, 1}}, {{-2, 0, 0}, {0, -1, 0}, {0, 0, 6}}}
即P={{{-3, 2, 1}, {-3, -5, 1}, {5, 2, 1}},B={{-2, 0, 0}, {0, -1, 0}, {0, 0, 6}}
可以验证一下这里的PBP^(-1)的结果是否等于A,输入程序:
P.B.Inverse[P]
执行结果为:
{{1, 2, 3}, {2, 1, 3}, {3, 2, 1}}
正好等于A,说明以上分解是正确的。

你可以在软件里执行试试哦,加分吧,希望对你有帮助!!!
追问
先谢谢了,矩阵分解我会,我想问的是怎么求未知矩阵,就像题里说的那样,比如有一个矩阵的方程,能直接把方程里的未知矩阵求出来。这个你能告诉我怎么弄吗?
追答
这个Mathematica里面没有直接求解矩阵方程的指令,但是人的思维是灵活的,你可以把解矩阵方程变换为一系列矩阵的乘积吧,再用软件求解;如果像上题一样涉及到未知矩阵的逆矩阵形式,一种情况可通过变换为最简单的矩阵乘积形式再用软件求解,另一种情况可以变换为上面这种S^-1BS,解法是一样的。
xzcyr
2012-10-20 · TA获得超过3399个赞
知道大有可为答主
回答量:1400
采纳率:100%
帮助的人:667万
展开全部
当一般的方程来解就可以啊,Solve也行,Reduce也行,例:
s = ( {
{a, 1},
{1, c}
} )
Reduce[Inverse[s].( {
{1, 2},
{2, 1}
} ).s == ( {
{1, 2},
{2, 1}
} ), {a, c}]
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式