矩阵特征值与特征向量计算的MATLAB GUI设计文献综述_第1页
矩阵特征值与特征向量计算的MATLAB GUI设计文献综述_第2页
矩阵特征值与特征向量计算的MATLAB GUI设计文献综述_第3页
矩阵特征值与特征向量计算的MATLAB GUI设计文献综述_第4页
矩阵特征值与特征向量计算的MATLAB GUI设计文献综述_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、矩阵特征值与特征向量计算的MATLAB GUI设计文献综述 文献综述矩阵特征值与特征向量计算的MATLAB GUI设计一、前言部分 MATLAB语言是性能卓著的实验“仪器”,是一款功能强大的。用它能能送的进行各种数学计算和符号演算,绘制多种可视化图形1。 MATLAB是一种数值计算环境和编程语言,主要包括MATLAB和Simulink两大部分。MATLAB基于矩阵运算,具有强大的数值分析、矩阵计算、信号处理和图形显示功能,其强大的数据处理能力和丰富的工具箱使得它的编程极为简单。 MATLAB既能进行科学计算,又能开发出所需要的图形界面。图形用户界面(GUI)是由窗口、光标、按键、菜单、文字说明

2、等对象(Objects)构成的一个用户界面。用户通过一定的方法选择、激活这些图形对象,是计算机产生某种动作或变化,比如实现计算、绘图等2。由于计算机的发展和普及,科学计算已经成为解决各类科学技术问题的重要手段。因此,掌握科学计算的基本原理和方法是当今科学技术工作者不可缺少的本领和技能之一。求特征问题是科学与工程中提出的一类重要数学问题。如动力学系统和结构系统中的振动问题,需要求系统的频率与振幅,又如物理学中的某些临界值的确定等3。 二、主题部分 2.1 MATLAB软件介绍 2.1.1 MATLAB软件概况4、5 “MATLAB”是“Matrix Laboratory”的缩写。MATLAB的第

3、一个版本是LINPACK和EISPACK库的程序的一个接口,用来分析线性方程组。随着MATLAB的演化,除了线性代数外,它还支持许多其他的程序。MATLAB的核心仍然是基于命令行的交互式分析工具。用户可以用类Fortran语言扩展交互环境。交互环境中的程序以命令行的形式执行。 MATLAB用户接口包括下拉菜单和对话框,任何个人电脑使用者对这一接口都很熟悉。菜单命令支持文件操作、打印、程序编辑和用户接口定制。MATLAB的数值计算是通过在命令窗口输入命令,并不是通过菜单操作进行的。 MATLAB是一个基本的应用程序,它有一个称为标准工具箱的巨大程序模块库。MATLAB工具箱包括解决实际问题的扩展

4、库,如:求根、插值、数值积分、线性和非线性方程组求解以及常微分方程组求解。由于继承了LINPACK、EISPACK和LAPACK的特性,MATLAB对数值线性代数来说是一个高可靠的优化系统。许多数值作业能够用线性代数语言精确地表示。MATLAB和线性代数的密切关系是程序员能够用很短的MATLAB语言来解决复杂的数值作业。标准工具箱还包括数据可视化的扩展图形库,有简单的点、线和复杂的三维图形和动画。所有的MATLAB程序都可以使用这些函数,这样就可以在所有程序和程序集中分析并生成达到出版质量的图示。对图形的快速访问能有效地提高用户的效率。诊断点有助于调试程序和检验算法是否正确执行。低级的图形函数

5、为自定义图形用户接口的分析代码提供了扩展空间。除了标准工具箱,可以使用其他的工具箱,如:信号处理、图像处理、优化、统计分析、偏微分方程的求解和许多数值计算的应用。 2.1.2 MATLAB语言特点6、7 MATLAB语言有不同于其他高级语言的特点,它被称为第四代计算机语言,MATLAB语言的最大特点就是简单和直接。正如第三代计算机语言使人们摆脱对计算机硬件操作一样,MATLAB语言使人们从烦琐的程序代码中解放出来。它丰富的函数使开发者无须重复编程,只要简单的调用和使用即可。MATLAB语言的主要特点可概括如下: (1)以矩阵和数组为基础的运算MATLAB 是以矩阵为基础的,不需要预先定义变量和

6、矩阵包括数组的维数,可以方便地进行矩阵的算术运算、关系运算和逻辑运算等。 (2) 简单易学,使用方便MATLAB 被称为“草稿式”语言,这是因为其函数名和表达更接近我们书写计算公式的思维表达方式,编写MATLAB程序犹如在草稿纸上排列公式与求解问题,因此可以快速地验证工程技术人员的算法。此外MATLAB还是一种解释性语言,不需要专门的编译器。 (3) 强大的图形技术MATLAB具有非常强大的以图形化显示矩阵和数组的能力,同时它能给这些图形增加注释并且打印这些图形。MATLAB 的图形技术既包括一些可以方便产生二维、三维科技专业图形的高级绘图函数,又包括一些可以让用户灵活控制图形特点的低级绘图命

7、令。另外,用户还可以利用MATLAB的句柄图形技术创建图形用户界面。 4编程效率极高MATLAB 是一种面向科学和工程计算的高级语言。它以矩阵运算为基础,极少的代码即可实现复杂的功能。 5 可扩充性强,具有方便的应用程序接口 MATLAB 不仅有着丰富的库函数,在进行复杂的数学运算时可以直接调用。而且用户还可以根据需要方便地编写和扩充新的函数库。通过混合编程用户可以方便地在MATLAB环境中调用其他用 Fortran 或者 C 语言编写的代码,也可以在 C 语言或者 Fortran 语言程序中调用MATLAB 计算引擎来执行MATLAB代码。 2.1.3 MATLAB GUI介绍 8、9 一个

8、可以发布的应用程序通常都需要有一个友好的图形用户界面(Graphical User Interface)。程序的用户界面是用户与计算机程序的交互方式,用户通过键盘、鼠标等输入设备与计算机交换信息。图形用户界面(GUI)是包含图形对象,如窗口、图标、菜单和文本的用户界面。用户以某种方式选择或激活这些对象,会引起动作或发生变化,例如调用计算程序或者绘图等。 图形用户界面通常是一种包含多种图形对象的界面,典型的图像界面包括图形显示区域,功能按钮控件以及用户自定义的功能菜单等。为了让界面实现各种功能,需要对各个图形对象进行布局和事件编程。当用户激活对应的GUI对象时,就能执行相应的时间行为。 GUI也

9、是一种Matlab对象,可以使用M文件来创建M文件,这也是最基础的,使用其他方法创建时,也需要编写相应的程序代码。除了使用M文件来创建GUI对象外,Matlab还为用户开发图形界面提供一个方便高效的继承开发环境:Matlab图形用户界面开发环境(Matlab Graphical User Interface Development Environment,GUIDE)。其主要是一个界面设计工具集,他将所有GUI所支持的用户控件都集成起来,同时提供界面外观、属性和行为响应方法的设置方法。除了可以使用GUIDE创建GUI之外,还可以将设计好的GUI界面保存为一个FIG资源文件,同时自动生成对应的M

10、 文件。该M文件包含了GUI初始化代码和组建界面布局的控制代码。 使用GUIDE创建GUI对象执行效率高,可以交互式的进行组件布局,还能生成保存和发布GUI的对应文件。 2.2 矩阵特征值与特征向量计算 求解特征问题是科学与工程中提出的一类重要数学问题,如动力学系统和结构系统中的震动问题,需要求系统的频率与振幅,又如物理学中的某些临界值的确定等 2.2.1乘幂法及其变体3 乘幂法是用于大型稀疏矩阵的主特征值的迭代方法,其特点是公式简单,易于上机实现. 乘幂法德计算公式如下.设,取初始向量,令, ,一般有3.1.4并形成向量序列,由递推公式3.1.4,有3.1.5这表明是用A的k次幂左乘得到的,

11、因此称此方法为乘幂法,3.1.4式或3.1.5式称为乘幂公式, 称为乘幂序列设可逆,反幂法可以求出A的绝对值最小的特征值及相应的特征向量.由可知即若为矩阵A的特征值,则必为矩阵的按模最大特征值,且特征向量相同因此,若乘幂法可求A的主特征值,则用做乘幂矩阵,由迭代公式3.1.24便可求出的按模最大特征值,再取倒数即可得到矩阵A的按模最小特征值.因此,对任取初始向量,称公式3.1.24为求矩阵A按模最小特征值的反幂法 2.2.2 子空间迭代法10 子空间迭代法最初是由Clint和Jennings提出,是反幂法的推广11 .稍后,Bathe和Wilson在其中加入了子空间上的Rayleigh-Rit

12、z过程,它可以明显地改善收敛速度.以下是一个子空间迭代算法的主要步骤. .初始化 1确定子空间的维数q; 2选取初始向量矩阵; 3设定每次移轴的最大迭代次数. .移轴与Sturm序列校核 1计算移轴,应设法保证它不是特征值; 2分解移轴刚度矩阵; 3Strum序列校核. .迭代次,完成后转向 1将X进行M一成交归一化; 2解试; 3计算K和M在上的投影, 4求解q阶广义特征值问题; 5形成新的近似特征向量; 6按模态误差判断特征值和特征向量的收敛,移出已收敛的特征向量,并在X中加入随机向量或减缩子空间的大小. 子空间迭代法假设q个初始向量同时进行迭代,求得前p个特征向量.传统上, , 其中s为

13、L中一行的平均非零元个数,由第与步计算之比确定. 2.2.3 Jacobi旋转法12 Jacobi方法用来计算实对称的全部特征值及对应的特征向量. 基本思想:通过一组平面旋转将A化为对角阵. 若为对称阵,则存在一正定阵p,使, 为A的特征值, 的列向量为A对应于的特征向量.主要问题是如何构造P. 中平面内的平均旋转变换. P的性质: 1 P为正交阵,. 2.P为单位阵I只在四个位置元素不一样. 3. 只改变A的i行i列j行j列的元素. 定理1 设A为n阶对称阵, ,其中P为正定阵 则 定理2 设为对称矩阵, 为宜平面旋转阵, 的元素计算式为: 设SA表示A的非对角元素的平方和,DA表示A的对角

14、元素平方和,由上式 这说明C 的对角元素平方和和A的对角元素平方和增加了,非对角元素和此A的非对角元素平方和减少了. 2.2.4 Householder方法13 设,且,则矩阵 称为Househoder矩阵或Householder变换,一般我们简称为H阵或H变换. H阵有以下重要性质; 1H是对称阵: ;2H是正交阵: ; 3设,则总存在H阵使Hxy我们仅就3给出证明若xy,则只需取即可,今设,要使即只需取即可. 2.2.5 QR方法14QR算法是求矩阵特征值的最有效和应用最广泛的一种方法. QR算法也是一种变换方法.设,令,先将作QR分解,写成,其中Q是酉矩阵即是Q的共轭转置,R是上三角阵,

15、当A非奇异且规定R的对角元是正实数时,则分解时唯一的,然后令,则有.是的正交相似变换,他们有相同的特征值.这个过程可继续下去,得到迭代序列,称此过程为基本QR算法过程. 算法 基本QR算法 1定义 2对于k1,2, 3 对作QR分解 4 三、总结部分 本文首先介绍了MATLAB这个数学软件,让我们初步了解了这个软件的一些情况。MATLAB是当今最优秀的科技应用软件之一,它以强大的科学计算与可视化功能、简单易用、开放式可扩展环境,特别是所附带的30多种面向不同领域的工具箱支持,使得它在许多科学领域中成为计算机辅助设计和分析、算法研究和应用开发的基本的图形用户界面,它有友好的程序界面,再加上MAT

16、LAB的强大计算能力,使得MA工具和首选平台。MATLAB具有其他高级语言难以比拟的一些优点,如编写简单、编程效率高、易学易懂等,因此MATLAB语言也被通俗地称为演算纸式科学算法语言15。MATLAB GUI是MATLABTLAB软件更受人们的欢迎。 接着又介绍了矩阵特征值与特征向量计算在计算数学中是非常重要的内容,其应用也很广泛。矩阵特征值与特征向量计算的方法,如乘幂法,反幂法,子空间迭代法,Jacobi旋转法,Household方法,QR算法。主要任务与目标是了解Matlab的基本语法、基本命令,Matlab函数程序设计,应用Matlab?gui设计图形用户界面,求解矩阵特征值与特征向量

17、计算问题,用Matlab?gui设计图形用户界面,实现求解矩阵特征值与特征向量计算方法的经典方法,如乘幂法,反幂法,子空间迭代法,Jacobi旋转法,Household方法,QR算法等,最后通过Matlab绘制图形使数据可视化。四、参考文献1 周晓阳,数学实验与Matlab,华中科技大学出版社,2002.12 拉克唐瓦尔德. 数值方法和MATLAB实现与应用M. 北京:机械工业出版社,2004.9:3 黄明游,刘潘,徐涛.数值计算方法M.北京:科学出版社,2005:1114拉克唐瓦尔德.数值方法和MATLAB实现与应用M.北京:机械工业出版社,2004.9:365John H.Mathews,

18、 Kurtis /.erical Methods Using MATLAB M.BeiJing: Publishing House of Electronics Industry.20056 王素立,高洁,孙新德.MATLAB混合编程与工程M.北京:清华大学出版社,2008.5:1207周小阳.数学软件与MATLABM.武汉:华中科技大学出版社,20028陈?光,毛涛涛等.精通MATLAB GUI设计.北京:电子工业出版社.20089施晓红,周佳.精通MATLAB图形界面编程.北京:电子工业出版社.200810宫玉才,周洪伟等.震动工程学报.北京大学力学与工程科学系,第18卷第2期.2005.611Clint M, Jennings A.The evaluat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论