ARPACK特征值求解分析

news2024/11/24 18:33:57

线性方程组求解、特征值问题是数值线性代数的主要研究内容。力学、电磁等许多问题,最终都可以归结为特征值、特征向量的求解。

ARPACK使用IRAM(Implicit Restarted Arnoldi Method)求解大规模系数矩阵的部分特征值与特征向量。了解或者熟悉IRAM算法,必定有助于更好地使用ARPACK中相关特征值求解函数。

本文拟就ARPACK中特征值求解的IRAM算法进行分析,希望对从事相关研究的朋友们有所帮助。

零、约定

对于n阶级复矩阵\boldsymbol{A}\in \mathbb{C}^{n\times n},若存在n阶向量\boldsymbol{x}\in \mathbb{C}^{n}与标量\lambda \in \mathbb{C}^{1},满足\boldsymbol{\mathbf{A}}\boldsymbol{\mathbf{x}}=\lambda \boldsymbol{x},则称\lambda是矩阵\boldsymbol{A}的特征值,\boldsymbol{x}是对应的特征向量。

更一般地,若对于n阶级复矩阵\boldsymbol{A}\in \mathbb{C}^{n\times n}\boldsymbol{B}\in \mathbb{C}^{n\times n},若存在n阶向量\boldsymbol{x}\in \mathbb{C}^{n}与标量\lambda \in \mathbb{C}^{1},满足\boldsymbol{\mathbf{A}}\boldsymbol{\mathbf{x}}=\lambda\boldsymbol{B} \boldsymbol{x},则称\lambda是矩阵\boldsymbol{A}的广义特征值,\boldsymbol{x}是对应的广义特征向量。

定义Hessenberg矩阵\boldsymbol{H}

\boldsymbol{H}=\begin{pmatrix} h_{1,1} & h_{1,2} & \cdots & h_{1,k}\\ h _{2,1} & h_{2,2} & \cdots &h_{2,k} \\ 0& \ddots& \ddots &\vdots \\ 0& 0 & h_{k,k-1}& h _{k,k} \end{pmatrix}

为了叙述方便,本文以一般特征值问题进行叙述,而不讨论广义特征值。

一、Arnoldi分解

在Arnoldi于1951年发表的文章中,通过Galerkin余量法,提出了一种将矩阵\boldsymbol{A}约化为Hessenberg矩阵的方法,即

\left [ \kappa _{i} \right ]\left ( \lambda \boldsymbol{I}-\boldsymbol{u} \right )\left [ k_{i} \right ]\boldsymbol{c}=0

上式也可以写作

AV=VH+fe_{k}^{T}

其中,\boldsymbol{V}\in \mathbb{C}^{n\times k },\boldsymbol{H}\in \mathbb{C}^{k\times k },\boldsymbol{f}\in \mathbb{C}^{n },e_{k}^{T}=\left ( 0,0,\cdots,0,1 \right )\in \mathbb{C}^{k},

且满足,\boldsymbol{V}^{H}\boldsymbol{V}=\mathbf{I}\boldsymbol{V}^{H} \mathbf{f}=\mathbf{0}

参考书籍

Gene H. Golub. Matrix Computations.

徐树方. 数值线性代数. 北京大学出版社, 2013.

参考文献

Arnoldi W E .The principle of minimized iterations in the solution of the matrix eigenvalue problem[J].Quarterly of Applied Mathematics, 1951, 9(1).DOI:10.1093/qjmam/4.4.466.

D,C,Sorensen.Implicit Application of Polynomial Filters in a k-Step Arnoldi Method[J].Siam Journal on Matrix Analysis & Applications, 1992.DOI:10.1137/0613025.

Burrus C S , Cox S J , Radke R J .A Matlab Implementation of the Implicitly Restarted Arnoldi Method for Solving Large-Scale Eigenvalue Problems[J]. 2000.

网络资料

ARPACKhttps://github.com/opencollab/arpack-ng

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/747105.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

S32K flash擦除异常以及flash保护 (FLASH_DRV_CommandSequence函数异常)

出现问题 出现擦除flash异常,一直在FLASH_DRV_CommandSequence卡死复位 但是出现比较奇怪的现象,通过DEBUG在线调试,打断点,一步一步调试可以正常对flash正常擦除读写,但是脱离在线调试就出现不能正常擦除读写。 出现这种还是看…

大模型基础之大语言模型的进展

关键字:LLM大语言模型,fine-tuning微调 预训练语言模型的两种范式 1 特征提取器 提取语言的特征和表示,作为下游模型的输入。例如有名的word2vec模型。 use the output of PLMs as the input of downstream model 2 fine-tuning&#xf…

【代码随想录 | Leetcode | 第一天】数组 | 二分查找 | 边界问题 | 34-35-69-367-704

前言 欢迎来到小K的Leetcode|代码随想录|专题化专栏,今天将为大家带来二分查找边界问题(循环不变量规则)的分享✨ 目录 前言704. 二分查找367. 有效的完全平方数69. x 的平方根35. 搜索插入位置34. 在排序数组中查找元素的第一个和最后一个位…

PN结、形成过程、单向导电性、伏安特性、电容效应

目录 1.1.3PN结 PN结形成过程: PN结的单向导电性: PN结的伏安特性 PN结的电容效应 1.1.3PN结 形成:由于扩散运动而形成 扩散运动:物质总是从浓度高的地方向浓度低的地方运动,这种由于浓度差而产生的运动称为扩散运…

微服务 云原生:微服务相关技术简要概述

后端架构演进 单体架构 所谓单体架构,就是只有一台服务器,所有的系统、程序、服务、应用都安装在这一台服务器上。比如一个 bbs 系统,它用到的数据库,它需要存储的图片和文件等,统统都部署在同一台服务器上。 单体架…

ubuntu20.04配置vscode

下载: https://az764295.vo.msecnd.net/stable/660393deaaa6d1996740ff4880f1bad43768c814/code_1.80.0-1688479026_amd64.debhttps://az764295.vo.msecnd.net/stable/660393deaaa6d1996740ff4880f1bad43768c814/code_1.80.0-1688479026_amd64.deb 安装&#xff1a…

MySQL基础篇第9章(子查询)

文章目录 1、需求分析与问题解决1.1 实际问题1.2 子查询的基本使用1.3 子查询的分类 2、单行子查询2.1 单行比较操作符2.2 代码示例2.3 HAVING中的子查询2.4 CASE中的子查询2.5 子查询中的空值问题2.6 非法使用子查询 3、多行子查询3.1 多行比较操作符3.2 代码示例3.3 空值问题…

vuepress - - - 首页底部版权信息加a标签超链接跳转或备案信息跳转链接

修改前 默认的底部版权信息只能填写纯文本,加不了超链接跳转等。 对应\docs\README.md内容: 修改后 修改后,点击Zichen跳转会打开新的网页。 看官网例子 底部添加了备案号跳转链接。 找到官网的github部署的文件。点导航栏中的“指…

flutter开发实战-实现webview与Javascript通信JSBridge

flutter开发实战-实现webview与H5中Javascript通信JSBridge 在开发中,使用到webview,flutter实现webview是使用原生的插件实现,常用的有webview_flutter与flutter_inappwebview 这里使用的是webview_flutter,在iOS上,…

【IMX6ULL驱动开发学习】20. input子系统(按键实现ls命令)

一、input子系统相关结构体 二、input子系统实例实现: static struct input_dev *key_input;...... ....../* 1.申请空间 */ key_input input_allocate_device(); if(key_input NULL){printk("input alloc failed\n");return -ENOMEM; } /* 2.设置事件类…

Go实现WebSocket

Go语言标准包里面没有提供对WebSocket的支持,但是在由官方维护的go.net子包中有对这个的支持,你可以通过如下的命令获取该包: go get golang.org/x/net/websocket WebSocket分为客户端和服务端,接下来我们将实现一个简单的例子:…

云进销存是什么意思,云进销存系统该如何选?

云进销存是指基于云计算技术的一种进销存管理系统,云进销存系统可以帮助企业或中小商户实时监控库存情况、优化采购和销售流程、提高物流效率,以及生成各类报表和统计分析,从而提升企业或商户的运营效率和管理水平。 一、云进销存对中小商户有…

C#,数值计算——不完全 Beta 函数(incomplete beta function)的源代码

Incomplete Beta Function The incomplete beta function (also called the Euler Integral) is a generalized β-function; An independent integral (with integral bounds from 0 to x) replaces the definite integral. The formula is: Where: 0 ≤ x ≤ 1, a, b > 0…

Pro白嫖esri数据

最近用Pro比较多,想跟大家谈谈一些关于Pro的 技巧。在谈之前,我想问大家一个问题,你真的了解ArcGIS Pro吗? 我想大多数刚刚接触Pro的用户应该是把Pro当做像Map一样的数据处理分析工具,只是简单的从其他地方下载数据来加入工程进行处理和分析 或许在你眼里的Pro和Map仅有…

在Orangepi上使用raspberry的dashboard

树莓派实验室整了一个比较酷的dashboard,可以用来显示树莓派状态,主要内容是基于js和php来实现,因为orangepi的用户名和密码都是一个套路,首先想到能不能移植。 https://www.rstk.cn/news/860562.html?actiononClick 首先需要做…

Docker把公共镜像推送到harbor私服的流程(企业级)

如果构建项目时,使用了k8s docker Jenkins的模式。 那么我们在docker构建镜像时,如果需要使用了Nodejs,那么我们必须得从某个资源库中拉取需要的Nodejs。 在企业里,正常都会把自己项目涉及的库都放在harbor私服里。 下面讲一下&…

数据分类分级

数据分类是数据管理的第一步,是数据治理的先行条件。当前,数据应用方兴未艾。“数据”作为新的生产要素资源,支撑供给侧结构性改革、驱动制造业转型升级的作用日益显现,正成为推动质量变革、效率变革、动力变革的新引擎。但与此同…

python3+requests+unittest实战系列【二】

前言:上篇文章python3requestsunittest:接口自动化测试(一)已经介绍了基于unittest框架的实现接口自动化,但是也存在一些问题,比如最明显的测试数据和业务没有区分开,接口用例不便于管理等&…

ROS中bag的录制、播放和使用

文章目录 前言一、bag录制二、bag信息查看三、bag播放四、bag的使用(以A-LOAM为例) 前言 传感器获取到的信息,有时我们可能需要实时处理,有时可能只是采集数据,事后分析,比如: 机器人导航实现中&#xff0…

Tomcat 基础

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、概述 二、安装 三、 目录结构 四、启停 五、配置文件 1. server.xml (1) Server (2) Listener (3) GlobalNamingResources (4) Service 01.Connector (1) port…