实验3MATLAB矩阵分析与处理和字符串操作实...
matlab矩阵实验报告
matlab矩阵实验报告《MATLAB矩阵实验报告》摘要:本实验报告利用MATLAB软件进行了矩阵实验,通过对矩阵的运算、转置、逆矩阵、特征值等操作进行了分析和讨论。
实验结果表明,MATLAB在矩阵运算方面具有高效、准确的特点,能够满足工程和科学计算的需求。
引言:矩阵是线性代数中的重要概念,广泛应用于工程、物理、经济等领域。
MATLAB是一种强大的数学软件,能够对矩阵进行各种运算和分析。
本实验旨在利用MATLAB软件对矩阵进行实验,探讨其在矩阵运算中的应用和优势。
实验方法:1. 创建矩阵:利用MATLAB软件创建不同大小的矩阵,包括方阵和非方阵。
2. 矩阵运算:进行矩阵的加法、减法、乘法等运算,比较不同大小矩阵的计算效率和结果准确性。
3. 矩阵转置:对矩阵进行转置操作,观察转置后矩阵的性质和应用。
4. 逆矩阵:求解矩阵的逆矩阵,并分析逆矩阵在实际问题中的应用。
5. 特征值和特征向量:利用MATLAB软件求解矩阵的特征值和特征向量,分析其在物理、工程等领域的应用。
实验结果与讨论:通过实验发现,MATLAB软件在矩阵运算中具有高效、准确的特点。
对于大规模矩阵的运算,MATLAB能够快速进行计算并给出准确的结果。
在矩阵转置和逆矩阵求解方面,MATLAB也能够满足工程和科学计算的需求。
此外,通过求解矩阵的特征值和特征向量,可以得到矩阵的重要性质,为实际问题的分析和求解提供了有力支持。
结论:本实验利用MATLAB软件进行了矩阵实验,通过对矩阵的运算、转置、逆矩阵、特征值等操作进行了分析和讨论。
实验结果表明,MATLAB在矩阵运算方面具有高效、准确的特点,能够满足工程和科学计算的需求。
希望本实验能够对矩阵运算和MATLAB软件的应用有所启发,为相关领域的研究和应用提供参考。
3 Matlab矩阵的分析与处理
3.4 矩阵求值
• • • • • • • 3.4.1 方阵的行列式值 det(A) 3.4.2矩阵的秩与迹 1.矩阵的秩 rank(A) 2.矩阵的迹 trace(A)
• • • • • • •
3.4.3向量和矩阵的范数 1.向量的3种常用范数及其计算函数 (1)2-范数---norm(V)或norm(V,2) (2)1-范数---norm(V,1) (3) -范数---norm(V,inf) 2.矩阵的范数及其计算函数 函数调用与向量范数完全相同
3.6 矩阵的超越函数
• • • • 1.矩阵平方根---sqrtm(A) 2.矩阵对数---logm(A) 3.矩阵的指数---expm(A) 4.通用矩阵函数---funm(A,’fun’)
• • • • • • • •
3.1.2用于专门学科的特殊矩阵 (1)魔方矩阵-----magic(n) (2)范德蒙矩阵-----vander(x) (3)希尔伯特矩阵-----hilb(n) 求希尔伯特矩阵的逆-----invhilb(n) (4)特普利茨矩阵-----toeplitz(x,y) (5)伴随矩阵-----compan(p) (6)帕斯卡矩阵-----pascal(n)
Matlab矩阵的分析与处理
3.1 特殊矩阵
• • • • • • 3.1.1 通用的特殊矩阵 zeros:产生全零矩阵(零矩阵) ones:产生全1矩阵(幺矩阵) eye:产生单位矩阵 rand:产生0~1间均匀分布的随机矩阵 randn:产生均值为0,方差为1的标准正态分 布随机矩阵。
• 以zeros函数为例,其调用格式: zeros(m) zeros(m,n) zeros(size(A)) 建立随机矩阵: 1、在区间[20,50]内均匀分布的5阶随机矩阵 X=20+(50-20)*rand(5) 2、均值为0.6,方差为0.1的5阶正态分布随机矩阵 Y=0.6+sqrt(0.1)*rand旋转 1.矩阵的转置 运算符单撇号(‘) 2.矩阵的旋转
MATLAB矩阵的分析与处理截图版实验报告
MATLAB矩阵的分析与处理截图版实验报告实验名称:MATLAB矩阵的分析与处理
实验步骤:
(1)打开matlab软件,进行操作界面的基本设置,转到矩阵的工作空间;
(2)创建矩阵并进行矩阵的分析操作,包括将矩阵拆分成2部分:A矩阵和B 矩阵,并运用函数求和、求积、求最大值等操作;
(3)进行矩阵的处理操作,包括矩阵的相乘、运算求值等操作,实现矩阵的转置操作;
(4)并进行图形处理,将计算数据和结果以函数图、标尺图、表格等方式展现出来,并进行分析;
(5)最后,根据实验的结果,总结实验的感悟和体会。
实验结果:
实验过程中,使用了MATLAB矩阵的基本操作,包括矩阵的求和、求积、求最大值、相乘、求值等操作,实现了矩阵的处理,并且将计算数据以图形的方式展示出来,有利于我们更好的理解数据,作出更准确的判断:
我们创建的矩阵如下图所示:
![图1](./矩阵1.jpg)
综上所述,我在本次实验中,掌握了MATLAB矩阵的基本操作,及其运用函数求和求积求最大值、相乘运算求值等方法,也通过图像数据展现来更好的了解矩阵的变化和分析结果。
通过实验,我能够更好地掌握MATLAB矩阵的分析与处理方法,从而加深对MATLAB 矩阵的理解,并为以后的操作打下坚实的基础。
实验三 MATLAB矩阵分析与处理和字符串操作实例
实验三 MATLAB 矩阵分析与处理、字符串操作一、实验目的1.掌握生成特殊矩阵的方法2.熟练掌握矩阵的特殊操作及一些特殊函数3.熟练掌握MATLAB 的字符串操作4.掌握MATLAB 矩阵的关系运算及逻辑运算法则二、实验内容1.特殊矩阵分析与处理操作常用的产生通用特殊矩阵的函数有:zeros( );ones( );eye( );rand( );randn( ). 下面建立随机矩阵。
(1) 在区间[20,50]内均匀分布的5阶随机矩阵。
(2) 均值为0.6、方差为0.1的5阶随机矩阵。
说明:产生(0 ,1)区间均匀分布随机矩阵使用rand 函数,假设得到了一组满足(0,1)区间均匀分布的随机数x i ,则若想得到任意[a,b]区间上均匀分布的随机数,只需要用i i x a b a y )(-+=计算即可。
产生均值为0、方差为1的标准正态分布随机矩阵使用randn 函数,假设已经得到了一组标准正态分布随机数x i ,如果想要更一般地得到均值为i i x y ,、σμσμ+=可用的随机数方差为2计算出来。
针对本例,命令如下:x=20+(50-20)*rand(5)y=0.6+sqrt(0.1)*randn(5)建立对角阵。
diag( )函数除了可以提取矩阵的对角线元素以外,还可以用来建立对角矩阵。
设V 为具有m 个元素的向量,diag(V)将产生一个m*m 对角矩阵,其主对角线元素即为向量V 的元素。
例如:diag([1,2,-1,4])ans= 4000010000200001 diag(V)函数也有另一种形式diag(V ,k),其功能是产生一个n*n(n=m+|k|)的对角矩阵,其第k 条对角线的元素即为向量V 的元素。
例如:diag(1:3,-1)ans=0300002000010000矩阵的旋转函数rot90(A,k)表示将矩阵A 以90度为单位对矩阵按逆时针方向进行k 倍的旋转。
rem 与mod 函数的区别练习:1> 写出完成下列操作的命令。
第3章 MATLAB矩阵分析与处理1
(3) 希尔伯特矩阵 在MATLAB中,生成希尔伯特矩阵的函数 是hilb(n)。 使用一般方法求逆会因为原始数据的微小 扰动而产生不可靠的计算结果。MATLAB 中,有一个专门求希尔伯特矩阵的逆的函 数invhilb(n),其功能是求n阶的希尔伯特矩 阵的逆矩阵。
例3.4 求4阶希尔伯特矩阵及其逆矩阵。 命令如下: format rat %以有理形式输出 H=hilb(4) H=invhilb(4)
(5) 伴随矩阵 MATLAB生成伴随矩阵的函数是compan(p), 其中p是一个多项式的系数向量,高次幂系 数排在前,低次幂排在后。例如,为了求 多项式的x3-7x+6的伴随矩阵,可使用命令: p=[1,0,-7,6]; compan(p)
(6) 帕斯卡矩阵 我们知道,二次项(x+y)n展开后的系数随n 的增大组成一个三角形表,称为杨辉三角 形。由杨辉三角形表组成的矩阵称为帕斯 卡(Pascal)矩阵。函数pascal(n)生成一个n阶 帕斯卡矩阵。
12
(2)构造对角矩阵
如果V是一个m个元素的向量,diag(V)将产生一个m×m对角 矩阵,
其主对角线元素即为向量V的元素。
例如:
diag([1,2,-1,4])
ans =
1000
0200 0 0 -1 0 0004 例如: diag(1:3,-1)
ans = 0000 1000 0200 0030
46.7390 33.3411 25.2880 46.8095 24.1667
y = 0.6 + sqrt(0.1)*randn(5)
2024/8/10
Application of Matlab Language
2
3.1.2 用于专门学科的特殊矩阵 (1) 魔方矩阵 魔方矩阵有一个有趣的性质,其每行、每 列及两条对角线上的元素和都相等。对于n 阶魔方阵,其元素由1,2,3,…,n2共n2个整数 组成。MATLAB提供了求魔方矩阵的函数 magic(n),其功能是生成一个n阶魔方阵。
第3章MATLAB矩阵分析与处理
第3章MATLAB矩阵分析与处理MATLAB是一种强大的数学计算软件,用于实现矩阵分析与处理。
在MATLAB中,矩阵是最常用的数据结构之一,通过对矩阵的分析和处理,可以实现很多有用的功能和应用。
本章将介绍MATLAB中矩阵分析与处理的基本概念和方法。
1.矩阵的基本操作在MATLAB中,我们可以使用一些基本的操作来创建、访问和修改矩阵。
例如,可以使用“[]”操作符来创建矩阵,使用“(”操作符来访问和修改矩阵中的元素。
另外,使用“+”、“-”、“*”、“/”等运算符可以对矩阵进行加减乘除等运算。
2.矩阵的运算MATLAB提供了一系列的矩阵运算函数,可以对矩阵进行常见的运算和操作,例如矩阵的转置、求逆、行列式、特征值和特征向量等。
这些函数可以帮助我们进行矩阵的分析和求解。
3.矩阵的分解与合并在MATLAB中,我们可以对矩阵进行分解或合并操作。
例如,可以将一个矩阵分解为其QR分解、LU分解或奇异值分解等。
另外,可以使用“[]”操作符来将多个矩阵合并为一个矩阵,或者使用“;”操作符来将多个矩阵连接为一个矩阵。
4.矩阵的索引与切片MATLAB提供了灵活的索引和切片功能,可以方便地访问和修改矩阵中的元素。
可以使用单个索引来访问单个元素,也可以使用多个索引来访问/修改一行或一列的元素。
此外,还可以通过切片操作来访问矩阵的一部分。
5.矩阵的应用矩阵分析与处理在MATLAB中有着广泛的应用。
例如,可以使用矩阵进行图像处理,通过对图像矩阵的操作,可以实现图像的缩放、旋转、滤波等。
另外,矩阵还可以用于线性回归、分类、聚类和模式识别等领域。
总之,MATLAB提供了丰富的功能和工具,可以方便地进行矩阵分析与处理。
无论是简单的矩阵运算,还是复杂的矩阵分解与合并,MATLAB 都提供了相应的函数和操作符。
通过熟练使用MATLAB,我们可以高效地进行矩阵分析与处理,从而实现各种有用的功能和应用。
实验三 MATLAB矩阵分析与处理、m文件
实验三、MATLAB 矩阵分析与处理、函数文件一、 实验目的1.掌握生成特殊矩阵的方法。
2.掌握矩阵分析的方法。
3.用矩阵求逆法解线性方程组。
4.理解函数文件的概念。
5.掌握定义和调用MATLAB 函数的方法。
二、 实验内容及结果1.设有分块矩阵⎥⎦⎤⎢⎣⎡=⨯⨯⨯⨯22322333EA S O R ,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证⎥⎦⎤⎢⎣⎡+=22S O RS R E A 。
程序:E=eye(3); %建立单位矩阵 R=rand(3,2); %建立随机矩阵 O=zeros(2,3); %建立零矩阵 S=diag([1,2]); %建立对角阵 A=[E,R;O,S]; X1=A*AX2=[E,R+R*S;O,S*S] 结果:X1和X2结果相等,即可证明原式成立。
2.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好。
为什么?程序:format ratH=hilb(5) %建立希尔伯特矩阵P=pascal(5) %建立帕斯卡矩阵Hh=det(H) %求行列式的值Hp=det(P)Th=cond(H) %求条件数Tp=cond(P)结果:P矩阵的条件数比矩阵H的条件数更接近于1,因此,矩阵P的性能要好于矩阵H。
3.建立一个5×5矩阵,求它的行列式值、迹、秩和范数。
程序:a=rand(5)b=det(a) %求行列式的值c=trace(a) %求迹d=rank(a) %求秩e1=norm(a,1) %求1-范数e2=norm(a) %求2-范数einf=norm(a,inf) %求 -范数结果:4.已知⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=5881252018629A 求A 的特征值及其特征向量,并分析其数学意义。
程序:A=[-29,6,18;20,5,12;-8,8,5];[V,D]=eig(A) %求特征值和特征向量 结果:求得的三个特征值为-25.3169,-10.5182和16.8351,各特征值对应的特征向量为V 的各列构成的向量。
matlab实验
实验一 MATLAB基本操作一、实验目的1、了解MATLAB应用程序环境2、掌握MATLAB语言程序的书写格式和MATLAB语言程序的结构。
3、掌握在MATLAB应用环境下编写程序4、掌握MATALB调试过程,帮助文件5、掌握MATLAB语言上机步骤,了解运行一个MATLAB程序的方法。
6、本实验可在学习完教材第一章后进行。
二、主要仪器及耗材PC电脑,MATLAB6.5软件三、实验内容和步骤1、MATLAB语言上机步骤:(1)、进入系统在C盘或其他盘上找到MATLAB或MATLAB6.5,然后双击其图标打开文件夹。
然后进行编辑源程序->编译->连接->执行程序->显示结果(2)、常用命令编辑切换(F6),编译(F9),运行(CTRL+F9),显示结果(ALT+F5)其它常用命令见“附录一”。
2、有下面的MATLAB程序。
(1)数值计算功能:如,求方程 3x4+7x3 +9x2-23=0的全部根p=[3,7,9,0,-23]; %建立多项式系数向量x=roots(p) %求根(2)绘图功能:如,绘制正弦曲线和余弦曲线x=[0:0.5:360]*pi/180;plot(x,sin(x),x,cos(x));(3)仿真功能:如,请调试上述程序。
3、熟悉MATLAB环境下的编辑命令,具体见附录一。
三、实验步骤1、静态地检查上述程序,改正程序中的错误。
2、在编辑状态下照原样键入上述程序。
3、编译并运行上述程序,记下所给出的出错信息。
4、按照事先静态检查后所改正的情况,进行纠错。
5、再编译执行纠错后的程序。
如还有错误,再编辑改正,直到不出现语法错误为止。
四、实验注意事项1、记下在调试过程中所发现的错误、系统给出的出错信息和对策。
分析讨论对策成功或失败的原因。
2、总结MATLAB程序的结构和书写规则。
五、思考题1、matlab到底有多少功能?2、MATLAB的搜索路径3、掌握使用MATLAB帮助文件实验二 MATLAB 矩阵及其运算一、 实验目的1、了解矩阵的操作,包括矩阵的建立、矩阵的拆分、矩阵分析等2、了解MATLAB 运算,包括算术运算、关系运算、逻辑运算等3、掌握字符串的操作,了解结构数据和单元数据。
MATLAB)课后实验答案[1]
实验一 MATLAB 运算基础1。
先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。
(1) 0122sin 851z e =+(2) 21ln(2z x =,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e az a a --+=++=--(4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5 解:4. 完成下列操作:(1)求[100,999]之间能被21整除的数的个数. (2) 建立一个字符串向量,删除其中的大写字母。
解:(1) 结果:(2)。
建立一个字符串向量例如:ch=’ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。
解: M 文件如下;5。
下面是一个线性方程组:1231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦ch =123d4e56g9(1) 求方程的解。
(2) 将方程右边向量元素b 3改为0。
53再求解,并比较b 3的变化和解的相对变化。
(3) 计算系数矩阵A 的条件数并分析结论。
解: M 文件如下:实验三 选择结构程序设计1. 求分段函数的值.2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=-5.0,—3.0,1.0,2。
《MATLAB程序设计》实验指导书
三、
实验仪器和设备
1、 计算机一台。 2、 MATLAB7.0 以上集成环境。
四、
预习要求
2
《MATLAB 程序设计》实验指导书
1、 复习 MATLAB 的启动与Байду номын сангаас出,熟悉 MATLAB 运行环境。 2、 复习 MATLAB 中矩阵的生成以及矩阵运算的基本原理。
五、
实验内容及步骤
实验内容:
1、 求下列表达式的值 1) z1
5
《MATLAB 程序设计》实验指导书
2) 函数调用 函数文件编制好后,就可调用函数进行计算了。函数调用的一般格式为 [输出实参表]=函数名(输入实参表) 注意:函数调用时各实参出现的顺序、个数,应与函数定义时形参的顺序、个 数一致,否则会出错。函数调用时,实参先传递给形参,然后再执行函数功能。 5、 选择结构 1) if 语句 a) 单分支 if 语句 if 条件 语句块 end b) 双分支 if 语句 if 条件 语句块 1 else 语句块 2 end c) 多分支 if 语句 if 条件 1 语句块 1 elseif 条件 2 语句块 2 …… elseif 条件 n 语句块 n else 语句块 n+1 end 2) switch 语句 switch 表达式 case 结果表 1 语句块 1 case 结果表 2 语句块 2 ……
二、
实验原理
1、 M 文件 用 MATLAB 语言编写的程序,称为 M 文件,它们的扩展名均为.m。M 文件根据 调用方式的不同分为两类,命令文件(Script file)和函数文件(Function file) 。 2、 建立新的 M 文件 启动 MATLAB 文本编辑器有 3 种方法: 1) 单击工具栏上的“New M-File”命令按钮。 2) 从 MATLAB 主窗口的“File”菜单中选择“New”菜单项,再选择“M-file”命令。 3) 在 MATLAB 命令窗口输入命令“edit”。 3、 打开已有的 M 文件 1) 在当前目录窗口选中要打开的 M 文件,双击鼠标左键。 2) 单击 MATLAB 主窗口工具栏上的“Open File”命令按钮,再从弹出的对话框中 选择所需打开的 M 文件。 3) 从 MATLAB 主窗口的“File”菜单中选择“Open”命令,在“Open”对话框中选中 所需打开的文件。 4) 在 MATLAB 命令窗口输入命令“edit 文件名” 。 4、 函数文件 1) 函数文件的基本结构 函数文件由 function 语句引导,其基本结构为: function 输出形参表=函数名(输入形参表) 注释说明部分 函数体语句 注意:函数名的命名规则与变量名相同。当输出形参多于一个时,应用方括号 括起来。
matlab矩阵实验报告
matlab矩阵实验报告
《MATLAB矩阵实验报告》
摘要:
本实验报告利用MATLAB软件进行了一系列矩阵实验,包括矩阵的创建、运算、特征值分解和矩阵方程的求解等。
通过实验,我们深入了解了矩阵在MATLAB
中的操作方法,掌握了矩阵运算的基本原理和技巧。
1. 实验目的
本实验旨在通过MATLAB软件进行矩阵实验,掌握矩阵的基本操作和运算方法,加深对矩阵特征值分解和矩阵方程求解的理解,提高MATLAB软件的应用能力。
2. 实验内容
(1)矩阵的创建和赋值
(2)矩阵的运算:加法、减法、乘法
(3)矩阵的特征值分解
(4)矩阵方程的求解
3. 实验过程
首先,我们在MATLAB软件中创建了若干个矩阵,并对其进行了赋值操作。
然后,我们进行了矩阵的加法、减法和乘法运算,观察了不同矩阵之间的运算结果。
接着,我们利用MATLAB自带的函数对矩阵进行了特征值分解,并分析了
特征值分解的意义和应用。
最后,我们利用MATLAB解决了一些矩阵方程,验
证了矩阵方程求解的正确性。
4. 实验结果
通过实验,我们成功创建了各种矩阵,并对其进行了各种运算。
特征值分解和
矩阵方程的求解也得到了满意的结果,验证了MATLAB在矩阵操作方面的强大功能。
5. 实验结论
通过本次实验,我们进一步加深了对矩阵操作的理解,掌握了MATLAB软件在矩阵实验方面的应用技巧。
矩阵在数学和工程领域有着广泛的应用,MATLAB 软件的矩阵操作功能为矩阵相关问题的研究和解决提供了便利和支持。
综上所述,本次实验取得了圆满成功,为我们进一步学习和应用矩阵知识奠定了良好的基础。
MATLAB矩阵分析与处理
THANKS
线性判别分析(LDA)
寻找最佳投影方向,使得同类数据投 影后尽可能接近,不同类数据投影后 尽可能远离。
数据可视化
散点图
展示两个变量之间的关系。
柱状图
展示一个或多个分类变量的频 数分布。
热力图
展示矩阵或数据集中的数值大 小,通过颜色的深浅表示数值 的大小。
可视化树
展示层次结构数据的图形表示 ,如决策树、组织结构图等。
矩阵的属性
维度
描述矩阵的行数和列数。
大小
描述矩阵中元素的数量。
类型
描述矩阵中元素的数据类型。
矩阵的基本操作
01
加法
对应元素相加。
02
减法
对应元素相减。
03
数乘
所有元素乘以一个数。
04
转置
将矩阵的行和列互换。
02 矩阵运算
矩阵加法与减法
矩阵加法
对应元素相加,结果矩阵与原矩阵具 有相同的维度。
矩阵减法
处理效果。
机器学习中的矩阵运算
数据矩阵的建立
在机器学习中,数据通常以矩阵形式表示,每一行表示一个样本,每一列表示一个特征。
矩阵运算在机器学习中的应用
通过矩阵运算,如线性代数运算、矩阵分解、特征值分解等,可以用于构建机器学习模型 ,如线性回归、逻辑回归、决策树等。
模型评估与优化
使用Matlab中的机器学习工具箱,可以对机器学习模型进行评估和优化,如交叉验证、 网格搜索等。
数值分析中的矩阵运算
数值分析中的矩阵运算
数值分析中涉及大量的矩阵运算,如矩阵乘法、矩阵除法、矩阵求 逆等。
矩阵运算在数值分析中的应用
通过这些矩阵运算,可以求解线性方程组、求解特征值问题、进行 矩阵分解等。
(完整版)Matlab矩阵分析与处理
1程序:E=eye(3); %E为3行3列的单位矩阵R=rand(3,2); %R为3行2列的随机矩阵O=zeros(2,3); %O为2行3列的全0矩阵S=diag([2,3]); %S为对角矩阵A=[E R;O S];B1=A^2B2=[E R+R*S;O S^2] %验证B1=B2,即:A2=[E R+R*S;O S2]结果:B1=B2,原式得证。
2程序:H=hilb(5);P=pascal(5);Hh=det(H) %矩阵H的行列式值Hp=det(P) %矩阵P的行列式值Th=cond(H) %矩阵H的条件数Tp=cond(P) %矩阵P的条件数结果:所以,矩阵H的性能更好。
因为H的条件数Th更接近1。
3程序:A=[1 25 45 58 4;45 47 78 4 5;2 58 47 25 9 ;58 15 36 4 96;58 25 12 1 35]; Ha=det(A) %矩阵A的行列式值Ja=trace(A) %矩阵A的迹Za=rank(A) %矩阵A的秩Fa=norm(A) %矩阵A的范数结果:4程序:A=[-29 6 18;20 5 12;-8 8 5];[V D]=eig(A) %D为全部特征值构成的对角阵;V的列向量分别为相应的特征向量结果:5程序:A=[1/2 1/3 1/4;1/3 1/4 1/5;1/4 1/5 1/6];b=[0.95 0.67 0.52]';X=A\b %方程的解c=[0.95 0.67 0.53]'; %将b3=0.52改为0.53Y=A\c %b3改变后的解t=cond(A) %系数矩阵的条件数结果:6程序:A=[4 2;3 9];B1=sqrtm(A) %矩阵A的平方根B2=sqrt(A)Sqrtm(A)求出的是矩阵A的平方根,即:A1^A1=A,求出的是A1Sqrt(A)求出的是A中每个元素的平方根,即:A2.^A2=A,求出的是A2。
Matlab实验指导书(1-10完整)
1.初次接触 Matlab 应该注意函数表达式的文本式描述。 2.在使用图形函数计算器 funtool 时,注意观察 1 号和 2 号窗口中函数的图形。
四、实验报告要求
1.针对图形函数计算器 funtool,对每一类型计算记录其中一个图形的曲线。 2.书写实验报告时要结构合理,层次分明,在分析描述的时候,需要注意语言的
⎪⎪⎨⎪−x12+x11+4
x2 x2
− 7x3 − 7x3
−15x4 + 12 x4
− 6x5 = 294 − x5 = −441
⎪⎩6x1 +11x2 +11x3 − 9x4 −13x5 = 103
3.用网孔电流法求如下电路的各支路电流。
Ia
Ib
Id
Ic
60Ω
20Ω
40Ω
40Ω
50V
10V
40V
流畅。
《Matlab 语言及其在电子信息科学中的应用》实验指导书
许钢 编
3
实验二:M 文件和 Mat 文件操作
一、实验目的
1.定制自己的工作环境。 2.编写简单的 M 文件。 3.保存内存工作区中的变量到.mat 文件。 4.学会只用 Matlab 帮助。
二、实验内容
1.使用 format 命令和 File|Peferences 菜单定制自己的工作环境。 2.编写如下 M 文件,试调整参数 a 的大小,观察并记录 y1、y2 的波形特征。
《Matlab 语言及其在电子信息科学中的应用》实验指导书
许钢 编
4.用结点电压法求如下电路的结点电压 un1、un2。
① + u2 - ②
2kΩ
10A
《数学软件》实验报告-MATLAB矩阵分析与处理
数学软件实验报告(二)系:专业:年级:姓名:学号:实验课程:实验室号:_ 实验设备号:实验时间:指导教师签字:成绩:1. 实验项目名称:MATLAB矩阵分析与处理2. 实验目的和要求1.掌握生成特殊矩阵的方法2.掌握矩阵分析的方法3.用矩阵求逆解线性方程组3. 实验使用的主要仪器设备和软件方正商祺N260微机;MATLAB7. 0或以上版本4. 实验的基本理论和方法实验原理:(1)矩阵的建立(2)建立随机矩阵X=a+(b-a)×rand(n)(注(a,b)为范围,n为阶数)(3)round函数(4)矩阵的乘除(5)矩阵行列式的值det(A)(6)矩阵的迹trace(A)(7)矩阵的秩rank(A)(8)提取矩阵对角线元素diag(A)(9)构造对角阵diag(V)(10)矩阵的特征值与特征向量[V,D]=eig(A)(11)求解线性方程组X=A\B5. 实验内容与步骤(描述实验中应该做什么事情,如何做等,实验过程中记录发生的现象、中间结果、最终得到的结果,并进行分析说明)(包括:题目,写过程、答案)题目:1.设有分块矩阵A=⎥⎦⎤⎢⎣⎡⨯⨯⨯⨯22322333SORE,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角矩阵,试通过数值计算验证A2=⎥⎦⎤⎢⎣⎡+2SORSRE。
>> E=[1 0 0;0 1 0;0 0 1]E =1 0 00 1 00 0 1>> R=[1 2;1 3;2 3]R =1 21 32 3>> O=[0 0 0;0 0 0]O =0 0 00 0 0>> S=[1 2;2 1]S =1 22 1>> A=[E R;O S]A =1 0 0 1 20 1 0 1 30 0 1 2 30 0 0 1 20 0 0 2 1>> A^2ans =1 0 0 6 60 1 0 8 80 0 1 10 100 0 0 5 40 0 0 4 5>> [E R+R*S;O S^2]ans =1 0 0 6 60 1 0 8 80 0 1 10 100 0 0 5 40 0 0 4 52.建立一个5 5矩阵,其元素[100,200]范围内的随机整数,求它的行列式值、迹、秩,最后提取A的主对角线元素,并将这些元素构成对角阵B。
matlab矩阵实验报告
matlab矩阵实验报告Matlab矩阵实验报告引言:Matlab是一种强大的数学计算工具,广泛应用于科学研究、工程设计和数据分析等领域。
其中,矩阵操作是Matlab的一项重要功能,它提供了丰富的矩阵运算和处理函数。
本实验将通过几个具体的案例,展示Matlab中矩阵操作的应用和效果。
一、矩阵的创建与赋值在Matlab中,可以通过直接赋值、随机生成或者通过其他矩阵运算得到新的矩阵。
例如,我们可以使用以下代码创建一个3行4列的矩阵A,并为其赋予随机的整数值:A = randi([1, 10], 3, 4);这样,矩阵A中的元素就是1到10之间的随机整数。
二、矩阵运算Matlab提供了丰富的矩阵运算函数,包括加法、减法、乘法、除法、转置等。
我们可以通过以下代码演示这些运算的效果:B = A + 2; % 矩阵加法C = A - 2; % 矩阵减法D = A * 2; % 矩阵乘法E = A / 2; % 矩阵除法F = A.'; % 矩阵转置通过这些运算,我们可以快速对矩阵进行数值的调整和转换。
三、矩阵的索引与切片在Matlab中,我们可以使用索引和切片操作来获取矩阵中特定的元素或子矩阵。
例如,我们可以通过以下代码获取矩阵A中的第二行第三列的元素:x = A(2, 3);同样,我们也可以通过切片操作获取矩阵A中的某一行或某几行,例如:y = A(2, :); % 获取第二行的所有元素通过这样的操作,我们可以方便地提取出矩阵中我们感兴趣的部分。
四、矩阵的运算函数除了基本的矩阵运算外,Matlab还提供了许多常用的矩阵运算函数,如求矩阵的逆、行列式、特征值等。
例如,我们可以使用以下代码计算矩阵A的逆矩阵和行列式:invA = inv(A); % 矩阵的逆detA = det(A); % 矩阵的行列式这些函数可以帮助我们更方便地进行矩阵的运算和分析。
五、矩阵的应用案例矩阵在科学研究和工程设计中有着广泛的应用。
matlab04-第二章矩阵分析和字符串
姚吉利 Ysy_941123@ 建筑工程学院测绘系
上节重点内容回顾
上节重点内容回顾
基本运算有:+、-、*、/、\和^ 关系运算有==、>、<、<=、>=、~= 关系成立值为1,不成立值为0 逻辑运算(洪树波):3种&(与)、|(或)、~(非) 小例1 A&B(A、B为关系表达式)的规则是: A=1 B=1 A&B=1 其它 A&B=0 小例2 A|B(A、B为关系表达式)的规则是: A=0 B=0 A&B=0 其它 A&B=1
字串和其ASCII code
double 指令: 检视字串变量的储存內容(即 ASCII 內码) char 指令: 将 ASCII 內码转回字串形式 例:str1=‘abcdefgh’;str2=upper(str1); >>double(str1) ans = 98 99 100 101 102 103 104 str2 ABCDEFGH >> double(str2) ans = 65 66 67 68 69 70 71 72
6、对角矩阵
对角矩阵:只有对角线上有非0元素的矩阵。 提取对角线上的元素 D=diag([1 2 3;4 5 6;7 8 9]) D= 1 5 9 构造对角矩阵:diag(V)
>> d=diag(1:5)
d= 1 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 4 0 0 0 0 0 5
前三个是1,后三个是3的对角阵
>> d=diag([1,1,1,3,3,3])
d= 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 3 0 0 0 0 0 0 3 0 0 0 0 0 0 3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三 MATLAB 矩阵分析与处理、字符串操作
一、实验目的
1.掌握生成特殊矩阵的方法
2.熟练掌握矩阵的特殊操作及一些特殊函数
3.熟练掌握MATLAB 的字符串操作
4.掌握MATLAB 矩阵的关系运算及逻辑运算法则
二、实验内容
1.特殊矩阵分析与处理操作
常用的产生通用特殊矩阵的函数有:zeros( );ones( );eye( );rand( );randn( ). 下面建立随机矩阵。
(1) 在区间[20,50]内均匀分布的5阶随机矩阵。
(2) 均值为0.6、方差为0.1的5阶随机矩阵。
说明:产生(0 ,1)区间均匀分布随机矩阵使用rand 函数,假设得到了一组满
足(0,1)区间均匀分布的随机数x i ,则若想得到任意[a,b]区间上均匀分布的随机数,只需要用i i x a b a y )(-+=计算即可。
产生均值为0、方差为1的标准正态分布随机矩阵使用randn 函数,假设已经得到了一组标准正态分布随机数x i ,如果想要更一般地得到均值为i i x y ,、σμσμ+=可用的随机数方差为2计算出来。
针对本例,命令如下:
x=20+(50-20)*rand(5)
y=0.6+sqrt(0.1)*randn(5)
建立对角阵。
diag( )函数除了可以提取矩阵的对角线元素以外,还可以用来建立对角矩阵。
设V 为具有m 个元素的向量,diag(V)将产生一个m*m 对角矩阵,其主对角线元素即为向量V 的元素。
例如:
diag([1,2,-1,4])
ans= 40000
10000
20000
1 diag(V)函数也有另一种形式diag(V ,k),其功能是产生一个n*n(n=m+|k|)的对角矩阵,其第k 条对角线的元素即为向量V 的元素。
例如:
diag(1:3,-1)
ans=03000
0200
0010
000
矩阵的旋转
函数rot90(A,k)表示将矩阵A 以90度为单位对矩阵按逆时针方向进行k 倍的旋转。
rem 与mod 函数的区别
练习:
1> 写出完成下列操作的命令。
(1)建立3阶单位矩阵A 。
eye(3)
(2)建立5*6随机矩阵A ,其元素为[100,200]范围内的随机整数。
A=100+(200-100)*rand(5,6)
(3)产生均值为1,方差为0.2的500个正态分布的随机数。
B=1+sqrt(0.2)*randn(50,10)
(4)产生和A 同样大小的零矩阵。
zeros(size(A))
(5)将矩阵A 主对角线的元素加30。
B=eye(5,6)*30
A+B
(6)从矩阵A 提取主对角线元素,并以这些元素构成对角阵。
B=diag(diag(A)’) 注:转置是把列向量转变成行向量。
2> 先建立5*5的矩阵A ,然后将A 的第一行元素乘以1,第二行元素乘以2,…,第五行乘以5。
(提示:用一个对角矩阵左乘一个矩阵时,相当于用对角阵的
第一行元素乘以该矩阵的第一行,用对角阵的第二行乘以该矩阵的第二行,…,依次类推。
因此,只需按要求构造一个对角矩阵D ,并用D 左乘A 即可。
如果要对A 的每列元素乘以同一个数,可以用一个对角阵右乘矩阵A 。
)矩阵A 中的元素自已随便建立。
A=rand(5)
D=diag(1:5)
D*A
3> 使用函数,实现方阵左旋90度或右旋90度的功能。
原矩阵为A ,A 左旋后得到B ,右旋后得到C 。
⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=129631185210741A ,⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=1011
12789456123321654987121110,C B B=rot90(A)
C=rot90(A,3) 4> 将矩阵⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡--=90
1511250324153211A 用flipud 、fliplr 、rot90、diag 、triu 和tril 函数进行操作。
5> 将矩阵⎥⎦
⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=03410,61195,71521c b a 组合成两个新矩阵。
(1) 组合成一个3*4的矩阵,第一行为按列顺序排列的a 矩阵元素,第二
行为按列顺序排列的b 矩阵元素,第三行为按列顺序排列的c 矩阵元
素,即⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡043106911572151 a1=reshape(a,1,4)
b1=reshape(b,1,4)
c1=reshape(c,1,4)
d=[a1;b1;c1]
(2)按照a,b,c的列顺序组合成一个行矢量,即[1 15 2 7 5 11 9 6 10 3 4 0] d=[a1 b1 c1]
6>输入a=[2.59 –1.49 3.1 -0.2],分别使用数学函数ceil、fix、floor、round
查看各种取整的运算结果。
7> 在[0,3π]区间,求y=sin(x)的值。
(从函数值着手进行处理)要求:
(1)消去负半波,即(π,2π)区间内的函数值置0。
(2)(π/3, 2π/3 )和( 7π/3, 8π/3 )区间内取值均为sin π/3 。
2、字符串操作
建立一个字符串向量,然后对该向量做如下处理:
(1)取第1~5个字符组成的子字符串。
(2)将字符串倒过来重新排列。
(3)将字符串中的小写字母变成相应的大写字母,其余字符不变。
(4)统计字符串中小写字母的个数。
命令如下:
ch=‘ABc123d4e56Fg9’;
subch=ch(1:5) %取子字符串
revch=ch(end:-1:1) %将字符串倒排
k=find(ch>=‘a’&ch<=‘z’) %找小写字母的位置
ch(k)=ch(k)-(‘a’-’A’) %将小写字母变成相应的大写字母char(ch)
length(k) %统计小写字母的个数
练习:
1.输入字符串变量a为“hello”,将a的每个字符向后移4个,例如“h”变为
“l”,然后再逆序排放赋给变量b。
a=’hello’
a=abs(a)+4或者a(1:5)=a(1:5)+4则直接省略char(a)的过程。
或者a=a(1:5)+4不能省略下一个语句
a=char(a)
b=a(end:-1:1)。