数学建模讲座三Matlab基础课件

上传人:txadgkn****dgknqu... 文档编号:241279191 上传时间:2024-06-14 格式:PPT 页数:42 大小:624.24KB
返回 下载 相关 举报
数学建模讲座三Matlab基础课件_第1页
第1页 / 共42页
数学建模讲座三Matlab基础课件_第2页
第2页 / 共42页
数学建模讲座三Matlab基础课件_第3页
第3页 / 共42页
点击查看更多>>
资源描述
高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 一、matlab使用界面及其他1.1 matlab的初始界面1.2 matlab的在线帮助系统help 程序(主题)名help sin SIN Sine.SIN(X)is the sine of the elements of X.Overloaded methods help sym/sin.m一、matlab使用界面及其他1.1 matlab的初始界 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 一、matlab使用界面及其他(续)1.3 数据显示格式format short 显示小数点后4位(默认)format long 显示15位数字format bank 显示小数点后2位format +显示+,-,0format short e 显示5位科学计数法format long e 显示15位科学计数法format rat或rational 显示最接近的有理数format hex 16进制数一、matlab使用界面及其他(续)1.3 数据显示格式 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 一、matlab使用界面及其他(续)1.4 命令行编辑 重调前一行(用于调出前面的命令修改)重调后一行 左移一个字符 右移一个字符home 移动到行首end 移动导行尾esc 清除一行del 删除光标后字符backspace 删除光标前字符一、matlab使用界面及其他(续)1.4 命令行编辑 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 一、matlab使用界面及其它(续)1.5 matlab命令窗口1.5.1 显示who 显示当前工作区的所有变量名whos 显示当前的变量名、大小、字节、类型disp(x)显示x的内容,它可以是矩阵或字符串1.5.2 清除clear 清除当前工作区的所有变量clear(变量名)清除指定的变量一、matlab使用界面及其它(续)1.5 matlab 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 一、matlab使用界面及其它(续)1.5.3 储存save 文件名 将工作区的变量储存到当前matlab目录下产生的一个扩展名为mat的MAT的文件中1.5.4 调出load 文件名 调出文件中的数据一、matlab使用界面及其它(续)1.5.3 储存 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 二、矩阵及其运算2.1 矩阵的直接输入A=1 2 3;4 5 6;或 A=1,2,3;4,5,6 或A=1 2 3 4 5 6注意:矩阵的存放是按列存放的。即A的存放次序为1,4,2,5,3,6。矩阵的提取a=A(2,3),b=A(:,3),c=A(:,2)矩阵元素的修改A(2,3)=23,A(:,2)=22,55,A(3,4)=33二、矩阵及其运算2.1 矩阵的直接输入 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 二、矩阵及其运算(续)2.2 矩阵的函数生成zeros(m,n)生成m n零矩阵 ones(m,n)生成m n全1矩阵eye(m,n)生成m n单位矩阵rand(m,n)生成m n的(0,1)均匀分布矩阵randn(m,n)生成m n标准正态分布矩阵zeros(n)生成n阶零矩阵,其它类似2.3 矩阵生产器见图二、矩阵及其运算(续)2.2 矩阵的函数生成 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 二、矩阵及其运算(续)2.3 矩阵的裁剪与拼接A(3,:)A的第3行A(:,2)A的第2列A(1:2,:)A的第1,2行A(2:end,2,4)A的第2到最后行,2,4列B=zeros(2,3);ones(4,3)B=zeros(2,3),ones(2,4)B=1,2,3;ones(4,3)二、矩阵及其运算(续)2.3 矩阵的裁剪与拼接 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 二、矩阵及其运算(续)2.4 矩阵的基本运算+加法;-减法;转置;*乘法;乘幂;左除;/右除注意:左除 AX=B X=AB(要求A,B行数相同)/右除 XA=B X=B/A(要求A,B列数相同)二、矩阵及其运算(续)2.4 矩阵的基本运算 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 二、矩阵及其运算(续)2.5 矩阵的特殊运算 .*点乘法;.点乘幂;.点左除;./点右除点运算是同型矩阵对应元素之间的运算注意:.点乘幂的运算A=1 2 3;4 5 62.AA.2二、矩阵及其运算(续)2.5 矩阵的特殊运算 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 二、矩阵及其运算(续)2.6 行向量的特殊输入a=m:n 从m到n公差为1的等差数列注意:mna=m:d:n 从m到n公差为d的等差数列注意:m,n可正可负,大小不限,d要匹配linspace(a,b,n)生成从a到b共n个数值的等差数列logspace(a,b,n)生成从10a到10b共n个数值的等比数列二、矩阵及其运算(续)2.6 行向量的特殊输入 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 三、语句和函数3.1 语句3.1.1 表达式变量=表达式 A=1 2 3;4 5 6+3 回车之后显示结果A=1 2 3;4 5 6+3;回车之后不显示结果注意:1)一个命令一行写不下时,可用“”续行;2)一行可以有几个语句,它们之间用逗号或分号隔开。三、语句和函数3.1 语句 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 三、语句和函数(续)3.1.2 常见常量pi 圆周率eps 最小浮点数Inf 或inf 正无穷大,特指1/0NaN 或 nan 非数,特指 0/0i,j 都是虚数单位a=0 1 0,b=1,0,0,c=a./bc=0 Inf NaNeps 的应用见以后三、语句和函数(续)3.1.2 常见常量 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 三、语句和函数(续)3.2 标量函数三角函数:sin cos tan cot sec csc asin acos atan acot asec acsc sinh cosh tanh asinh atanh atan2(四象限取值的反正切函数)其它基本函数:sqrt(正的平方根),pow2(2的指数),exp(e的指数),log(自然对数),log10(常用对数),log2(以2为底的对数),abs(绝对值或复数模),round(四舍五入),floor(地板函数),ceil(天花板函数),fix(取整数函数),sign(符号函数),real(取实部),imag(取虚部),angle(取辐角),rats(有理逼近)三、语句和函数(续)3.2 标量函数 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 三、语句和函数(续)注意:1)这些函数作用于标量,作用于矩阵时,是作用于矩阵的每一个元素;2)计算函数的常用命令还有 feval(函数名F,x)即求F(x),x可以是矩阵,对每个元素求值;feval(函数名F,x)也是求F(x)句柄函数如:feval(sin,1 2 3;4 5 6)feval(sin,1 2 3;4 5 6)三、语句和函数(续)注意:高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 三、语句和函数(续)3.3 向量函数max(最大值),min(最小值),sum(求和),length(长度),mean(平均值),median(中位数),prod(乘积),sort(从小到大排列)a=4 3.1 1.2 0 6;b=min(a),c=sum(a),d=median(a),e=sort(a),f=prod(a)注意:1)上述函数可以作用于矩阵,结果为行向量,是函数作用于矩阵的每列所得。2)当a包含偶数个数时,median(a)的值是中间两个数的平均值。三、语句和函数(续)3.3 向量函数 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 三、语句和函数(续)3.4 矩阵函数3.4.1构造矩阵的函数zeros(0阵),ones(1阵),eye(单位阵),rand(均匀随机阵),randn(正态随机阵),diag(生成或提取对角阵),diagonalmatrixtriu(生成或提取上三角阵),upper triangular parttril(生成或提取下三角阵),lower triangular part三、语句和函数(续)3.4 矩阵函数 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 三、语句和函数(续)3.4.2 矩阵计算函数size(维数),det(行列式),rank(秩),inv(逆矩阵),eig(矩阵特征值),trace(矩阵的迹),poly(矩阵的特征多项式)reshape(A,m,n)将矩阵A转化成mn的形式3.5 高维矩阵A(:,:,1)=reshape(1:9,3,3);A(:,:,2)=reshape(-1:-1:-9,3,3)a=A(3,2,1),b=A(3,2,2),c=A(4),d=A(13)注意:高维矩阵的存放次序是先A(:,:,1)再A(:,:,2)三、语句和函数(续)3.4.2 矩阵计算函数 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能4.1二维图形plot4.1.1基本形式plot(y)以1,2,length(y)为横坐标,以y的元素为纵坐标绘图;plot(x,y)以x(i)为横坐标,对应的y(i)为纵坐标绘制的图形。x=linspace(0,2*pi,30),y=sin(x);plot(y),pause,plot(x,y)注意:后一个图替代前一个图。四、绘图功能4.1二维图形plot 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.1.2 多重线plot(x1,y1,x2,y2,)x=linspace(0,2*pi,30),y1=sin(x),y2=cos(x);plot(x,y1,x,y2)或者用命令hold on 可以将新图形画在目前图形上x=linspace(0,2*pi,30),y1=sin(x),y2=cos(x);plot(x,y1),hold on,plot(x,y2)注意:除非使用命令hold off,否则,图形一直叠加下去。四、绘图功能(续)4.1.2 多重线 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.1.3 线型和颜色格式为:plot(x1,y1,线型颜色点型,)其中线型 实线 :点线 -.虚点线 -波折线颜色 y 黄色 r 红色 g 绿色 b 蓝色 w 白色 k 黑色 m 紫色 c 青色点型 .圆点 +加号 *星号 叉号 x=linspace(0,2*pi,30),y1=sin(x),y2=cos(x);plot(x,y1,b:+,x,y2,g-.h)四、绘图功能(续)4.1.3 线型和颜色 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.1.4网格和标记grid on或grid 在图形上加网格grid off 去掉图形上的网格xlabel(字符)在x轴上加上字符ylabel(字符)在y轴上加上字符title(字符)在图形顶上加上字符text(x,y,字符)在(x,y)处加上字符xlabel(Independent Variable)ylabel(Dependent Variable Y and Z)title(Sine and Cosine Curves)text(2.5,0.7,sine),text(2.5,-0.7,余弦)四、绘图功能(续)4.1.4网格和标记 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.1.5 坐标控制缺省情况下matlab自动选择图形的横、纵坐标的比例;axis(xmin,xmax,ymin,ymax)分别给出x轴和y轴的最小和最大值axis equal或axis(equal)x轴和y轴的单位相同axis square或axis(square)图框为方形axis off或axis(off)去掉坐标轴axis on 或axis(on)加上坐标轴四、绘图功能(续)4.1.5 坐标控制 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.1.6 多幅图形 用subplot(m,n,p)将一个画面划分为mn个图形区域,p代表第p个区域,每个区域可以放一个图形。x=linspace(0,2*pi,30),y=sin(x),z=cos(x),u=sin(2.*x)v=tan(x)subplot(2,2,1),plot(x,y),axis(0,2*pi,-1,1),title(sin(x)subplot(2,2,2),plot(x,z),axis(0,2*pi,-1,1),title(cos(x)subplot(2,2,3),plot(x,u),axis(0,2*pi,-1,1),title(sin(2x)subplot(2,2,4),plot(x,v),axis(0,2*pi,-5,5),title(tan(x)四、绘图功能(续)4.1.6 多幅图形 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.1.7 极坐标图形及其它图形极坐标图形的命令为 polar(x,y)t=0:0.01:2*pi;polar(t,0.5*abs(sin(4*t)fplot(fun,xmin,xmax,ymin,ymax)在xmin,xmax,ymin,ymax上画出函数fun的图形fplot(sin(x)/x,-10,10,-0.2,1.2)四、绘图功能(续)4.1.7 极坐标图形及其它图形 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.2 三维图形4.2.1三维网格图 mesh,surf,meshzx=-7.5:0.5:7.5;y=x;X,Y=meshgrid(x,y)R=sqrt(X.2+Y.2)+eps;Z=sin(R)./R;mesh(X,Y,Z)或mesh(Z)meshz(Z)surf(Z)四、绘图功能(续)4.2 三维图形 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.2.2空间曲线命令为 plot3(x(t),y(t),z(t)绘制出参数方程x=x(t),y=y(t),z=z(t)的图形绘出x=sint,y=cost,z=tt=0:pi/20:10*pi;plot3(sin(t),cos(t),t)四、绘图功能(续)4.2.2空间曲线 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 四、绘图功能(续)4.2.3 等高线,速度场等等高线命令为:contour或contour3速度场命令为:quiverx=-7.5:0.5:7.5;y=x;X,Y=meshgrid(x,y)R=sqrt(X.2+Y.2)+eps;Z=sin(R)./R;contour(Z)quiver(X,Y)四、绘图功能(续)4.2.3 等高线,速度场等 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计5.1 关系运算 大于;=大于等于;=等于;=不等于 关系运算比较两个矩阵(数组,标量)之间的关系,当关系成立时结果为1,否则为0。A=1:5,B=5:-1:1,C=A=4,D=A=Bfind(Aa)按列找出矩阵A中大于a的位置综合运用(比较下面两个结果)x=-1:1/3:1,y=sin(x)./xx=-1:1/3:1,x=x+eps*(x=0),y=sin(x)./x五、程序设计5.1 关系运算 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)5.2 逻辑运算&与运算;|或运算;非运算;xor 异或运算运算规则为a=1:9,b=9-a,c=(a4),d=(a=3)&(b6),e=xor(c,d)五、程序设计(续)5.2 逻辑运算a=1:9,b=9-a,c 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)y=all(x):若x为向量,当所有元素非零时,y=1,否则y=0;当x为矩阵时,all作用于x的列元素,返回行向量;y=any(x):若x为向量,当有一元素非零时,y=1,否则y=0;当x为矩阵时,all作用于x的列元素,返回行向量五、程序设计(续)y=all(x):若x为向量,当所有元素非 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)5.3 条件与循环5.3.1 if 语句 用法:如果关系表达式成立,则执行语句1,否则执行end的后的语句。if else end 如果关系表达式处理,则执行语句1,否则执行语句2,然后执行end后的语句。if end五、程序设计(续)5.3 条件与循环 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)if elseif elseif else end 如果关系表达式j成立,则执行语句j,否则执行语句n+1,然后执行end后的语句.分段函数:if x=0 y=0;elseif x=1 y=x;else y=1;end 五、程序设计(续)if 如果关系表达式 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)5.3.2 switch语句根据表达式的值来执行语句switch case value1 case value2 elsecase end 当表达式的值为i时,执行语句i(i=1,2,n-1),否则执行语句n五、程序设计(续)5.3.2 switch语句 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)5.3.3 for 语句for =:endfor i=1:3 for j=1:3 a(i,j)=1/(i+j-1);endendformat rata注意:1)步长为1时可以省略;2)for语句可以嵌套使用a=1 1/2 1/3 1/2 1/3 1/4 1/3 1/4 1/5 五、程序设计(续)5.3.3 for 语句for i=1 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)5.3.4 while 语句while end 当关系表达式为真时,语句被反复执行,直至关系表达式为假时终止。也可以用break语句终止循环。n=0;EPS=1while(1+EPS)1 EPS=EPS/2;n=n+1endEPS=2*EPS;n,EPSEPS=1for n=1:100 EPS=EPS/2;if (1+EPS)=1 EPS=2*EPS;break endendn,EPS五、程序设计(续)5.3.4 while 语句 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)5.4 M文件5.4.1 脚本M文件 打开File菜单中选择New,再选择M-file,这时MATLAB将打开一个文本编辑和调试窗口,在这里输入的命令和数据,就是脚本M文件,它可以存起来。格式为:M文件名.m 使用时,可以调出来。for i=1:m for j=1:n a(i,j)=1/(i+j-1);endenda=rats(a);m=5,n=5,hilbert,a五、程序设计(续)5.4 M文件for i=1:mm=5 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)5.4.2 函数M文件格式为:function 因变量因变量=函数名函数名(自变量自变量)%注释行注释行 函数体函数体 说明:函数文件的第一行必须以function开始,表明该文件是函数文件;因变量(输出部分)只有一个变量时,方括号可以省略,当因变量不止一个时,用逗号隔开;自变量不止一个时,也用逗号隔开。保存时,文件名必须是该函数名.m 注释行是对该函数的简单说明.五、程序设计(续)5.4.2 函数M文件 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)function output=fact(n)%FACT计算给定正数n的阶乘n!output=1;for i=1:noutput=output*i;endfunction mean,stdev=stat(x)%STAT Mean and Standard deviation%for a vector x,stat(x)returns the mean and deviation of x%如果x是矩阵,则stat(x)计算矩阵x的每列期望和标准差。m,n=size(x);if m=1m=nendmean=sum(x)/mstdev=sqrt(sum(x.2)/m-mean.2);五、程序设计(续)function output=fact 高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 精品课件精品课件!精品课件!高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 精品课件精品课件!精品课件!高崇山高崇山,山西财经大学应用数学学院,山西财经大学应用数学学院, 五、程序设计(续)function x=sub1(y)%子函数x=y.2;endfunction x=sub2(y,z)%子函数x=sub1(y)+sub1(z);endfunction c,d=testsubfun(a,b)if(nargin=1)c=sub1(a);%只有一个参数时,计算其平方elseif(nargin=2)c=sub2(a,b);%有两个输入参数时,计算其平方和endif(nargout=2)%有两个输出参数时,执行下面命令 d=this is an example for testing sub-function;end M文件可以引用其他M文件,也可以递归地引用自己。function c,d=testsubfun(a,b)if(nargin=1)c=a.2;elseif(nargin=2)c=a.2+b.2endif(nargout=2)%d=this is an example for testing sub-function;end五、程序设计(续)function x=sub1(y)
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!