Matlab在线性代数中的应用1讲课讲稿
浅谈MATLAB软件在线性代数教学中的应用
Ab s t r a c t I n o r d e r t o i mp r o v e t h e t e a c h i n g e fe c t o f l i n e a r a l g e b r a . Th e n s t u d e n t s c a n u n d e r s t a n d c o n c e p t s o f l i n e a r a l g e b r a . Th e
a s s i s t e d t e a c h i n g o f l i n e a r a l g e b r a i n t h i s s o f L v a r e i s p r o p o s e d b y
s e v e r a l e x a mp l e s , wh i c h c ul t i v a t e s s t u de nt s ’ p r a c t i c a l a b i l i t y. Ke y wor d s ma t l a b; l i n e a r a l g e b r a ; a s s i s t e d i ns t r u c t i o n
文 章编 号 :1 6 7 1 — 4 8 9 X ( 2 0 1 4 ) 0 4 — 0 0 9 2 — 0 4
Di s c us s i o n o n Te a c hi ng o f Li ne a r Al g e b r a wi t h M ATLA B/ / Di n g Xi a ox i ng
MATLAB06Matlab在线性代数中的应用PPT课件
第零个月#0 :一开始只有一对兔子 第一个月#1 :经过一个月,两只兔子都有繁殖能力,
但是怀孕期是一个月,所以还是只有一对兔子。 第二个月#2 :经过两个月後,原来两只兔子生出一对
一公一母的兔子,所以现在有两对兔子。 第三个月#3 :经过三个月後,最开始的一对兔子又生
出一对兔子,但第二对兔子才刚有繁殖能力,所以 现在是三对兔子。 第四个月#4 :以此类推,现在是五对兔子。 第五个月#5 :以此类推,现在是八对兔子。
通常,矩阵除法可以理解为
X=A\B X=B/A
<==> A*X=B <==> X*A=B
A 和 B 行数相等时才可进行左除
A 和 B 列数相等时才可进行右除
(3)用矩阵除法求解求解恰定方程
Ax = b x = A\b
利用除法求解时,不用 先对矩阵A求逆,而是 直接进行计算,即保证 计算的精度,又节省大 量的计算时间。
F n A*F n, 其中:
a1 a2
1
0
A0 1
0 0
a3 0 0
1
am
0
0
0 m m
f n 1
,
F
n
f
n
2
f n m m 1
于是:
F n A * F n 1 A2 * F n 2 AkF n k AniF i
例:Fibonacci序列
在1202年,Fibonacci 注意到了一个兔 子的繁殖问题,他假设一开始有一只公的兔 子与一只母的兔子刚出生,每只兔子再经过 一个月後就有繁殖能力,而兔子的怀孕期是 一个月,而一旦母兔子拥有繁殖能力时,它 每个月都会生产,而且生出来的兔子是一公 一母,最後一个条件是,兔子不会死掉。在 这种理想状况下,问题来了:经过一年(十 二个月)後,总共运算高
MATLAB软件在线性代数教学中的应用
MATLAB软件在线性代数教学中的应用【摘要】MATLAB软件在线性代数教学中的应用日益重要。
本文从向量和矩阵运算、线性方程组求解、特征值和特征向量计算、线性代数可视化教学以及矩阵分解和奇异值分解等方面探讨了MATLAB的应用。
通过实际案例展示了MATLAB在教学中的实际应用,有助于学生更好地理解线性代数的概念和应用。
结合结论部分讨论了MATLAB在线性代数教学中的重要性以及未来的发展方向,强调了MATLAB在提升学生学习效果和培养解决实际问题能力方面的巨大潜力。
MATLAB在线性代数教学中的应用有着广阔的发展前景,为教学提供了更加丰富和多样化的教学手段。
【关键词】MATLAB, 线性代数, 教学应用, 向量, 矩阵运算, 线性方程组, 特征值, 特征向量, 可视化教学, 矩阵分解, 奇异值分解, 重要性, 发展方向1. 引言1.1 MATLAB软件在线性代数教学中的应用概述MATLAB是一种强大的数学软件,广泛应用于高等教育领域,尤其在线性代数教学中发挥着重要作用。
在在线性代数教学中,MATLAB可以帮助学生更好地理解抽象的数学概念,提高他们的数学建模和问题求解能力。
通过MATLAB软件,学生可以直观地进行向量和矩阵运算,求解线性方程组,计算特征值和特征向量,进行矩阵分解和奇异值分解等操作。
MATLAB软件提供了丰富的数学函数和工具箱,使得学生可以方便地进行各种数学计算和仿真实验。
通过MATLAB的可视化功能,学生可以直观地观察数学概念的几何意义,加深对数学知识的理解。
MATLAB还支持编程功能,学生可以通过编写脚本和函数来实现复杂的数学运算和算法,培养他们的编程能力。
在线性代数教学中,MATLAB软件的应用不仅可以帮助学生更好地掌握数学知识,提高数学建模和问题求解能力,还可以激发学生的学习兴趣,培养他们的创新思维和实践能力。
MATLAB软件在线性代数教学中的应用具有重要意义,对提升教学效果和培养学生的数学素养具有积极作用。
matlab在线性代数中的应用
A(2,:) = -A(2,1)/A(1,1)*A(1,:)+A(2,:); A1=A, A(3,:) = -A(3,1)/A(1,1)*A(1,:)+A(3,:); A2=A, A(3,:) = -A(3,2)/A(2,2)*A(2,:)+A(3,:); A3=A,
得 A1 =
A2=
A3=
1 0 2 1 0 0 1 0 0
0 1 -1 0 1 -1 0 1 0
7 -23 9 7 -23 -5 7 -23 -28
B1= 1 -4 0 B2 = 1 0 -2 B3 = 1 0 0 B0 = 1 -4 -6
0 1 0 0 1 0 0 1 1 0 1 1
0 0 1 0 0 1 0 0 1 0 0 1
请读者从三次消元中归纳出消元法的语法规则.如果选第i 行为基准行,其第k列的元素为基准元素,则要把第j行第k列的 元素消元为零,应该执行下列程序: A(j,:)=-A(j,k)/A(i,k)*A(i,:)+A(j,:) 可以专门编成一个消元子程序. 读者还可以观察这几个初等变换矩阵的构成特点.不难验证 B0=B3*B2*B1.要注意,这几个乘子相乘的次序是不能颠倒的.
解这个矩阵方程可以用下列几种方法.
方法一: 用消元法将其增广矩阵[A,b]化为最简行阶梯形 式(Reduced Row Echelon Form) .MATLAB用它第一个字母的缩 写rref作为命令.程序如下: A=[6,1,6,-6; 1,-1,9,9; -2,4,0,-4; 4,2,7,-5]; b=[7; 5; -7; -9] U=rref([A,b]) 程序运行的结果为: 1.00
0 3 0 1 0 2 0 0 1 8 (柠檬酸) , (小苏打) , (碳酸钠) , (水) , (二氧化碳) 6 0 1 6 1 2 7 1 3 8
MATLAB软件在线性代数教学中的应用
MATLAB软件在线性代数教学中的应用
MATLAB是一个具有强大计算和图形处理功能的数学软件,它广泛应用于各个领域,包括线性代数教学。
在线性代数教学中,MATLAB可以帮助学生更好地理解和应用矩阵和线性方程组等基础概念。
首先,在矩阵的操作方面,MATLAB可以用来进行矩阵的创建、转置、逆矩阵计算、乘法运算、矩阵方程求解等操作。
例如,通过输入命令行“A=[1 2;3 4]”创建一个
$2\times 2$矩阵,通过输入命令行“B=A'”可以得到A的转置矩阵,通过输入命令行
“inv(A)”可以得到A的逆矩阵,通过输入命令行“C=A*B”可以得到A和B的乘积矩阵,在输入命令行“x=A\b”可以求解矩阵方程$Ax=b$。
其次,在解决线性方程组的问题上,MATLAB可以用来求解线性方程组、得到线性方程组解的唯一性和存在性,并且可以比较不同求解方法的效率。
例如,通过输入命令行
“x=A\b”就可以得到线性方程组$Ax=b$的解,通过输入命令行“rank(A)”可以得到矩阵
A的秩,通过输入命令行“cond(A)”可以得到矩阵A的条件数。
此外,在线性代数的复杂问题求解上,MATLAB可以用来进行特征值和特征向量的计算、矩阵的奇异值分解等问题的求解。
例如,通过输入命令行“[V,D]=eig(A)”可以得到矩阵
A的特征值和特征向量,通过输入命令行“[U,S,V]=svd(A)”可以得到矩阵A的奇异值分解。
总之,MATLAB的强大计算和图形处理功能,可以为线性代数教学的理解和应用提供很好的帮助。
通过学生编写MATLAB程序,实现矩阵和线性方程组的数值求解,可以加深对
线性代数基础概念的理解,提高线性代数教学的效果。
用MATLAB计算线性代数课件
【实验内容】 1.已知下列矩阵:
3 1 1 (1)A 2 1 2 1 2 3
1 1 1 B 2 1 0 ; , 1 0 1
(2 ) 计算
a b A c d
1 a ,B 1 b
的逆矩阵。
x1 y1 , X x2 y 2 x y 3 3
AX B
,求
X A 1 B
.
【实验过程】 1.(1)>> syms m; >>A=sym('[a b c d;e f g h;i j k l]'); >>A(2,:)=m*A(2,:) 运行结果: A= [ a, b, c, d] [ m*e, m*f, m*g, m*h] [ i, j, k, l] (2)>> syms n; >>A=sym('[a b c d;e f g h;i j k l]'); >>A(:,1)=A(:,1)+n*A(:,3) 运行结果: A= [ a+n*c, b, c, d] [ e+n*g, f, g, h] [ i+n*k, j, k, l]
A 1 ad cb c . ad cb ad cb a ad cb
实验二 矩阵的初等变换 【实验目的】 1.理解矩阵初等变换的概念 2.掌握矩阵的初等变换及用初等变换求矩阵的逆矩阵
【实验要求】掌握矩阵的表示、符号变量说明syms、 逆矩阵inv等命令
>>C=A(2:end,[1,4]) 运行结果: C= 5 8 9 12 13 16 3.>> A=[0 1 2;1 1 4;2 -1 0]; >>E=eye(3); >>B=[A,E] 运行结果: B= 0 1 2 1 1 1 4 0 2 -1 0 0
【matlab-7】Matlab与线性代数(一)
【matlab-7】Matlab与线性代数(⼀)⼀、线性代数基本⽅程组基本⽅程组:矩阵表⽰:解决问题的视⾓:1、解联⽴⽅程的视⾓ (⾏阶梯变换 & 矩阵运算)着重研究解x,即研究线性⽅程组的解法。
中学⾥的解⽅程和MATLAB的矩阵除法就是这样。
要点:矩阵的每⼀⾏代表⼀个⽅程,m⾏代表m个线性联⽴⽅程。
n列代表n个变量。
如果m是独⽴⽅程数,根据m<n、m=n、m>n确定⽅程是 ‘⽋定’、‘适定’ 还是 ‘超定’。
对这三种情况都会求解了,研究就完成了。
必须剔除⾮独⽴⽅程。
⾏阶梯形式、⾏列式和秩的概念很⼤程度上为此⽬的⽽建⽴。
2、向量空间中向量的合成的视⾓ (⽤向量空间解⽅程组)把A各列看成n个m维基本向量,线性⽅程组看成基向量的线性合成:要点:解x是这些基向量的系数。
它可能是常数(适定⽅程),也可能成为其中的⼀个⼦空间(⽋定⽅程) 。
要建⽴其⼏何概念,并会求解或解空间。
3、线性变换或映射的视⾓ (线性变换及其特征)把b看成变量y,着重研究把Rn空间的x变换为Rm空间y 的效果,就是研究线性变换系数矩阵A的特征对变换的影响。
要点:就是要找到适当的变换,使研究问题的物理意义最为明晰。
特征值问题就是⼀例。
⼆、线性代数建模与应⽤概述介绍⼀些⼤的系统⼯程中使⽤线性代数的情况,使读者知道为什么线性代数在近⼏⼗年来变得如此的重要。
Leontief教授把美国的经济⽤500个变量的500个线性⽅程来描述,在1949年利⽤当时的计算机解出了42×42的简化模型,使他于1973年获得诺贝尔经济奖,从⽽⼤⼤推动了线性代数的发展。
把飞⾏器的外形分成若⼲⼤的部件,每个部件沿着其表⾯⼜⽤三维的细⽹格划分出许多⽴⽅体,这些⽴⽅体包括了机⾝表⾯以及此表⾯内外的空⽓。
对每个⽴⽅体列写出空⽓动⼒学⽅程,其中包括了与它相邻的⽴⽅体的共同边界变量,这些⽅程通常都已经简化为线性⽅程。
对⼀个飞⾏器,⼩⽴⽅体的数⽬可以多达400,000个,⽽要解的联⽴⽅程可能多达2,000,000个。
讲MATLAB在线性代数与解析几何上的应用
b5= 1 7 5 3 10 2 428631
c= 2
8
3.矩阵的行列式与转置 只有方阵的才有行列式。在MATLAB中求方
阵A的行列式的调用函数是det(A)。
例5 已知方阵 a1=[1,2,3;4,5,6;7,8, 0], a2=[1,2,3;4,5,6;7,8, 9], a3=[1,2,3;4,5,6;7,8, c],试 求它们的行列式,并将行列式分别记为a10, a20, a30。
运行语句得到的结果为:
z= 8 10 12 888 w= -4 -3 -2 -1 0 1
12
(2)矩阵A与B相乘C=A*B,其结果与代数 中矩阵相乘也是一致的,要求A的列数等于 B的行数。
在MATLAB中,对矩阵还有另一种乘法: A.*B,此时要求A与B有相同的维数,其结 果为A与B的对应元素相乘。 例8 已知矩阵 a=[1,2,3;4,5,6;7,8, 0], b=[1,2;3,4;5,6], 试求a*b。
a1=[1,2,3;4,5,6;7,8, 0]; a10= det(a1) 运行语句得到的结果为:
a10 =
27 9
a2=[1,2,3;4,5,6;7,8, 9]; a20= det(a2)
a20 =
运行语句得到的结果为:
0
a30是一个含有变量c的矩阵,即符号矩阵, 必须首先定义其中的符号变量c。
三维曲面作图
mesh(X,Y,Z),surf(X,Y,Z).
ezmesh('f','g','h',[u1,u2,v1,v2])与
ezsurf('f','g','h',[u1,u2,v1,v2])
Matlab在线性代数中的应用
Matlab 软件在线性代数的应用
11
(3)矩阵的输入 A=[2,3,5;1,3,5;6,9,4] %行之间要用分号隔开 A= 2 3 5 1 3 5 6 9 4 m=input('请输入初始量,m='); 请输入初始量,m= 问题:输入A(2,3),结果如何?输入A(7)又如何? 注意:变量名开头必须是英文字母,变量名对字母 大小写是区分的.
环境中。在这里可以实现工程计算、算法研究、符
号运算、建模和仿真、原型开发、数据分析及可视
化、科学和工程绘图、应用程序设计(包括图形用户
界面设计)等等功能。
2017年4月6日星期四
Matl出的优势,它现在已 成为世界上应用最广泛的工程计算软件。在美国等发 达国家的大学里MATLAB是一种必须掌握的基本工具, 而在国外的研究设计单位和工业部门,更是研究和解
2017年4月6日星期四
Matlab 软件在线性代数的应用
19
7.联机求助 例: help sqrt %将显示出平方根sqrt 命令的功能和使用方式
2017年4月6日星期四
Matlab 软件在线性代数的应用
20
8. 数据格式命令说明
format short 1.4142 短格式,显示5位 format long 1.41421356237310 长格式,显示15位 format short e 1.4142e+000 最优化短格式,5位加指数 format long e 1.41421356237310 e+000 最优化长格式,15 位加指数 format hex 3ff6a09e667f3bed 十六进制,货币银行格式, 小数点后2位 format bank 1.41 货币银行格式,小数点后2位 format rat 1395/985 有理格式 format + + 紧密格式,显示数据+,-,
Matlab在线性代数中的应用
Matlab在线性代数中的应用§1 向量组的线性相关性求列向量组A的一个最大线性无关组可用命令rref(A)将A化成阶梯形的行最简形式,其中单位向量对应的列向量即为最大线性无关组所含向量,其它列向量的坐标即为其对应向量用最大线性无关组线性表示的系数。
例1 求下列矩阵列向量组的一个最大无关组。
解编写M文件ex1.m如下:format rata=[1,-2,-1,0,2;-2,4,2,6,-6;2,-1,0,2,3;3,3,3,3,4];b=rref(a)求得b = 1 0 1/3 0 16/30 1 2/3 0 -1/90 0 0 1 -1/30 0 0 0 0记矩阵的五个列向量依次为、、、、,则、、是列向量组的一个最大无关组。
且有, .例2 设,,验证是的一个基,并把用这个基线性表示。
解编写M文件ex2.m如下:format rata=[2,2,-1;2,-1,2;-1,2,2];b=[1,4;0,3;-4,2];c=rref([a,b])求得c= 1 0 0 2/3 4/30 1 0 -2/3 10 0 1 -1 2/3§2线性方程组Matlab中解线性方程组可以使用“\”。
虽然表面上只是一个简简单单的符号,而它的内部却包含许许多多的自适应算法,如对超定方程用最小二乘法,对欠定方程它将给出范数最小的一个解,解三对角阵方程组时用追赶法等。
另外欠定方程组可以使用求矩阵A的阶梯形行最简形式命令rref(A),求出所有的基础解系。
例3 求解下列方程组解编写M文件ex3.m如下:format rata=[2,1,-5,1;1,-3,0,-6;0,2,-1,2;1,4,-7,6];b=[8;9;-5;0];solution=a\b求得 solution=[3 -4 -1 1]'。
例4 求超定方程组解编写M文件ex4.m如下:a=[2,4;3,-5;1,2;2,1];b=[11;3;6;7];solution=a\b求得 solution=[ 3.0403 1.2418]'。
MATLAB与线性代数课件
a12 x2 a1n xn b1 a x a x a x b 21 1 22 2 2n n 2 am1 x1 am 2 x2 amn xn bm
11 1
记为 A x = b
3 计算实验:线性方程组求解
ones([m,n]) ones(size(A))
全零矩阵
zeros(n) zeros(m,n) zeros([m,n])
zeros(size(A))
随机矩阵
rand(n) rand(m,n) rand([m,n])
rand(size(A)) 生成的随机矩阵的各个元素值在0和1之间。
对角阵
diag(n) 对角阵
魔术矩阵
magic(n) 魔术矩阵的所有行元素和、列元素和、对角线元素和均相等
阵列的运算符号 除了加减符号外其余的阵列运算符号均须多加 . 符号。 阵 列运算功能 (注意:一定要 多加 . 符号) + 加 - 减 .* 乘 ./ 左除 .\ 右除 .^ 次方 .’ 转置
x1 50000 x 产出向量X = 2 外界需求向量 D = 25000 0 x 3 0.65 0.55 0 直接消耗矩阵C= 0.25 0.05 0.10 0 0.25 0.05
则原方程为 (E-C)X=D 投入产出矩阵为 总投入向量 新创造价值向量 B=C*diag(X) Y= ones(1,3)*B F=X-Y’
冒号操作符
>>a=0:1:10 >>a=linspace(0,1,10) 用linspace函数
下标操作
线性代数实践及MATLAB入门课件
使用Matlab中的遗传算法工具箱,如ga函数,求解优化问题,通过模拟生物进化过程中的自然选择和遗 传机制来寻找最优解。
信号处理与分析
傅里叶变换
使用Matlab中的fft函数,对信号进行傅里叶变换,以便将信号从 时域转换到频域,从而更好地分析信号的频率成分。
小波变换
使用Matlab中的小波变换函数,如wavedec和waverec,对信号 进行小波变换,以便在不同的频率段上分析信号的特性。
特征值与特征向量的应用
在解决实际问题时,特征值与特征向量是重要的数学工具,如判断矩阵的稳定性、求解微分方程的振动性等。
线性变换与矩阵运算
线性变换的定义
对于给定的向量空间V和线性映射T:V→V,如果对于V中的任意向量α、β,都有 T(α+β)=T(α)+T(β)和T(kα)=kT(α),则称T为线性变换。
高维数据聚类
使用Matlab中的聚类算法,如K-means和层次聚类,对高维数据 进行聚类分析,以便将相似的数据点归为一类。
优化算法应用
非线性规划
使用Matlab中的优化工具箱,如fmincon函数,求解非线性规划问题,以找到满足一定约束条件下目标函数的最大 或如linprog函数,求解线性规划问题,以找到满足一定约束条件下目标函数的最大或最 小值。
矩阵运算的性质
矩阵的加法、数乘、乘法等运算性质,以及逆矩阵、行列式等概念。
线性变换与矩阵运算的应用
在解决实际问题时,线性变换与矩阵运算是重要的数学工具,如求解微分方程、解决线 性规划问题等。
02 Matlab基础
Matlab界面与编程基础
掌握Matlab的基本操作界面
01
启动与退出Matlab
Matlab线性代数入门讲课讲稿
用户可自由地开发自己 的应用程序
MATLAB入门ቤተ መጻሕፍቲ ባይዱ
1.如何进入 matlab软件: 在桌面直接双击matlab图标,即可进入软件
Matlab界面
2020/6/10
MATLAB主界面
2020/6/10
工作空间计算举例:
输入命令: A=[1 5 2;3 6 4;6 8 9] a1=A' a2=det(A) a3=inv(A)
2020/6/10
Matlab界面
工作空间计算举例:
xyz12 例2.求解方 程 2x组 4y5z6
x3y4z10
输入命令:
输出方程组的解:
A=[1 1 -1;2 4 5;1 -3 -4]
X= 5.4545 3.0909
b=[12;6;10]
-3.4545
X=A\b
Matlab界面
2020/6/10
线性代数实验之矩阵运算
输入命令: a=[1 1 -1;-2 1 1;1 1 1] b=[2;3;6] x=a^-1*b
2020/6/10
MATLAB (matrix3-2-21)
线性代数实验之矩阵运算
输入命令: a=[2 1 -1;-2 1 0;1 -1 0] b=[1 -1 3;4 3 2] x=b*a^-1
54321 ]
逗号或空格作用:分隔某一行的元素。
分号作用:区分不同的行。
Enter作用:输入矩阵时,按Enter键开始一新行
2020/6/10
线性代数实验之矩阵运算
二. 矩阵的运算命令
A*k
数乘矩阵
A+B
矩阵加法
A*B
矩阵乘法
A^n
关于MATLAB软件在线性代数教学中的应用探讨
关于MATLAB软件在线性代数教学中的应用探讨关于MATLAB软件在线性代数教学中的应用探讨一、引言线性代数作为数学的一个重要分支,在各个领域都有广泛的应用。
线性代数的教学过程中,理论与实践相结合,能够更好地培养学生的分析和解决问题的能力。
而MATLAB软件作为数学建模、仿真和计算的工具,能够为线性代数的教学提供有力的支持。
本文将探讨MATLAB软件在线性代数教学中的应用。
二、MATLAB软件的介绍MATLAB是一种强大的高级计算机语言和交互式环境,该软件提供了丰富的数学、图形和数据分析工具,适用于各种科学与工程计算。
MATLAB在科研领域有广泛的应用,尤其在线性代数、信号处理和图像处理方面具有突出的优势。
三、MATLAB在线性代数教学中的应用1. 线性方程组的求解线性方程组是线性代数的基本内容之一,而MATLAB提供了直接求解线性方程组的工具。
学生可以通过编程的方式输入线性方程组,使用MATLAB求解方程组,并将结果可视化展示。
这样不仅可以加深学生对线性方程组求解方法的理解,还能提高他们的编程能力。
2. 矩阵运算与特征值分解矩阵运算是线性代数的重要内容,而MATLAB提供了丰富的矩阵运算函数。
学生可以通过编写MATLAB程序,实现矩阵的加减乘除、转置和求逆等操作,并进行相应的结果验证。
此外,MATLAB还能够进行特征值分解,对于矩阵的特征向量和特征值进行计算。
通过这些实践操作,学生可以更好地理解矩阵运算的概念和原理,提高解决实际问题的能力。
3. 图形绘制与可视化MATLAB具备强大的图形功能,能够进行二维和三维图形的绘制。
在线性代数教学中,学生可以通过编写MATLAB程序,将矩阵、向量或线性方程组的解表示为图形,从而更直观地展示线性代数的概念和应用。
这种图形化的可视化方式有助于学生理解和记忆线性代数的重要概念,提高他们的学习兴趣和积极性。
四、MATLAB在线性代数教学中的优势1. 提高学生的编程能力MATLAB作为一种编程语言,可以提高学生的编程能力。
Matlab在高等数学和线性代数中的应用
17/53
基础部数学教研室 司守奎
数学 建模
第1讲 Matlab在高等数学和线性代数中的应用
例 5 在 xoy 平 面 上 有 一 段 曲 线 , 其 方 程 为 1 2 y ( x 2ln x ),1 x 4,画出此曲线绕 oy 轴旋转所得 4 到的旋转曲面,并求旋转面面积的数值解(精确值为 。 24 ) 解 旋转面的方程为 1 2 y ( x z 2 ln( x 2 y 2 )) ,1 x 2 z 2 16. 4 旋转面的面积
n1 n2
4/53
基础部数学教研室 司守奎
数学 建模
第1讲 Matlab在高等数学和线性代数中的应用
(2)特殊矩阵 i)单位矩阵 eye(m), eye(m,n) 可得到一个可允许的最大单位矩阵而其余 处补 0, eye(size(a)) 可以得到与矩阵 a 同样大小的单位矩阵。 ii)所有元素为 1 的矩阵 ones(n),ones(size(a)),ones(m,n)。 iii)所有元素为 0 的矩阵 zeros(n),zeros(m,n)。
6/53
基础部数学教研室 司守奎
数学 建模
第1讲 Matlab在高等数学和线性代数中的应用
ⅴ)随机数矩阵 rand(m,n) 产生 m× n 矩阵,其中的元素是服从[0,1]上 均匀分布的随机数。 normrnd(mu,sigma,m,n)产生 m× n 矩阵,其中的元素 是服从均值为 mu, 标准差为 sigma 的正态分布的随机数。 exprnd(mu,m,n) 产生 m× n 矩阵,其中的元素是服从 均值为 mu 的指数分布的随机数。 poissrnd(mu,m,n) 产生 m× n 矩阵, 其中的元素是服从 均值为 mu 的泊松(Poisson)分布的随机数。 unifrnd(a,b,m,n) 产生 m× n 矩阵,其中的元素是服从区间 [a,b]上均匀分布的随机数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
else disp('A不可逆');
end
思考:如何用求逆阵或初等变换法解方程组?
3 行列式与方程组求解
解方程:
3211 3 2 2 x2 1
0 5132 7 x2 1 3 2
% 求解符号行列式方程
clear
% 清除各种变量
syms x
% 定义x为符号变量
A=[3,2,1,1;3,2,2-x^2,1;5,1,3,2;7-x^2,1,3,2]
4 向量组的线性相关性及方程组的通解
求非齐次线性方程组的通解
2x1 4x2 x3 4x4 16x5 2
3x31x1
6x2 6x2
2x3 4x3
6x4 23x5 6x4 19x5
7 23
x1 2x2 5x3 2x4 19x5 43
4 向量组的线性相关性及方程组的通解
ห้องสมุดไป่ตู้
% 求齐次线性方程组的通解
• 矩阵除法
– 矩阵求逆 inv(A),如果det(A)等于或很接近零,Matlab会提示出错 – “左除”与“右除”,左乘或右乘矩阵的逆,A\或/A
2 矩阵的基本运算
• 幂运算 ^ A*A*A=A^5 • 转置 ´ 理论学习中,A的转置表示为AT,在Matlab中用“´”表示
3 行列式与方程组求解
Matlab在线性代数中的应用1
1 矩阵赋值
•赋值语句一般形式 变量=表达式(或数) 如:输入a=[1 2 3; 4 5 6; 7 8 9]
显示a = 1 2 3 456 789
输入x=[-1.2 sqrt(3) (1+2+3)/5*4] 显示x=-1.2000 1.7321 4.8000 规则:矩阵元素放在方括号中,元素之间以空格或逗号分 隔,不同行以分号分隔,语句结尾用回车或逗号将显示结 果
3x4 3x4
0 0
3x1 3x2 3x3 (11 k)x4 0
当k取何值时方程组有非零解?在有非零解的情况下,求 出其基础解系
4 向量组的线性相关性及方程组的通解
clear
syms k
% 定义符号变量k
A=[1-2*k,3,3,3;3,2-k,3,3;3,3,2-k,3;3,3,3,11-k];
clear
A=[2,4,-1,4,16;-3,-6,2,-6,-23;3,6,-4,6,19;1,2,5,2,19];
% 输入系数矩阵A
b=[-2;7;-23;43];
% 输入常数列向量b
[R,s]=rref([A,b]);
% 把增广矩阵的最简行阶梯矩阵赋给R
% 而R的所有基准元素在矩阵中的列号构成了行向量s
492 输入 f4=eye(2) 显示 f4= 1 0
000
01
2 矩阵的基本运算
• 矩阵算术运算书写格式与普通算术相同,包括加、减、乘、 除。可用括号规定运算的优先级。
• Matlab将矩阵加、减、乘的程序编为内部函数,只要用+,*做运算符号就包含阶数检查和执行运算的全过程
– 两相加矩阵有一个是标量时,Matlab承认算式有效,自动把标量 扩展为同阶等元素矩阵 如:键入 X=[-1 0 1]; Y=X-1 得 Y= -2 -1 0
null(A, ‘r’), 齐次线性方程组Ax=0的基础解系 x0=A\b, 非齐次线性方程组Ax=b的一个特解x0 length(s), 计算s向量的维数 end, 矩阵的最大下标,最后一行或最后一列 find(s), 向量s中非零元素的下标 sub(A, k, n), 将A中所有符号变量k用数值n代替
% eye(5)为5阶单位矩阵
An4=A\eye(5)
% 5.初等行变换法:
B=rref([A,eye(5)]);
% 对矩阵[A , I] 进行初等行变换
% B为矩阵A的最简行阶梯矩阵
if(rank(B(:,1:5))==5) % 判断最简行阶梯矩阵B的前5列是否为单位阵
An5=B(:,6:10)
% 取出矩阵的后5列,并显示
1 矩阵赋值
• 基本赋值矩阵
ones(m,n), zero(m,n), magic(n), eye(n), rand(m,n), round(A)
如:输入 f1=ones(3, 2) 输入 f3=magic(3)
显示 f1= 1 1
显示 f3= 8 1 6
11
357
11 输入 f2=zero(2, 3) 显示 f2= 0 0 0
[m,n]=size(A);
% 矩阵A的行数、列数赋给了变量m、n
x0=zeros(n,1);
% 将特解x0初始化为N维零向量
r=length(s);
% 矩阵A的秩赋给变量r
x0(s,:)=R(1:r,end);
% 将矩阵R的最后一列按基准元素的位置给特解x0赋值
disp('非齐次线性方程组的特解为:')
D=det(A)
% 计算含符号变量矩阵A的行列式D
f=factor(D)
% 对行列式D进行因式分解
% 从因式分解的结果,可以看出方程的解
X=solve(f)
% 求方程“D=0”的解
4 向量组的线性相关性及方程组的通解
• 相关命令
[R, s]=rref(A), 把矩阵A的最简梯矩阵赋值给R;s是一个行向量,它的元 素由R的首非零元所在列号构成
• 相关命令
U=rref(A), 对矩阵A进行初等行变换,矩阵U为A的最简梯矩阵 det(A), 计算矩阵A的行列式 rank(A),计算矩阵A的秩 B(: , i)=b, 把向量b赋给矩阵B的第i行 A(i, j), 引用矩阵A中第i行j列的元素 [A, eye(5)], 创建5×10矩阵,前5列为A,后5列为单位矩阵 syms x, 定义x为符号变量
3 行列式与方程组求解
• 逆矩阵各种求法:
clear
A=[-7,-2,-6,4,6;1,3,-6,3,11;3,-11,9,5,-2;-3,0,-2,9,-3;7,30,-18,11,4]; % 1.命令法:
An1=inv(A) % 2.幂运算法:
An2=A^-1 % 3.右除法:
An3=eye(5)/A % 4.左除法:
x0
% 显示特解x0
disp('对应齐次线性方程组的基础解系为:')
x=null(A,'r')
% 得到齐次线性方程组Ax=0的基础解系x
4 向量组的线性相关性及方程组的通解
已知齐次线性方程组:
(1 2k)x1 3x2 3x3 3x4 0
3x1 3x1
(2 k)x2 3x3 3x2 (2 k)x3