《数学实验与Matlab》课件.ppt
《《数学实验与Matlab》课件.ppt》由会员分享,可在线阅读,更多相关《《数学实验与Matlab》课件.ppt(229页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数学实验与数学实验与Matlabhttp:/ 晓晓 阳阳华中科技大学数学系 实实 验验 一一 矩阵运算与矩阵运算与Matlab命令命令 日常矩阵及其运算日常矩阵及其运算矩阵应用实例矩阵应用实例:榄球防护用品的生产管理榄球防护用品的生产管理 应用问题应用问题 一个工厂生产三种橄榄球用品一个工厂生产三种橄榄球用品:防护防护帽、帽、垫肩、臀垫。垫肩、臀垫。需要不同数量的:硬塑料需要不同数量的:硬塑料、泡沫塑料泡沫塑料 尼龙线尼龙线、劳动力。劳动力。为监控生产,管理者对它们之间的关系为监控生产,管理者对它们之间的关系十分关心。十分关心。为把握这些量的关系,他列出下面的表为把握这些量的关系,他列出下面的
2、表 原料产品关系表原料产品关系表 订单订单管理者接到四份订单如上表所示。管理者接到四份订单如上表所示。问应该如何计算每份订单所需的原材料,问应该如何计算每份订单所需的原材料,以便组织生产?以便组织生产?将将表表格格写写成成矩矩阵阵形形式式计计 算算输入下面输入下面Matlab指令指令A=4 2 3;1 3 2;1 3 3;3 2 2,B=35 20 60 45;10 15 50 40;20 12 45 20C=A*B请自行计算观看结果请自行计算观看结果Matlab基本指令基本指令向量的创建和运算向量的创建和运算1.直接输入向量直接输入向量x1=1 2 4,x2=1,2,1,x3=x1运行结果运
3、行结果 x1=1 2 4 x2=1 2 1 x3=1 2 4 2.冒号创建向量冒号创建向量 x1=3.4:6.7,x2=3.4:2:6.7 x3=2.6:-0.8:0运算结果运算结果x1=3.4000 4.4000 5.4000 6.4000 x2=3.4000 5.4000 x3=2.6000 1.8000 1.0000 0.2000 3.生成线性等分向量生成线性等分向量指令指令x=linspace(a,b,n)在在a,b区间产区间产生生 n 个等分点个等分点(包括端点包括端点)x=linspace(0,1,5)结果结果x=0 0.2500 0.5000 0.7500 1.0000工作空间工
4、作空间在在Matlab窗口创建向量后并运行后,向窗口创建向量后并运行后,向量就存在于工作空间,可以被调用。量就存在于工作空间,可以被调用。向量的运算向量的运算设设x=x1 x2 x3;y=y1 y2 y3;为为两两个个三三维向量,维向量,a,b为标量。为标量。向量的数乘:向量的数乘:a*x=a*x1 a*x2 a*x3向量的平移:向量的平移:x+b=x1+b x2+b x3+b向量和:向量和:x+y=x1+y1 x2+y2 x3+y3向量差:向量差:x-y=x1-y1 x2-y2 x3-y3 数的乘幂:数的乘幂:如如 a2元素群运算元素群运算(四则运算)四则运算)x.*y=x1*y1 x2*y
5、2 x3*y3 (元元素素群群乘乘积积)x./y=x1/y1 x2/y2 x3/y3 (元元素素群群右右除除,右边的右边的y做分母做分母)x.y=y1/x1 y2/x2 y3/x3 (元元素素群群左左除除,左边的左边的x做分母做分母)x.5=x15 x25 x35 (元素群乘幂元素群乘幂)2.x=2x1 2x2 2x3 (元元素素群群乘乘幂幂)x.y=x1y1 x2y2 x3y3 (元元素素群群乘乘幂幂)元素群运算(函数计算)元素群运算(函数计算)Matlab有有许许多多内内部部函函数数,可可直直接接作作用用于于向量产生一个同维的函数向量。向量产生一个同维的函数向量。x=linspace(0,
6、4*pi,100);(产产生生100维向量维向量x)y=sin(x);(y也自动为也自动为100维向量维向量)y1=sin(x).2;y2=exp(-x).*sin(x);观察结果观察结果创建矩阵(数值矩阵的创建)创建矩阵(数值矩阵的创建)直接输入法创建简单矩阵。直接输入法创建简单矩阵。A=1 2 3 4;5 6 7 8;9 10 11 12B=-1.3,sqrt(3);(1+2)*4/5,sin(5);exp(2),6 观察运行结果观察运行结果创建矩阵(符号矩阵的创建)创建矩阵(符号矩阵的创建)用指令用指令“syms”说明符号变量。说明符号变量。syms a11 a12 a13 a14 a2
7、1 a22 a23 a24 a31 a32 a33 a34 b11 b12 b13 b14 b21 b22 b23 b24 b31 b32 b33 b34A1=a11 a12 a13 a14;a21 a22 a23 a24;a31 a32 a33 a34,B1=b11 b12 b13 b14;b21 b22 b23 b24;b31 b32 b33 b34 运行运行矩阵的运算矩阵的运算(矩阵的加减、数乘、乘积矩阵的加减、数乘、乘积)C=A1+B1D=A1-B1syms c,cA=c*A1A2=A1(:,1:3),B1G=A2*B1 矩阵的运算矩阵的运算(矩阵的加减、数乘、乘积矩阵的加减、数乘、乘
8、积)A,A_trans=AH=1 2 3;2 1 0;1 2 3,K=1 2 3;2 1 0;2 3 1h_det=det(H),k_det=det(K),H_inv=inv(H),K_inv=K-1矩阵的运算矩阵的运算(左除和右除左除和右除)左除左除“”:求矩阵方程求矩阵方程AX=B的解;(的解;(A、B的行要保持一致)的行要保持一致)解为解为 X=AB;当当A为方阵且可逆时有为方阵且可逆时有X=AB=inv(A)*B;右除右除“/”:求矩阵方程求矩阵方程XA=B的解的解 (A、B的列要保持一致)的列要保持一致)解为解为 X=B/A,当当A为方阵且可逆时有为方阵且可逆时有X=B/A=B*in
9、v(A)矩阵的运算矩阵的运算(左除和右除左除和右除)求矩阵方程:求矩阵方程:设设A、B满足关系式:满足关系式:AB2B+A,求求B。其中其中A=3 0 1;1 1 0;0 1 4。解:有解:有(A-2I)BA程序程序:A=3 0 1;1 1 0;0 1 4;B=inv(A-2*eye(3)*A,B=(A-2*eye(3)A观察结果:观察结果:分块矩阵分块矩阵(矩阵的标识矩阵的标识)1.矩阵元素的标识矩阵元素的标识:A(i,j)表示矩阵表示矩阵A 的第的第 i 行行 j 列的元素;列的元素;2.向量标识方式向量标识方式 A(vr,vc):vr=i1,i2,ik、vc=j1,j2,ju分分别别是是
10、含含有矩阵有矩阵A的行号和列号的单调向量。的行号和列号的单调向量。A(vr,vc)是是取取出出矩矩阵阵A的的第第i1,i2,ik行行与与j1,j2,ju列交叉处的元素所构成新矩阵。列交叉处的元素所构成新矩阵。分块矩阵分块矩阵(矩阵的标识矩阵的标识)取取出出A的的1、3行行和和1、3列列的的交交叉叉处处元元素素构成新矩阵构成新矩阵A1程序程序nA=1 0 1 1 2;0 1-1 2 3;n 3 0 5 1 0;2 3 1 2 1,n vr=1,3;vc=1,3;nA1=A(vr,vc)观察结果观察结果分块矩阵分块矩阵(矩阵的标识矩阵的标识)将将A分分为为四四块块,并并把把它它们们赋赋值值到到矩矩
11、阵阵B中中,观察运行后的结果。观察运行后的结果。程序程序nA11=A(1:2,1:2),A12=A(1:2,3:5),nA21=A(3:4,1:2),A22=A(3:4,3:5)nB=A11 A12;A21 A22结果结果分块矩阵分块矩阵(矩阵的修改和提取)(矩阵的修改和提取)修改矩阵修改矩阵A,将它的第将它的第1行变为行变为0。程序:程序:nA=1 0 1 1 2;0 1-1 2 3;n 3 0 5 1 0;2 3 1 2 1n A(1,:)=0 0 0 0 0;A删除上面矩阵删除上面矩阵A的第的第1、3行。行。程序:程序:n A(1,3,:)=结果结果生成特殊矩阵生成特殊矩阵 全全1阵阵
12、n ones(n),ones(m,n),ones(size(A)全零阵:全零阵:n zeros(n),zeros(m,n),zeros(size(A)n常常用于对某个矩阵或向量赋常常用于对某个矩阵或向量赋0初值初值单位阵:单位阵:neye(n),eye(m,n)随机阵:随机阵:nrand(m,n),rand(n)=rand(n,n)用用于于随随机机模模拟,常和拟,常和rand(seed,k)配合使用配合使用。生成特殊矩阵生成特殊矩阵将将rand指令运行多次,观察结果。指令运行多次,观察结果。程序:程序:n y1=rand(1,5),y2=rand(1,5),nrand(seed,3),x1=r
13、and(1,5),n rand(seed,3),x2=rand(1,5)结果结果常用矩阵函数常用矩阵函数det(A):方阵的行列式;方阵的行列式;rank(A):矩阵的秩;矩阵的秩;eig(A):方阵的特征值和特征向量;方阵的特征值和特征向量;trace(A):矩阵的迹;矩阵的迹;rref(A):初等变换阶梯化矩阵初等变换阶梯化矩阵Asvd(A):矩阵奇异值分解。矩阵奇异值分解。cond(A):矩阵的条件数;矩阵的条件数;数据的简单分析数据的简单分析1.当当数数据据为为行行向向量量或或列列向向量量时时,函函数数对对整个向量进行计算整个向量进行计算.2.当当数数据据为为矩矩阵阵时时,命命令令对对
14、列列进进行行计计算算,即即把把每每一一列列数数据据当当成成同同一一变变量量的的不不同同观观察值。察值。max(求求最最大大)、min(求求最最小小)、mean(求求平平均均 值值)、sum(求求 和和)、std(求求 标标 准准 差差)、cumsum(求求累累积积和和)、median(求求中中值值)、diff(差差分分)、sort(升升序序排排列列)、sortrows(行升序排列行升序排列)等等等等。数据的简单分析数据的简单分析观观察察:生生成成一一个个36的的随随机机数数矩矩阵阵,并并将将其其各各列列排排序序、求求各各列列的的最最大大值值与与各各列列元素之和。元素之和。程序程序nrand(s
15、eed,1);A=rand(3,6),nAsort=sort(A),Amax=max(A),Asum=sum(A)结果结果实验二实验二函数可视化与函数可视化与Matlab作图作图函数的可视化函数的可视化n f(x),g(x)是周期函数吗?观察它们的图象。是周期函数吗?观察它们的图象。n 程序程序clf,x=linspace(0,8*pi,100);F=inline(sin(x+cos(x+sin(x);y1=sin(x+cos(x+sin(x);y2=0.2*x+sin(x+cos(x+sin(x);plot(x,y1,k:,x,y2,k-)legend(sin(x+cos(x+sin(x),
16、0.2x+sin(x+cos(x+sin(x),2)n令令绘制平面曲线绘制平面曲线(plot指令指令)plot(x,y):n以以x为横坐标、为横坐标、y为纵坐标绘制二维图形为纵坐标绘制二维图形nx,y是同维数的向量;是同维数的向量;plot(y):n相当于相当于x=1,2,length(y)时情形。时情形。绘制平面曲线绘制平面曲线(绘制多个图形(绘制多个图形)1.plot(x,y1;y2;),n x是是横横坐坐标标向向量量,y1;y2;是是由由若若干干函函数数的纵坐标拼成的矩阵的纵坐标拼成的矩阵2.plot(x,y1),hold on,plot(x,y2),hold off3.plot(x,y
17、1,x,y2,)4.plotyyn两个坐标系,用于绘制不同尺度的函数。两个坐标系,用于绘制不同尺度的函数。绘制平面曲线绘制平面曲线(线型、点形和颜色的控制)(线型、点形和颜色的控制)(线型、点形和颜色的控制)(线型、点形和颜色的控制)plot(x,y,颜色线型点形颜色线型点形)plot(x,y,颜颜色色线线型型点点形形,x,y,颜色线型点形颜色线型点形,)句句柄柄图图形形和和set命命令令改改变变属属性性值值,可可套套用:用:nh=plot(x,y),n set(h,属属性性,属属性性值值,属属性性,属属性性值值,)n也也可可用用plot(x,y,属属性性,属属性性值值)设设置置图图形对象的属
18、性。形对象的属性。绘制平面曲线绘制平面曲线(属性变量和属性值)(属性变量和属性值)(属性变量和属性值)(属性变量和属性值)n线宽:线宽:LineWidthn点的大小:点的大小:MarkerSizen线型:线型:LineStylen颜色:颜色:color绘制平面曲线绘制平面曲线(例)(例)(例)(例)观察:观察:n改变绘图的线型和颜色。改变绘图的线型和颜色。n用用grid on 指指令令为为图图形形窗窗口口加加上上 网网格格线线,并并改改变变网网格格的的线线型和字体的大小型和字体的大小。程序程序nh=plot(0:0.1:2*pi,sin(0:0.1:2*pi);n set(h,LineWidt
19、h,5,color,red);grid onn set(gca,GridLineStyle,-,fontsize,16)观察结果观察结果绘制平面曲线绘制平面曲线(坐标轴的控制)(坐标轴的控制)(坐标轴的控制)(坐标轴的控制)axis指令指令 axis(xmin xmax ymin ymax):设定二维图形的设定二维图形的x和和y坐标的范围;坐标的范围;axis(xmin xmax ymin ymax zmin ymax):设定三维图形的坐标范围设定三维图形的坐标范围;其其中中xminxxmax,yminyymax,zminzzmax。绘制平面曲线绘制平面曲线(gcagca属性控制)属性控制)属
20、性控制)属性控制)改变当前轴对象句柄改变当前轴对象句柄gca属性属性用用set(gca,属性属性,属性值属性值,)可改变字体可改变字体大小、坐标刻度等轴对象的内容。例如:大小、坐标刻度等轴对象的内容。例如:set(gca,ytick,-1-0.5 0 0.5 1)n将将 y 坐标按向量坐标按向量-1-0.5 0 0.5 1将刻度分成将刻度分成4格;格;set(gca,yticklabel,a|b|c|d|e)n改变改变y坐标刻度的说明。坐标刻度的说明。绘制平面曲线绘制平面曲线(gcagca属性控制属性控制属性控制属性控制,例)例)例)例)设置设置y坐标的刻度并加以说明,并改变字体的坐标的刻度并
21、加以说明,并改变字体的大小。大小。程序程序 plot(0:0.1:2*pi,sin(0:0.1:2*pi),k.-,);grid on,axis(0 6.3-1.1 1.1),set(gca,ytick,-1-0.5 0 0.5 1),set(gca,yticklabel,a|b|c|d|e),set(gca,fontsize,20)get(gca)运行结果运行结果绘制平面曲线绘制平面曲线(文字标注)(文字标注)(文字标注)(文字标注)title(图形标题图形标题);xlabel(x轴轴名名称称);ylabel(y轴轴名名称称););zlabel(z轴名称轴名称););text(说明文字说明文
22、字):创建说明文字;:创建说明文字;gtext(说说明明文文字字):用用鼠鼠标标在在特特定定位位置置输输入入文文字。字。文字标注常用符号:文字标注常用符号:pi(););alpha(););beta(););leftarrow (左箭头)左箭头)rightarrow (右箭头);右箭头);bullet(点号)点号)绘制平面曲线绘制平面曲线(程序讲解,(程序讲解,(程序讲解,(程序讲解,exp2_1.mexp2_1.m)clf,t=0:0.1:3*pi;alpha=0:0.1:3*pi;plot(t,sin(t),r-);hold on;plot(alpha,3*exp(-0.5*alpha),
23、k:);set(gca,fontsize,15,fontname,times New Roman),xlabel(itt(deg);ylabel(itmagnitude);title(itsine wave and itAe-alphaittwave);绘制平面曲线绘制平面曲线(程序讲解,(程序讲解,(程序讲解,(程序讲解,exp2_1.mexp2_1.m)text(6,sin(6),fontsize15The Value itsin(t)at itt=6rightarrowbullet,HorizontalAlignment,right),text(2,3*exp(-0.5*2),fonts
24、ize15bulletleftarrow The Value of it3e-0.5 itt=,num2str(3*exp(-0.5*2),at itt=2);legend(itsin(t),itAe-alphat)注注1:num2str:string1,num2str,string2,用方括号用方括号注注2:legend 请结合图形观察此命令的使用请结合图形观察此命令的使用 图形窗口的创建和分割图形窗口的创建和分割 subplot(m,n,k)命令。命令。在图形区域中显示多个图形窗口。在图形区域中显示多个图形窗口。m为上下分割数,为上下分割数,n为左右分割数,为左右分割数,k为第为第k子图编
25、号。子图编号。例例:将将一一个个图图形形分分为为9个个子子图图,在在第第k个个子子图图画画sin(kx)的图象的图象.程序:程序:clf,b=2*pi;x=linspace(0,b,50);for k=1:9 y=sin(k*x);subplot(3,3,k),plot(x,y),axis(0,2*pi,-1,1)end若干有用的指令若干有用的指令clf:清除图形窗口已有的内容清除图形窗口已有的内容.shg:显示图形窗口。显示图形窗口。clear、clear x:清清除除工工作作空空间间的的已已有变量。有变量。figure(n):打开第打开第n个图形窗口个图形窗口 help:续行号续行号绘制二
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学实验与Matlab 数学 实验 Matlab 课件
限制150内