matlab实验报告矩阵代数的运用
- 格式:doc
- 大小:96.50 KB
- 文档页数:3
MATLAB实验报告一、实验目的本次 MATLAB 实验旨在深入了解和掌握 MATLAB 软件的基本操作和应用,通过实际编程和数据处理,提高解决问题的能力,培养编程思维和逻辑分析能力。
二、实验环境本次实验使用的是 MATLAB R2020a 版本,运行在 Windows 10 操作系统上。
计算机配置为英特尔酷睿 i5 处理器,8GB 内存。
三、实验内容(一)矩阵运算1、矩阵的创建使用直接输入、函数生成和从外部文件导入等方式创建矩阵。
例如,通过`1 2 3; 4 5 6; 7 8 9` 直接输入创建一个 3 行 3 列的矩阵;使用`ones(3,3)`函数创建一个 3 行 3 列元素全为 1 的矩阵。
2、矩阵的基本运算包括矩阵的加减乘除、求逆、转置等。
例如,对于两个相同维度的矩阵`A` 和`B` ,可以进行加法运算`C = A + B` 。
3、矩阵的特征值和特征向量计算通过`eig` 函数计算矩阵的特征值和特征向量,加深对线性代数知识的理解和应用。
(二)函数编写1、自定义函数使用`function` 关键字定义自己的函数,例如编写一个计算两个数之和的函数`function s = add(a,b) s = a + b; end` 。
2、函数的调用在主程序中调用自定义函数,并传递参数进行计算。
3、函数的参数传递了解值传递和引用传递的区别,以及如何根据实际需求选择合适的参数传递方式。
(三)绘图功能1、二维图形绘制使用`plot` 函数绘制简单的折线图、曲线等,如`x = 0:01:2pi; y = sin(x); plot(x,y)`绘制正弦曲线。
2、图形的修饰通过设置坐标轴范围、标题、标签、线条颜色和样式等属性,使图形更加清晰和美观。
3、三维图形绘制尝试使用`mesh` 、`surf` 等函数绘制三维图形,如绘制一个球面`x,y,z = sphere(50); surf(x,y,z)`。
(四)数据处理与分析1、数据的读取和写入使用`load` 和`save` 函数从外部文件读取数据和将数据保存到文件中。
MATLAB矩阵的分析与处理截图版实验报告实验名称:MATLAB矩阵的分析与处理
实验步骤:
(1)打开matlab软件,进行操作界面的基本设置,转到矩阵的工作空间;
(2)创建矩阵并进行矩阵的分析操作,包括将矩阵拆分成2部分:A矩阵和B 矩阵,并运用函数求和、求积、求最大值等操作;
(3)进行矩阵的处理操作,包括矩阵的相乘、运算求值等操作,实现矩阵的转置操作;
(4)并进行图形处理,将计算数据和结果以函数图、标尺图、表格等方式展现出来,并进行分析;
(5)最后,根据实验的结果,总结实验的感悟和体会。
实验结果:
实验过程中,使用了MATLAB矩阵的基本操作,包括矩阵的求和、求积、求最大值、相乘、求值等操作,实现了矩阵的处理,并且将计算数据以图形的方式展示出来,有利于我们更好的理解数据,作出更准确的判断:
我们创建的矩阵如下图所示:

综上所述,我在本次实验中,掌握了MATLAB矩阵的基本操作,及其运用函数求和求积求最大值、相乘运算求值等方法,也通过图像数据展现来更好的了解矩阵的变化和分析结果。
通过实验,我能够更好地掌握MATLAB矩阵的分析与处理方法,从而加深对MATLAB 矩阵的理解,并为以后的操作打下坚实的基础。
matlab矩阵运算与元素群运算实验总结matlab矩阵运算与元素群运算实验总结1. 引言在数学和工程学科中,矩阵与元素群的运算是非常重要的基础知识。
Matlab作为一种强大的数学计算工具,提供了丰富的矩阵运算与元素群运算功能。
在本次实验中,我们对Matlab中的矩阵运算与元素群运算进行了深入的研究和实践,以便更好地理解和掌握这些运算方法。
2. 矩阵运算矩阵作为一种重要的数学对象,广泛应用于各个学科领域。
在Matlab 中,我们可以方便地进行矩阵运算,包括加法、减法、乘法、转置等。
2.1 加法矩阵的加法是指将两个矩阵对应位置的元素相加,得到一个新的矩阵。
在Matlab中,我们可以使用"+"符号进行矩阵的加法运算。
假设有两个矩阵A和B,它们的大小都为n×m,则它们的加法运算结果C可以表示为C = A + B。
2.2 减法矩阵的减法是指将两个矩阵对应位置的元素相减,得到一个新的矩阵。
在Matlab中,我们可以使用"-"符号进行矩阵的减法运算。
假设有两个矩阵A和B,它们的大小都为n×m,则它们的减法运算结果C可以表示为C = A - B。
2.3 乘法矩阵的乘法是指将两个矩阵按照一定的规则进行运算,得到一个新的矩阵。
在Matlab中,我们可以使用"*"符号进行矩阵的乘法运算。
假设有两个矩阵A和B,它们的大小分别为n×m和m×p,则它们的乘法运算结果C可以表示为C = A * B。
2.4 转置矩阵的转置是指将矩阵的行与列进行互换,得到一个新的矩阵。
在Matlab中,我们可以使用"'"符号进行矩阵的转置运算。
假设有一个矩阵A,它的大小为n×m,则它的转置运算结果B可以表示为B = A'。
3. 元素群运算元素群是指集合上定义的一种二元运算,它满足结合律、封闭性、存在单位元素和存在逆元素等性质。
MATLAB在矩阵计算中的应用首先,MATLAB提供了一些用于构建、操作和分析矩阵的基本函数。
用户可以使用这些函数创建、填充和操作多维矩阵。
例如,用户可以使用“zeros”函数创建一个全零矩阵,使用“ones”函数创建一个全一矩阵。
此外,MATLAB还提供了一些用于操作矩阵的算术运算符和函数,例如加法、减法、乘法和除法。
这使得矩阵的计算变得非常简单和高效。
其次,MATLAB提供了一些用于矩阵分解和求解线性方程组的函数。
这些函数包括LU分解、Cholesky分解、QR分解和SVD分解等。
用户可以使用这些函数将一个矩阵分解成更简单的形式,从而更容易求解线性方程组。
此外,MATLAB还提供了用于求解线性方程组的函数,例如“linsolve”和“backslash”函数。
用户只需输入一个系数矩阵和一个右手边矩阵,即可得到线性方程组的解。
另外,MATLAB还提供了一些用于矩阵特征值和特征向量计算的函数。
这些函数包括特征值分解函数、“eig”函数和特征向量分解函数、“eigenvector”函数等。
用户可以使用这些函数计算矩阵的特征值和特征向量。
这对于研究矩阵的性质和在其它数值方法中的应用非常重要。
例如,特征值和特征向量在图像处理和信号处理中广泛应用。
此外,MATLAB还提供了一些用于矩阵计算和分析的可视化工具。
用户可以使用这些工具绘制矩阵的图形表达和可视化结果。
例如,用户可以使用“plot”函数绘制矩阵的曲线图、散点图和三维图。
此外,MATLAB还提供了一些用于二维和三维图形绘制的函数,例如“surf”函数和“contour”函数。
这些可视化工具可以帮助用户更好地理解和分析矩阵的结构和性质。
最后,MATLAB还提供了一些高级的矩阵和线性代数函数。
这些函数包括奇异值分解函数、“svd”函数和矩阵求逆函数、“inv”函数等。
用户可以使用这些函数进行更复杂的矩阵计算和分析。
此外,MATLAB还提供了一些用于矩阵优化和最小二乘拟合的函数。
实验二 MATLAB 的矩阵运算一、实验目的:掌握基本的矩阵运算及常用的函数。
二、实验内容:⎥⎦⎤⎢⎣⎡=654321a ⎥⎦⎤⎢⎣⎡-=531142b ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=201c ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=063258741d 1、下列运算是否合法,为什么?如合法,结果是多少?(1) result1 = a'a=[1 2 3;4 5 6];b=[2 4 -1;1 3 5];c=[1;0;-2];d=[1 4 7;8 5 2;3 6 0] >> a=[1 2 3;4 5 6];b=[2 4 -1;1 3 5];c=[1;0;-2];d=[1 4 7;8 5 2;3 6 0]; >> result1=aresult1 =1 2 34 5 6(2) result2 = a * b>> result=a*b??? Error using ==> mtimesInner matrix dimensions must agree.不合法(3) result3 = a + b>> result3=a+bresult3 =3 6 25 8 11(4) result4 = b * d>> result4=b*dresult4 =31 22 2240 49 13(5) result5 = [b ; c' ] * d>> result5=[b;c']*dresult5 =31 22 2240 49 13-5 -8 7(6) result6 = a . * b>> result6=a.*bresult6 =2 8 -34 15 30(7)result7 = a . / b>> result7=a./bresult7 =0.5000 0.5000 -3.00004.0000 1.6667 1.2000(8) result8 = a . * c>> result8=a.*c??? Error using ==> timesMatrix dimensions must agree.不合法(9) result9 = a . \ b>> result9=a.\bresult9 =2.0000 2.0000 -0.33330.2500 0.6000 0.8333(10) result10 = a . ^2>> result10=a.^2result10 =1 4 916 25 36(11) result11 = a ^2>> result11=a^2??? Error using ==> mpowerMatrix must be square.不合法(12) result11 = 2 . ^ a>> result12=2.^aresult12 =2 4 816 32 642、用MATLAB 求下面的的方程组。
线性代数的MATLAB 软件实验一、实验目的1.熟悉矩阵代数主要MATLAB 指令。
2.掌握矩阵的转置、加、减、乘、除、乘方、除法等MATLAB 运算。
3.掌握特殊矩阵的MATLAB 生成。
4.掌握MATLAB 的矩阵处理方法。
5.掌握MATLAB 的矩阵分析方法。
6.掌握矩阵的特征值与标准形的MATLAB 验算。
7.掌握线性方程组的MATLAB 求解算法。
二、实验原理1.线性方程组 【基本观点】自然科学和工程实践很多问题的解决都涉及线性代数方程组的求解和矩阵运算.一方面,许多问题的数学模型本身就是一个线性方程组,例如结构应力分析问题、电子传输网分析问题和投入产出分析问题;另一方面,有些数值计算方法导致线性方程组求解,如数据拟合,非线性方程组求解和偏微分方程组数值解等.n 个未知量m 个方程的线性方程组一般形式为⎪⎪⎩⎪⎪⎨⎧=+++=+++=+++.,,22112222212111212111m n mn m m n n n n b x a x a x a b x a x a x a b x a x a x a (3.1) 令,,,2121212222111211⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫⎝⎛=m n mn m m n n b b b b x x x x a a a a a aa a a A则得矩阵形式Ax=b. (3.2)若右端b=0,即Ax=0, (3.3)则称方程组为齐次的.方程组(3.1)可能有唯一解,可能有无穷多解,也可能无解,主要取决于系数矩阵A 及增广矩阵(A,b )的秩.若秩(A )=秩(A,b )=n,存在唯一解,其解理论上用Cramer 法则求出,但由于这种方法要计算n+1个n 阶行列式,计算量太大通常并不采用;若秩(A )=秩(A,b )<n,存在无穷多解,其通解可表示为对应齐次方程组(3.3)的一个基础解系与(3.2)的一个特解的叠加;若秩(A )≠秩(A,b ),则无解,这时一般寻求最小二乘近似解,即求x 使向量Ax-b 模最小.P50矩阵左除的数学思维:恒等变形Ax=b 方程两边的左边同时除以A ,得:b AAx A11=,即:b A b Ax 11-==MATLAB 的实现(左除):x=A\b 2.逆矩阵 【基本观点】方阵A 称为可逆的,如果存在方阵B ,使 AB=BA=E,这里E 表示单位阵.并称B 为A 的逆矩阵,记B=1-A .方阵A 可逆的充分必要条件是A 的行列式det A ≠0.求逆矩阵理论上的公式为*1det 1A AA =-, (3.4)这里*A 为A 的伴随矩阵.利用逆矩阵,当A 可逆时,(3.2)的解可表示为b A x 1-=.由于公式(3.4)涉及大量行列式计算,数值计算不采用.求逆矩阵的数值算法一般是基于矩阵分解的方法.3.特征值与特征向量 【基本观点】对于方阵A ,若存在数λ和非零向量x ,使,x Ax λ= (3.5) 则称λ为A 的一个特征值,x 为A 的一个对应于特征值λ的特征向量.特征值计算归结为特征多项式的求根.对于n 阶实数方阵,特征多项式在复数范围内总有n 个根。
2014秋2012级《MATLAB程序设计》实验报告班级:软件C121姓名:冯杨腾学号:125692实验二 MATLAB矩阵及运算一、实验目的1、掌握矩阵和数组的表示与赋值方法2、了解字符串、结构和单元等数据类型在MATLAB中的使用3、掌握MATLAB中基本的数值运算,了解基本统计函数的使用4、掌握多项式基本运算以及线性方程组的求解方法二、实验内容1、利用“:”操作符和linspace函数生成数组a=[0,6,12,18,24,30,36,42],并将数组a分别转化为4*2和2*4的矩阵。
>> linspace(0,42,8)ans =0 6 12 18 24 30 36 42>> 0:6:42ans =0 6 12 18 24 30 36 42>> a=[0,6,12,18,24,30,36,42]a =0 6 12 18 24 30 36 42>> reshape(a,4,2)ans =0 246 3012 3618 42>> reshape(a,2,4)ans =0 12 24 366 18 30 422、在MATLAB中输入矩阵3681-5722176916-121513-210A⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦,并使用MATLAB回答以下的问题:>> A=[3,6,8,1;-5,7,22,17;6,9,16,-12;15,13,-21,0]A =3 6 8 1-5 7 22 176 9 16 -1215 13 -21 0(1)创建一个由A中第2列到第4列所有元素组成的4Χ3数组B; >> A=[3,6,8,1;-5,7,22,17;6,9,16,-12;15,13,-21,0]A =3 6 8 1-5 7 22 176 9 16 -1215 13 -21 0>> A(:,2:4)ans =6 8 17 22 179 16 -1213 -21 0(2)创建一个由A中第3行到第4行所有元素组成的2Χ4数组C; >> A(3:4,:)ans =6 9 16 -1215 13 -21 0(3)创建一个由A中前两行和后三列所有元素组成的2Χ3数组D;>> A(1:2,2:4)ans =6 8 17 22 17(4)根据A利用单下标方法和双下标方法分别创建向量a=[-5 6 15]和向量b=[6 8 1],并利用向量a和b生成矩阵5668151E-⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦;单下标:>> a=A([2,3,4])a =-5 6 15>> b=A([5,9,13])b =6 8 1双下标:>> a=A(2:4,1)a =-5615>> b=A(1,2:4)b =6 8 1>> A=[3,6,8,1;-5,7,22,17;6,9,16,-12;15,13,-21,0]; >> a=A(2:4,1);%双下标>> b=A(1,2:4);%双下标>> c=transpose(b);>> E=[a,c]E =-5 66 815 1>> A=[3,6,8,1;-5,7,22,17;6,9,16,-12;15,13,-21,0]; >> a=A([2,3,4]);%单下标>> b=A([5,9,13]);%单下标>> d=[a;b];>> E=transpose(d)E =-5 66 815 1(5)利用“[]”删除矩阵A的第二行和第三列。