mxwt 发表于 2007-7-4 22:23

[求助]矩阵开方如何定义

<table height="190" cellspacing="0" cellpadding="0" width="100%" style="TABLE-LAYOUT: fixed;"><tbody><tr><td valign="top" width="32">&nbsp;</td><td valign="top" style="WORD-WRAP: break-word; 130: ;"><span id="post1" style="FONT-SIZE: 12px; COLOR: #000000;">首先,矩阵开方如何定义:M=A*A,还是M=A*AT(AT表示A的转秩)??<br/>其次,当M=A*A时,已知M,怎么求A??<br/>我在运用一个算法的时候发现这样一个问题,求矩阵的开方,利用Malab试一些方法,归集如下:<br/>1)利用求未知数的方法,解N元二次方程组,理论上是可解得,但是我昨天用Matlab试过了,结果没有出来,电脑差不多快崩溃了;<br/><br/>2)利用Matlab中的函数Sqrtm(),这个解法比较方便,但是其算法究竟是什么,不得而知;<br/><br/>3)利用奇异值开方求矩阵的开放,这边要利用奇异值的性质,同样有三种方法求奇异值,经Matlab仿真表明均可行:<br/><br/>a.利用eig()函数,但是这样的函数必须是实矩阵,而且是正定的,当然eig求出来的是特征值,我认为特征值是奇异值的一种特殊情况,所以条件比较苛刻;<br/><br/>b.利用Svd()函数,这是标准的求奇异值的函数,可以在我以前的博文中看到定义;<br/><br/>c.用乔来斯基分解Chol()函数,先将原矩阵乔来斯基分解,然后再求上对角阵的奇异值,最后同上面几种解法,这个方法在老外的一本矩阵分析中出现,但是有人持怀疑态度,我也没有看到原文,但是我用Matlab试过,是可行的。<br/><br/>可能还有其他的解法,我个人认为,只有想办法把矩阵的奇异值求出来就解决了问题,因而问题的焦点是究竟由多少种求解的方法?<br/><br/>这个问题可能真是个小问题,但是到现在我还没有找到答案。<br/><br/><br/>故,特来求助,望哪位大虾能给予理论上的指导!!</span></td></tr></tbody></table>

wuyuwuyou 发表于 2007-7-12 10:46

学习中^

smswt 发表于 2011-4-14 10:50

谢谢 很好:lol

ximeiji 发表于 2011-4-22 22:58

hao hao xue xia xian xing da shu

weixinmaths 发表于 2011-6-25 08:13

{:soso_e179:}
页: [1]
查看完整版本: [求助]矩阵开方如何定义