首页/文章/ 详情

广义特征值问题标准化

7月前浏览4819

求解广义特征值 Kx = λMx 问题,一种方法是用广义雅可比方法,另一种方法就是化为标准特征值问题,然后用标准特征值的方法求解。


点击这里查看广义雅可比方法


若质量矩阵M是正定矩阵,那么可以对其进行Cholesky分解,即

M=LLT  

代入Kx = λMx得到

(4)与Kx = λMx 有相同的特征值,特征向量x可以通过下面的变换来得到

LTx=y

在程序实现过程中,A可以以下两步来实现,即

LB=K , LA=BT

这两步的效率要高很多。

例如,已知

将广义特征值问题化为标准形式。

首先,利用Cholesky分解将M分解,得到

LB=K ,解这个矩阵方程得到

LA=BT ,解这个矩阵方程得到

即可将广义特征值问题化为标准形式Ay=λy

现在用MATLAB来演示。

可以看到,标准化之后再求特征值和特征向量与直接用eig函数求广义特征值和特征向量的结果相同。



点击【阅读原文】可查看矩阵方程的解法。

来源:数值分析与有限元编程
MATLAB
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-04-01
最近编辑:7月前
太白金星
本科 慢慢来
获赞 5粉丝 10文章 322课程 0
点赞
收藏
作者推荐

计算π的值

本文摘要(由AI生成):本文介绍了蒙特卡洛方法,这是一种通过随机抽样或统计试验来求解问题的近似算法。特别地,它可用于计算圆周率π的近似值。方法通过构造单位正方形和1/4圆,随机向其中抛洒大量点,通过计算圆内点数与总点数的比例来近似求得π值。随着随机点数量的增加,得到的π值将更精确。然而,由于随机点的数量限制,得到的π值并不完全精确。此外,蒙特卡洛方法在金融工程学、宏观经济学和计算物理学等领域有着广泛的应用。文章还提供了使用Python和Fortran编写的程序示例,用于比较不同编程语言下蒙特卡洛方法的运行效率。圆周率π是一个无理数,没有任何一个精确公式能够计算π值,π的计算只能采用近似算法。国际公认采用蒙特卡洛方法计算。蒙特卡洛(Monte Carlo)方法,又称随机抽样或统计试验方法。当所求解问题是某种事件出现的概率,或某随机变量期望值时,可以通过某种“试验”的方法求解。简单说,蒙特卡洛是利用随机试验求解问题的方法。首先构造一个单位正方形 和 1/4圆。随机向单位正方形和圆结构抛洒大量点,对于每个点,可能在圆内或者圆外,当随机抛点数量达到一定程度,圆内点将构成圆的面积,全部抛点将构成矩形面积。圆内点数除以圆外点数就是面积之比,即π/4。随机点数量越大,得到的π值越精确。由于DARTS点数量较少,π的值不是很精确。通过增加DARTS数量继续试验,同时,运行时间也逐渐增加。代码及执行结果以上是Python语言编写的程序,运行较慢。采用Fortran语言编写程序,会快很多,以下是抛洒不同的点,程序运行时间比较。蒙特卡洛方法提供了一个利用计算机中随机数和随机试验解决现实中无法通过公式求解问题的思路。它广泛应用在金融工程学,宏观经济学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域。来源:数值分析与有限元编程

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈