matlab实验报告矩阵代数的运用
MATLAB实验报告
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解法
实验总结: 本次实验涵盖了矩阵代数的理论分析和实际数值求解两大内容。 其中理论分析要 求能将实际具体问题抽象为数学中的矩阵代数形式; 实际数值求解部分则需要利 用 mathlab 相关命令求出相应的数值解。
ans = 0.7155
ans = 0.7615
ans = 0.8331
ans = 0.8333 —————————————————————————————————— 利用 matlab 验证发现该结论依然正确,且此时收敛速度明显加快! (4)为方便起见,设农村人口第 n 年对应比例为 yn x x 0.99 0.05 ,即 n 1 A n , xn y n 1 。 那么对应的转移矩阵 A 0.01 0.95 y y n 1 n —————————————————————————————————— >> clear; >> A=[0.99 0.05;0.01 0.95]; >> [P,T]=eig(A) P= 0.9806 0.1961 -0.7071 0.7071
Y= 16.9063 16.5032 3.7154
F= 20.6633 9.2830 21.0537 —————————————————————————————————— 将预测的结果列成一新的投入产出表格 消耗部门 最后需求 总产值 工业 X 工业 农业 第三产业 D 9.0167 10.3145 1.2385 17 37.5696 生产部门 工业 25.7862 3.3813 5.1572 17 24.7690 0.2477 农业 1.0314 17 2.2292 第三产业 4.5084 20.6633 9.2830 21.0537 新创造的价值 F 37.5696 25.7862 24.7690 总产出 X 改进或思考: 如何利用分配平衡方程组或者消耗平衡方程组,是求解此类问题的 关键。
数学建模实验报告(一)MATLAB中矩阵的基本操作
1.5270
j =
2 3 2 5 1 4
>> min(a,[],1)
ans =
Columns 1 through 5
-2.3299 -0.1303 -1.3617 -1.1176 -0.3031
Column 6
0.0230
>> min(a,[],2)
ans =
-0.4762
-0.0679
-2.3299 -0.1303 0.4550 -1.1176 -0.2176
-1.4491 0.1837 -0.8487 1.2607 -0.3031
Column 6
0.0230
0.0513
0.8261
1.5270
0.4669
>> size(a)
ans =
5 6
>> [i,j]=find(a==max(max(a)))
-1.0000 2.5000 1.0000
3.5000 5.5000 2.5000
>> X=D
X =
4.0000 1.5000 -1.0000
-1.0000 2.5000 1.0000
3.5000 5.5000 2.5000
5、利用randn(5,6)命令生成一个随机矩阵T,求T的矩阵大小,每一行、每一列的最大值和最小值,整个矩阵的最大值与最小值;然后将整个矩阵的最大值所在位置的元素换为100,将最小值所在位置的元素取为-100。
(2):>> a=[2 5 8;7 1 9]
a =
2 5 8
7 1 9
>> b=[4 2 1 3;0 7 6 2;-3 5 9 -1]
Matlab线性代数实验解析
工资问题
问题 现有一个木工,一个电工和一个油漆
工,三人互相同意彼此装修他们自己的房子。 在装修之前,他们达成协议:(1)每人总共 工作10天(包括给自己家干活在内);(2) 每人的日工资根据一般的市价在60~80元之 间;(3)每人的日工资数应使得每人的总收 入与总支出相等。
r(A)=r(A,b)<n,方程有无穷解
特解:A\b或pinv(A)*b 用null(A,’r’)求得AX=0 的基础解系
A = A(:,1:6);
b = 260*ones(8,1);
A\b
pinv(A)*b
Matlab线性代数实验解析
练习
判断下面的线性方程组是否有解,若有解 求其通解。
2x1 x2 x3 x4 1 3x1 2x2 x3 3x4 4 x1 4x2 3x3 5x4 2
Matlab线性代数实验解析
实验练习
还相机处
甲
乙
丙
甲
租相机 处
乙
丙
0.8 0.2 0 0.2 0 0.8 0.2 0.2 0.6
Matlab线性代数实验解析
课堂练习1
1 1 1 1
设A
1
2
3
4
,求A的秩、行列式、
1 4 9 16
1
8
27
6
4
逆矩阵及行最简形。
Matlab线性代数实验解析
电工、油漆工的日工资。 根据协议中每人总支出与总收
入相等的原则,分别考虑木工、电 工及油漆工的总收入和总支出。
Matlab线性代数实验解析
问题分析与建立模型
可得方程得方程组
2 x1 4 x1
x2 6x3 5x2 x3
MATLAB矩阵的分析与处理截图版实验报告
MATLAB矩阵的分析与处理截图版实验报告实验名称:MATLAB矩阵的分析与处理
实验步骤:
(1)打开matlab软件,进行操作界面的基本设置,转到矩阵的工作空间;
(2)创建矩阵并进行矩阵的分析操作,包括将矩阵拆分成2部分:A矩阵和B 矩阵,并运用函数求和、求积、求最大值等操作;
(3)进行矩阵的处理操作,包括矩阵的相乘、运算求值等操作,实现矩阵的转置操作;
(4)并进行图形处理,将计算数据和结果以函数图、标尺图、表格等方式展现出来,并进行分析;
(5)最后,根据实验的结果,总结实验的感悟和体会。
实验结果:
实验过程中,使用了MATLAB矩阵的基本操作,包括矩阵的求和、求积、求最大值、相乘、求值等操作,实现了矩阵的处理,并且将计算数据以图形的方式展示出来,有利于我们更好的理解数据,作出更准确的判断:
我们创建的矩阵如下图所示:
![图1](./矩阵1.jpg)
综上所述,我在本次实验中,掌握了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在矩阵计算中的应用首先,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的矩阵运算
实验二 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软件实验报告
线性代数的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 个根。
实验二 MATLAB矩阵及运算
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的第二行和第三列。
如何在MATLAB中进行矩阵运算与线性代数操作
如何在MATLAB中进行矩阵运算与线性代数操作MATLAB是一种功能强大的数学软件,广泛用于科学和工程领域。
它提供了丰富的矩阵运算和线性代数操作功能,能够帮助用户进行各种数学计算和分析。
矩阵的创建是进行矩阵运算和线性代数操作的第一步。
在MATLAB中,可以使用不同的方式创建矩阵,包括手动输入元素、使用内置函数、导入外部数据等。
一种创建矩阵的方法是手动输入元素。
可以使用矩阵赋值符号(`=`)将元素赋值给矩阵变量。
例如,以下代码创建了一个3x3的矩阵A:```MATLABA = [1 2 3; 4 5 6; 7 8 9];```另一种创建矩阵的方法是使用内置函数。
MATLAB提供了许多内置函数来生成特定类型的矩阵,如零矩阵、单位矩阵、对角矩阵等。
例如,以下代码创建了一个3x3的零矩阵B:```MATLABB = zeros(3, 3);```还可以使用其他内置函数创建特定类型的矩阵。
例如,使用`ones`函数可以创建一个全1矩阵,使用`eye`函数可以创建一个单位矩阵。
进行矩阵运算时,MATLAB提供了许多运算符和函数。
例如,`+`运算符可以用于矩阵的加法,`*`运算符可以用于矩阵的乘法。
此外,MATLAB还提供了其他运算符和函数,如转置运算符(`'`)、矩阵的逆(`inv`函数)、矩阵的转置(`transpose`函数)等。
以下是一些常见的矩阵运算和线性代数操作的示例代码。
1. 矩阵加法:```MATLABA = [1 2; 3 4];B = [5 6; 7 8];C = A + B;```2. 矩阵乘法:```MATLABA = [1 2; 3 4];B = [5 6; 7 8];C = A * B;```3. 矩阵的转置:```MATLABA = [1 2 3; 4 5 6];B = transpose(A);```4. 矩阵的逆:```MATLABA = [1 2; 3 4];B = inv(A);```5. 矩阵的行列式:```MATLABA = [1 2; 3 4];det_A = det(A);```6. 矩阵的特征值和特征向量:```MATLABA = [1 2; 3 4];[eig_vec, eig_val] = eig(A);```此外,MATLAB还提供了许多其他的矩阵运算和线性代数操作的函数,如矩阵的奇异值分解、最小二乘解、QR分解等。
MATLAB实验报告(二)矩阵代数
实验总结:
通过实际的上机操作,我熟悉了MATLAB的有关线性代数运算指令和矩阵代数的MATLAB指令,学会了如何分析并解决矩阵除法、线性方程组的通解和矩相似对角化的问题,以及通过建模实验解决投入产出分析、基因遗产等应用问题,这一章节的指令比较多,也比较杂,需要分门别类地区分开,并且上机运行熟练并且记忆。
ans =
3 3%秩相等且小于4,说明有无穷多解
>> x=A\b
x =%求得一特解
1.0000
0
1.0000
0.0000
>>x0=null(A)
x0= %得到Ax=0的基础解系
-0.6255
0.6255
-0.2085
0.4170
求得通解为kx0+x
改进或思考:
>> A=[2 1 -1 1;1 2 1 -1;1 1 2 1];b=[1;2;3];
姓名:学号:实验日期:
实验目的:
1、学习MATLAB的有关线性代数运算指令;
2、熟悉矩阵代数的MATLAB指令;
3、熟悉如何应用指令解决计算和建模实验问题。
实验项目:
1、学会应用矩阵代数的MATLAB指令解决问题;
2、通过实验解决矩阵除法、线性方程组的通解和矩相似对角化的问题;
3、通过建模实验研究投入产出分析、基因遗产等应用问题。
>> C=[6/25, 2/5,1/20; 2.25/25,1/5,0.2/20; 3/25,0.2/5,1.8/20];A=(eye(3)-C)
A =
MATLAB实验矩阵代数
实验目的: 1、学习 MATLAB 有关线性代数运算的指令。 2、熟悉掌握矩阵除法,解矩阵方程组和矩阵相似对角化的问题。 3、研究建模实验中投入产出分析、基因遗传等应用问题。 实验项目: 1、用矩阵除法解线性方程组并判断解的意义。 2、解建模试验中投入与产出的应用问题。 3、求矩阵的行列式、逆、特征值和特征向量。 4、求矩阵的秩和它的一个最大线性无关组,并将其余向量用该最大无关组线性 表示。 实验具体过程:
对题目的解答: (1) n=5 时的情况。
n=5; >> x0=5*ones(1,5);x1=6*ones(1,n-1);x2=ones(1,n-1); >> A=diag(x0)+diag(x1,1)+diag(x2,-1)
A= 5 6 0 0 0 1 5 6 0 0 0 1 5 6 0 0 0 1 5 6 0 0 0 1 5 >> det(A) %求矩阵的行列式 ans = 665 >> inv(A) %求矩阵的逆 ans = 0.3173 -0.5865 1.0286 -1.6241 1.9489 -0.0977 0.4887 -0.8571 1.3534 -1.6241 0.0286 -0.1429 0.5429 -0.8571 1.0286 -0.0075 0.0376 -0.1429 0.4887 -0.5865 0.0015 -0.0075 0.0286 -0.0977 0.3173 >> [v,d]=eig(A) v= -0.7843 -0.7843 -0.9237 0.9860 -0.9237 0.5546 -0.5546 -0.3771 -0.0000 0.3771 -0.2614 -0.2614 0.0000 -0.1643 -0.0000 0.0924 -0.0924 0.0628 -0.0000 -0.0628 -0.0218 -0.0218 0.0257 0.0274 0.0257 d= 0.7574 0 0 0 0 0 9.2426 0 0 0 0 0 7.4495 0 0 0 0 0 5.0000 0 0 0 0 0 2.5505 (2) n=50 的情况。 (输出的结果略) n=50; >> x0=50*ones(1,5);x1=6*ones(1,n-1);x2=ones(1,n-1); >> A=diag(x0)+diag(x1,1)+diag(x2,-1) >> det(A) >> inv(A) %求矩阵的行列式 %求矩阵的逆 %求矩阵的特征值和特征向量。
《数学软件》实验报告-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 有关线性代数方程组的求解和矩阵运算,学会解决建模实验中有关
投入产出及基因遗传等应用问题。
实验项目:
①已知各经济部门某年的投入与产出,求当最后需求为定量时的各个部门的投
入与产出。
②用正交变换求二次型标准型。
实验背景:
在当代社会快速发展的今天,企业,部门若需要高效率的运作,必须得学会预
为直接消耗矩阵
x1
17
令产出向量 X= x2 ’外界需求量 D= 17
x3
17
Leontief 矩阵 A=E-C= 0.7600 -0.0900 -0.1200
可列方程组
-0.4000 0.8000 -0.0400
-0.0500 -0.0100 0.9100
f(x 1
,x
2
,x
3
)=x
2 1
-4x 1
x
2
+4x
1
x
3
-2x
2 2
+8x
2
x
3等代数的知识,要求出标准型,得先得到二次型的矩阵 A,在找出正交矩 阵,做替换得标准型。 程序:
A=[1 -2 2;-2 -2 4;2 4 -2]; >> [V,D]=eig(A),t=eig(A)
>> X=[25;5;20];diag(X)
>> inv(diag(x))
>> C=B*ans
>> D=[17;17;17];A=(eye(3)-C)
>> T=A\D
对实验题目的解答:
根据运行程序可得
线性代数实验报告
线性代数实验报告班级学号得分2013年12月24日数学实验报告题目一、 实验目的1.熟悉MATLAB 的矩阵初等运算;2.掌握求矩阵的秩、逆、化最简阶梯形的命令; 3.会用MABLAB 求解线性方程组二、 实验问题1. 已知⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=351503224A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=112302431B ,在MATLAB 命令窗口中建立A 、B 矩阵并对其进行以下操作:(1) 计算矩阵A 的行列式的值det()?A =(2) 分别计算下列各式:B A -2 、 B A *和B A *.、 1-AB 、 B A 1-、 2A 、 T A2. 在MATLAB 中分别利用矩阵的初等变换及函数rank 、函数inv 求下列矩阵的秩和逆:(1) ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡----=4211104532361A 求 Rank(A)=? (2)3501120010201202B ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦求?1=-B 3. 在MATLAB 中判断下列向量组是否线性相关,并找出向量组中的一个最大线性无关组:()11,1,3,2α'=,()21,1,1,3α'=--,()35,2,8,9α'=-,()41,3,1,7α'=-4、在MATLAB 中判断下列方程组解的情况,若有多个解,写出通解:(1)⎪⎪⎩⎪⎪⎨⎧=+--=-++=+--=-+-061230273020244321432143214321x x x x x x x x x x x x x x x x (2) ⎪⎪⎩⎪⎪⎨⎧-=+-=-+-=+-=++69413283542432321321321321x x x x x x x x x x x x 5、化方阵222254245A -⎛⎫⎪=- ⎪ ⎪--⎝⎭为对角阵.6、求一个正交变换,将二次型222123121323553266f x x x x x x x x x =++-+-化为标准型。
Matlab实验2 矩阵的基本运算
实验二、矩阵的基本运算一、 问题已知矩阵A 、B 、b 如下:⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡-------------=031948118763812654286174116470561091143A ⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡------=503642237253619129113281510551201187851697236421B []1187531=b应用Matlab 软件进行矩阵输入及各种基本运算。
二、 实验目的:熟悉Matlab 软件中的关于矩阵运算的各种命令三、 预备知识1、线性代数中的矩阵运算。
2、本实验所用的Matlab 命令提示:(1)、矩阵输入格式:A =[a 11, a 12; a 21, a 22];b =初始值:步长:终值;(2)、求A 的转置:A';(3)、求A 加B :A +B ;(4)、求A 减B :A -B ;(5)、求数k 乘以A :k*A ;(6)、求A 乘以B :A*B ;(7)、求A 的行列式:det (A );(8)、求A 的秩:rank (A );(9)、求A 的逆:inv (A )或(A )-1;(10)、B 右乘A 的逆:B/A ;(11)、B 左乘A 的逆:A \B ;(12)、求A 的特征值:eig (A );(13)、求A 的特征向量矩阵X 及对角阵D :[X ,D ]=eig (A );(14)、求方阵A 的n 次幂:A ^n ;(15)、A 与B 的对应元素相乘:A.*B ;(16)、存储工作空间变量:save '文件名' '变量名';(17)、列出工作空间的所有变量:whos ;四、实验内容与要求1、输入矩阵A,B,b;>> A=[3,4,-1,1,-9,10;6,5,0,7,4,-16;1,-4,7,-1,6,-8;2,-4,5,-6,12,-8;-3,6,-7,8,-1,1;8,-4,9,1,3,0] B=[1 2 4 6 -3 2;7 9 16 -5 8 -7;8 11 20 1 5 5;10 15 28 13 -1 9;12 19 36 25 -7 23;2 4 6 -3 0 5]b=[1,3,5,7,8,11]A =3 4 -1 1 -9 106 5 07 4 -161 -4 7 -1 6 -82 -4 5 -6 12 -8-3 6 -7 8 -1 18 -4 9 1 3 0B =1 2 4 6 -3 27 9 16 -5 8 -78 11 20 1 5 510 15 28 13 -1 912 19 36 25 -7 232 4 6 -3 0 5b =1 3 5 7 8 112、作X21=A'、X22=A+B、X23=A-B、X24=AB;>> X21=A'X22=A+BX23=A-BX24=A*BX21 =3 6 1 2 -3 84 5 -4 -4 6 -4-1 0 7 5 -7 91 7 -1 -6 8 1-9 4 6 12 -1 310 -16 -8 -8 1 0X22 =4 6 3 7 -12 1213 14 16 2 12 -239 7 27 0 11 -312 11 33 7 11 19 25 29 33 -8 2410 0 15 -2 3 5X23 =2 2 -5 -5 -6 8-1 -4 -16 12 -4 -9-7 -15 -13 -2 1 -13-8 -19 -23 -19 13 -17-15 -13 -43 -17 6 -226 -8 3 4 3 -5X24 =-55 -85 -180 -245 80 -175127 174 348 250 -13 5275 110 220 194 -41 15482 129 260 283 -91 23953 76 138 21 21 -2998 151 284 165 -33 1673、作X31=|A|、X32=|B|;>> X31=det(A)X32=det(B)X31 =X32 =4、作X41=R(A)、X42=R(B);>> X41=rank(A)X42=rank(B)X41 =6X42 =45、作X5=A-1;>> X5=eye(6)/AX5 =-0.0737 0.0604 -0.2297 0.0067 -0.0804 0.10420.3142 0.0036 0.2408 0.1605 0.1259 -0.14360.2099 -0.0395 0.3155 0.0364 0.0834 -0.0663-0.0827 -0.0123 0.0088 -0.0777 0.0779 0.08780.0134 -0.0335 -0.0159 0.1129 0.1061 0.03370.0377 -0.0525 -0.0110 0.0469 0.0698 0.0411>> inv(A)X5 =-0.0737 0.0604 -0.2297 0.0067 -0.0804 0.10420.3142 0.0036 0.2408 0.1605 0.1259 -0.14360.2099 -0.0395 0.3155 0.0364 0.0834 -0.0663-0.0827 -0.0123 0.0088 -0.0777 0.0779 0.08780.0134 -0.0335 -0.0159 0.1129 0.1061 0.03370.0377 -0.0525 -0.0110 0.0469 0.0698 0.04116、求满足矩阵方程XA=C的解矩阵X6,其中C为A的第i列乘以列标i所得矩阵;>> C=A.*[1,2,3,4,5,6;1,2,3,4,5,6;1,2,3,4,5,6;1,2,3,4,5,6;1,2,3,4,5,6;1,2,3,4,5,6]X6=C/AC =3 8 -34 -45 606 10 0 28 20 -961 -8 21 -4 30 -482 -8 15 -24 60 -48-3 12 -21 32 -5 68 -8 27 4 15 0X6 =2.9937 -1.3602 0.3790 -1.3862 0.2409 0.6621-2.9686 4.4209 2.0166 -2.7720 -1.6217 -1.61970.7423 0.7632 4.4879 0.9367 0.1844 -1.45171.4636 0.3018 1.7126 5.6670 1.2292 -1.6950-2.9029 0.1517 -2.7542 -1.6300 2.3827 2.24512.4342 -1.1655 4.5517 1.1351 2.5048 1.04787、求满足方程AX=b的解向量X7;>> X7=A\b'X7 =-0.49102.08031.86120.96921.84321.16338、作X6的特性向量X8、X6的特征向量组X及对角阵D;>> X8=eig(X6)X8 =1.00002.00006.00003.00004.00005.0000>> [X,D]=eig(X6)X =-0.2705 0.3578 -0.4541 -0.0698 0.0811 -0.5313-0.5410 0.4472 0.7265 0.0000 0.5678 0.2361-0.0902 -0.3578 0.3633 0.4889 -0.0811 0.3542-0.1803 -0.3578 0.3633 0.3492 -0.4867 0.70830.2705 0.5367 -0.0454 -0.4889 0.6489 -0.0590-0.7213 -0.3578 0.0000 0.6286 0.0811 0.1771D =1.0000 0 0 0 0 00 2.0000 0 0 0 00 0 6.0000 0 0 00 0 0 3.0000 0 00 0 0 0 4.0000 00 0 0 0 0 5.00009、作X9=B2 (A-1)2;>> X9=B^2*(inv(A))^2X9 =4.8329 1.1095 4.3899 2.1612 3.5801 6.101016.7262 1.3541 15.0714 9.5847 13.0914 18.507122.0322 3.1761 19.5899 11.9050 17.4229 27.629331.6981 5.3951 28.3698 16.2275 24.5831 39.831241.8370 8.3265 37.2783 20.7091 32.4948 55.05442.1785 1.3564 1.8128 0.6693 2.2719 5.588510、创建从2开始公差为4的等差数列前15项构成的行向量X10。
MATLAB实验3 MATLAB的矩阵操作(2)
班级专业:姓名:学号:日期:
一、实验目的
1.熟悉MATLAB的矩阵初等运算;
2.掌握求矩阵的秩、逆、特征值、特征向量
3.
二、实验准备
第二章
三、实验内容(分析每题中)
1、找出数组 中所有绝对值大于3的元素。
2、执行以下代码,分析逻辑运算和关系运算之间的优先级次序。
A=-3:3;
L1=~(A>0)
L2=~A>0
L3=~A
L4=A>-2&A<1
3、在MATLAB中分别利用矩阵的初等变换及函数rank、函数inv求下列矩阵的秩:
(1) 求Rank(A)=?
(2) 求
4、建立字符串,内容为abc123ABC,对此字符串:
a、取第2到第6个字符组成一个新子字符串,并将生成的子字符串倒置排列;
b、将原字符串的大写字母变成相应的小写字母;
c、统计小写字母的个数。
5、书本P61T2-13、T2-14
6、(选做)在MATLAB中求下列矩阵的特征值和特征向量,并判断能否对角化,若能则将其对角化(P39):
(1) (2)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
V= 0.3333 0.6667 -0.6667
D=
0.9339 -0.3304 0.1365
-0.1293 -0.6681 -0.7327
-7.0000 0 0
0 2.0000
0
0 0 2.0000
t=
-7.0000
2.0000
2.0000
>> V'*V
ans =
1.0000 0.0000
0.0000 1.0000
为直接消耗矩阵
x1
17
令产出向量 X= x2 ’外界需求量 D= 17
x3
17
Leontief 矩阵 A=E-C= 0.7600 -0.0900 -0.1200
可列方程组
-0.4000 0.8000 -0.0400
-0.0500 -0.0100 0.9100
>> X=[25;5;20];diag(X)
>> inv(diag(x))
>> C=B*ans
>> D=[17;17;17];A=(eye(3)-C)
>> T=A\D
对实验题目的解答:
根据运行程序可得
C=
0.2400 0.4000 0.0500
0.0900 0.2000 0.0100
0.1200 0.0400 0.0900
度工业、农业及第三产业的产出(提示:对于一个特定的经济系统而言,直接
消耗矩阵和 Leontief 矩阵可视作不变)
理论推导或编程说明:对于一个特定的经济系统而言,直接消耗矩阵和 leontief 矩阵可视作不变,则根据表中的数据可求得起消耗矩阵,在根据投入与产出关
系推得其解。
程序:
>> clear
>> B=[6 2 1;2.25 1 0.2;3 0.2 1.8];
实验名称:矩阵代数的运用
实验目的:
学习 Matlab 有关线性代数方程组的求解和矩阵运算,学会解决建模实验中有关
投入产出及基因遗传等应用问题。
实验项目:
①已知各经济部门某年的投入与产出,求当最后需求为定量时的各个部门的投
入与产出。
②用正交变换求二次型标准型。
实验背景:
在当代社会快速发展的今天,企业,部门若需要高效率的运作,必须得学会预
0.0000
0
对实验题目的解答:
0.0000 0
1.0000
由
f(x
1
,x
2
,x
3
)=x
2 1
-4x
1
x
2
+4x
1
x
3
-2x
2 2
+8x
2
x
3
-2x
2 3
得其二次型矩阵为
1 2 A= 2 2
2 4
,
用
matlab
求 得 其 特 征 值 为 -7,2,2. 对 应 的 特 征 向 量 为
f(x 1
,x
2
,x
3
)=x
2 1
-4x 1
x
2
+4x
1
x
3
-2x
2 2
+8x
2
x
3
-2x
2 3
理论推导或编程说明: 根据高等代数的知识,要求出标准型,得先得到二次型的矩阵 A,在找出正交矩 阵,做替换得标准型。 程序:
A=[1 -2 2;-2 -2 4;2 4 -2]; >> [V,D]=eig(A),t=eig(A)
3
)=-7
x
2 1
+
x
2 2
+
x
2 3
。
改进程序或思考: 求正交矩阵的过程中,如果其特征向量不是正交矩阵,则应进行变换,得到正 交矩阵。在实验中对 matlab 的应用还是不大熟悉,操作不是很理想,在今后的 学习中还需努力改进。 实验总结:①对市场经济数据处理及问题预测,可借助以往的相关资料结合 matlab,数学公式进行评估。②通过第二题,补充复习了高代的相关知识,实 验过程中对 matlab 操作还不是很熟练。
2 4 2
0.3333 0.6667
,
0.9339 0.3304
,
0.1293 0.6681
,经验算其是为正交矩阵,所以由正交变
0.6667 0.1365 0.7327
换得
f(x 1
,x
2
,x
计今后的走势,因而“投入产出分析”的教学模型产生就非常重要了。
实验具体过程:
第 1 题:题目:
在某经济年度内,各经济部门的投入产出表如表 3.5(单位:亿元)
消耗部门
最后需求 总产值
工业
农业
第三产业
生产部门 工业
6
2
1
16
25
农业
2.25
1
0.2
1.55
5
第三产业 3
0.2
1.8
15
20
假设某经济年度工业、农业及第三产业的最后需求均为 17 亿元,预测该经济年
x1 (6x1 2x2 0.2x3 ) 17
x3 (3x1 0.2x2 1.8x3 ) 17
37.5696 故可运算得 X=A\D= 25.7862
24.7690
改进程序或思考: 按照投入产出的数学模型可以看出,本问题的关键在于直接消耗矩阵的求法, 而利用 inv 函数则可以很好的解决这个问题,之后的求解问题也就迎刃而解了; 第 2 题:题目:用正交变换化下列二次型为标准型