1
无网格法理论及MATLAB程序
1.6.6.1 4.6.1 子空间迭代法
4.6.1 子空间迭代法

子空间迭代法是求解式(4.36)所表示的广义特征值问题的最常用且有效的方法之一,被广泛应用于弹性动力学的数值分析中。对于式(4.36),若有一组p 个线性无关的向量X= [x1,x2,…,xp],则可构造相应的特征问题

其中。求解特征值问题(4.41),得到特征对ρi及Ψi。由这p 个特征对可求得特征值问题(4.36)的近似解

MATLAB 软件提供了函数eig 和eigs 计算特征值问题,前者一般用于求解位数较小的全部特征值,而后者主要用于得到大型特征值问题的某几个特征对。下面给出子空间迭代法的MATLAB 程序。

MATLAB 程序十三 Siter.m

功能:采用子空间迭代法求解前p 个特征值和特征向量

变量说明:K 刚度矩阵,M 质量矩阵,p 特征值的个数,epsilon 精度参数

V 前p 个特征向量,d 前p 个特征值