三次特征值问题的Jacobi-Davidson方法的实现


9

我有一个很大的立方特征值问题:

(A0+λA1+λ2A2+λ3A3)x=0.

我可以通过转换为线性特征值问题来解决此问题,但这将导致系统大:32

[A0000I000I][xyz]=λ[A1A2A3I000I0][xyz],

其中和。还有哪些其他技术可以解决三次特征值问题?我听说有一个Jacobi-Davidson版本可以解决该问题,但尚未实现。y=λxz=λy

另外,我需要能够类似于ARPACK的移位和反转方法来定位特定特征值,并找到相关的特征向量。


涉及的矩阵的维数是多少?
比尔·巴特

Ai 是订单 10000×10000。我对此问题有两种不同的表述,一种是Ai是密集的,而另一方面则是稀疏的。
OSE 2014年

1
SLEPc具有用于处理二次特征值问题和非线性特征值问题的例程,因此您也许可以在那里找到所需的内容。它还具有移位和反转功能,并具有ARPACK的接口。
Geoff Oxberry 2014年

Answers:


5

使用ARPACK的反向通信协议,您无需存储 3n×3n 显式矩阵:您只需要提供两个函数即可计算:

[xyz][A0xyz][xyz][A1x+A2y+A3zyz]

(您仍然需要支付存储 3×n维向量,但您无需为矩阵支付任何费用)。

关于反向转换,您可以执行相同操作,即,通过使用计算 xM1x 代替 xMx 并取代计算 λsλ1。计算M1x,您可以预分解矩阵 M,这意味着仅预分解 A0(根据矩阵的结构使用LU,Cholesky或它们的稀疏版本)。对于完整的移相变换,我认为可以做类似的事情。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.