主题:如何求含变量矩阵的特征值(特征值也用变量表示)
hncqhlj
[专家分:0] 发布于 2011-07-20 10:53:00
我想求下图中矩阵的特征值和特征向量,并把特征值用w、v的函数来表示,望路过的大侠指点一二!小弟先谢过了
最后更新于:2011-07-20 14:19:00
回复列表 (共13个回复)
沙发
fortran2008 [专家分:750] 发布于 2011-07-20 15:50:00
我刚刚试了一下,要求解一个一元三次方程,不好用公式直接给出,比较麻烦了。你自己参考下。
[img]http://upload.ouliu.net/m/b94077408a4e365c9ee97de474411936.jpg[/img]
板凳
yeg001 [专家分:14390] 发布于 2011-07-20 16:00:00
有点无语...
3 楼
hncqhlj [专家分:0] 发布于 2011-07-20 16:14:00
fortran2008大侠,你发的图片看不到啊,麻烦您在发一下
4 楼
hncqhlj [专家分:0] 发布于 2011-07-20 16:15:00
yeg001兄,我这特征值和特征矩阵能求出来吗?
5 楼
fortran2008 [专家分:750] 发布于 2011-07-20 19:22:00
不好意思了,第一次传图,没有经验。现在应该可以了。
6 楼
hncqhlj [专家分:0] 发布于 2011-07-20 20:06:00
我的这个矩阵可能是1000*1000项的,我拿一个3*3的是打个比方,对于4阶及以上的矩阵,好像就不能直接这么求特征值了
7 楼
fortran2008 [专家分:750] 发布于 2011-07-20 20:11:00
[quote]我的这个矩阵可能是1000*1000项的,我拿一个3*3的是打个比方,对于4阶及以上的矩阵,好像就不能直接这么求特征值了[/quote]
你自己的发的图不是一个3*3的矩阵?
是的4*4以上的没有解析解了,只能通过数值方法求出。不过IMSL中有现成的程序可调用计算出来,楼主可以查找相关帮助文件。
8 楼
yeg001 [专家分:14390] 发布于 2011-07-20 21:23:00
这个矩阵够特别, 1000*1000解析解也可以有. 我的思路是先得到久期方程(某行列式=0), 然后不要展开左边的行列式而是先对行列式进行化简. 目标是化成上三角或者下三角形式. 可以由n-1行开始. 例如:
-a*(n-1)行加到n行, -a*(n-2)行加到(n-1)行, .... (a的定义参照1楼)
这时候下面三角位置就剩下一条靠近主对角线的斜有非零元(好像是a*lamda), 在利用列加到列的方法把这条斜线上的元去掉(这步很烦, 或者直接用代数余子式多次展开也行那就不需要后面的步骤了). 最终得到一个上三角. 这时候令主对角线上的每一个元等于0就求解出lamda也就是本征值了. 这个我随手画了一下, 操作是可以进行的.
结果我没算出来, 实在是麻烦, 不过花点时间楼主你应该能算出来的.
至于本证矢... 线性代数做法你可以代入本征值然后求解本证矢(解一线性方程组). 不过你这里应该是出现大量简并的. 如果只是求本证矢, 那简并的那里随便求一个就是了. 如果要正交那就还要正交化过程(...).
最后, 如果楼主要解析解来编程论坛似乎不是很合适, 这里主要是数值解.
9 楼
hncqhlj [专家分:0] 发布于 2011-07-20 21:25:00
我实际想运算的是一个很大的矩阵,不可能完全写出来的。IMSL是什么东西?怎么用啊?
10 楼
yeg001 [专家分:14390] 发布于 2011-07-20 21:33:00
IMSL是一个库, 做数值计算的, 你要解析解就用不上了.
我来回复