您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > Matlab学习例题指导
一、绘图方法例1(1)以向量y1=(1,2,5,4.5,3,6,1)各分量值为纵坐标,分量序号为横坐标,绘制顺序连线图。(2)在同一张图上绘制三个向量,其分量值纵坐标为:y1=(1,8,1,5)y2=(5,3,4,9)y3=(3,5,3,4),横坐标为其分量序号的顺序连线图。解(1)由于y1为向量,可以直接用plot指令画出。键入:y1=[1254.5361];%输入向量y1的数据subplot(1,2,1),plot(y1,’linewidth’,2),grid回车得出图2-2.(2)在同一图上画出三个向量y1,y2,y3代表的三条折线,先用给出的数据构成一个3列矩阵,即4*3阶矩阵x2=153835143594。在指令窗中键入:x2=[1,5,3;8,3,5;1,4,3;5,9,4];subplot(1,2,2),plot(x2),xlabel(‘x’),ylabel(‘y’)回车得出图2-3.注:1.grid为在途中加画网格线指令;2.xlabel(‘x’)和ylabel(‘y’)为加注坐标指令,把输入的字符串分别加注在x和y坐标轴旁。例2用plot画出sintxftet的曲线,[0,3]t解:先将自变量t离散化,设取0,0.2,0.4,...,3t,函数xft用数组算法符号链接。键入:t=0:0.2:3*pi;x=exp(-t).*sin(t);plot(t,x)回车得出图2-4.例3一次画出两条函数曲线:sint和costet,[0,3]t,t取值间隔为0.02.解:键入:t=0:0.02:3*pi;x=[sin(t);cos(t).*exp(-t)];plot(t,x),t=size(t),x=size(x)回车得出图2-5和t,x的维数。若t的取值间隔较大,即t的维数很小时,光滑曲线就会显出其折线的本来面貌。例4在同一图上画出下列三条函数曲线:110cos,[0,3];yxx32,[0.5,8]xyex;63,[1,9]yxx。解三个函数的定义域不同,可以在各自的定义域内离散自变量,也可以都在定义域最大者中离散自变量。这里采用前一种方法离散自变量。键入:x1=0:0.2:3*pi;y1=10*cos(x1);x2=0.5:0.3:8;y2=exp(pi-3*x2);x3=1:0.3:9;y3=6./x3;subplot(2,1,1);plot(x1,y1,’r*-’,x2,y2,’+g:’,x3,y3,’-.sk’),...legend(‘10cosx’,’exp(pi-3x)’,’6./x’)回车得出图2-6(a)例5画出下列分段函数的曲线0()1yx1001.5xx。解键入:subplot(2,2,3),plot([-10],[00],[00],[01],[0,1],[11],’linewidth’,3),…axis([-1.21.5-0.52]),回车得出图2-6(b)例6用复数作图法画一个单位圆。解键入Subplot(2,2,4),t=0:pi/100:2*pi;y=exp(i*t);plot(y),axis(‘square’)回车得出图1-6(c)例7分别绘制[,]间的正弦函数曲线和sinxex函数曲线。解“sin”是正弦函数的M-函数文件名,可以直接作为输入参数使用。键入:fplot(‘sin’,[-pipi],’r+’)回车得图2-7.可以看出x取值间隔与曲线曲率有关,数据点的疏密程度随曲线曲率的增大而变大。再键入:fplot(‘exp(-x)*sin(x)’,[-pipi])回车得出图2-8.例8在同一幅画面上绘制出xye,3sinyx和2yx三条函数曲线,[,]x。解用给出的三条函数曲线解析表达式构成一个行阵,用fplot一次就能画出三条曲线。键入:fplot(‘[exp(x),3*sin(x),x^2]’,pi*[-11-11])回车例9绘出余弦函数xcos和ttetxft2312,]4,4[t的曲线。解:键入:ezplotcos回车得出图。再键入:ezplot(‘t^3+2*exp(t)/(1-t^2)-t’,[-4,4])回车得出图。例10绘制叶形线uvvu933和三叶玫瑰线)3sin(tr(极坐标方程)。解(1)绘制叶形线键入:ezplot(‘u^3+v^3-9*u*v’)(或ezplotu^3+v^3-9*u*v)回车得图。(2)绘制三叶玫瑰线键入:ezplot(‘sin(3*t)*cos(t)’,’sin(3*t)*sin(t)’,[0,pi])或ezplotsin(3*t)*cos(t)sin(3*t)*sin(t)回车得出图。例11已知空间曲线方程xzxycossin,]20,0[x,绘制空间曲线,并画出坐标网格。解键入:X=0:0.05:20;y=sin(x);z=cos(x);subplot(1,2,1),plot3(x,y,z,’r.’),grid回车得出图。例12绘制两条空间折线,第一条线上节点的空间坐标为(1,3,5),(2,5,1),(5,4,5);第二条为(5,1,5),(5,4,4),(1,2,1)。解键入:x1=[15;25;51];y1=[31;54;42];z1=[55;14;51];Subplot(1,2,2),plot3(x1,y1,z1,’r’),grid,box回车得出图。例13已知]3,1[x,]5,2,5[y,503214z,用mesh(x,y,z)作空间网格图。解键入:x=[13];y=[525];z=[41;23;05];subplot(1,2,1),mesh(x,y,z),box回车得出图。例14设1321X,5312Y,1532Z,用mesh指令绘制三维网格图。解键入:X=[12;31];Y=[21;35];Z=[23;51];subplot(1,2,2),mesh(X,Y,Z),box回车得出图。例15已知49124yxz,]5.1,5.1[x和]1,1[y。绘制空间曲面在X-Y平面上投影的网格图和空间曲面网格图。解键入:X=-1.5:0.4:1.5;y=-1.0:0.3:1;[X,Y]=meshgrid(x,y);%得出分格矩阵mesh(X,Y,zeros(length(y),length(x))),hold回车得出:Currentplotheld画出图中X-Y平面上投影图并予保留。再键入:Z=1-x.^4/9-y.^2/4,mesh(z)回车。例16已知双曲抛物面(鞍形曲面)3222yxz,]2,2[x,]3,3[y,绘制网格图。解键入:x=-3:0.2:3;y=x;[x1y1]=meshgrid(x,y);回车得出投影分隔数据,但不画图。键入:Subplot(1,2,2),z=x1.^2/2-y1.^2/3;mesh(z),box回车得出图.也可以键入mesh(x1,y1,z)或直接键入mesh(x1.^2/2-y1.^2/3)。例17用指令surf把例2-62的矩阵绘成空间曲面图。解键入:x=[12;31];y=[21;35];z=[23;51];subplot(1,2,1),surf(x,y,z),box回车得出图。例18绘制旋转抛物面4/3/22yxz曲面图,]3,3[x,]3,3[y。解键入:x=-3:0.3:3;y=x;[x1,y1]=meshgrid(x,y);对投影平面分格。键入:Subplot(1,2,2),z=x1.^2/3+y1.^2/4;surf(z),box回车得出图。二、字符串和符号矩阵例1造一张函数表,显示sint,te,lnt在0.1,4t间的取值,t取值间隔为0.2,并显示出这张函数表的表头。解:键入:t=[0.1:0.2:pi/4]‘;s=’tsintexp(t)lnt’;disp(s),disp([tsin(t)exp(t)log(t)])回车得出:结论也可以键入:s1=’sint’;s2=’exp(t)‘;s3=’lnt’;disp([blanks(4)‘t’blanks(9)s1blanks(5)s2blanks(3)s3]),disp([tsin(t)exp(t)log(t)])例2分两行输出自然数e,ln5和最小浮点数eps的符号(表头)和数值。解:键入:shju=[exp(1)log(5)eps];zfch=sprintf(‘eln5eps\n%9.3f;%f;%e;’,shju)例3用指令sprintf显示出“e=2.718282e;e=2.718282;e=2.7183;e=2.71828;e=2.718282e+000”解:键入:sprintf(‘e=%d;e=%f;e=%6.4f;e=%g;e=%e’,exp(1),,exp(1),exp(1),exp(1),exp(1))例4已知233527105ijAa,用三种方法求23sinaijijyfaaae的值。方法一:用数值变量定义函数键入A=[3*pi52;7105];f1=A.^2+sin(A).^3-exp(-A)回车得出的值为f(3)f(5)f(2)Y=f(A)=f(7)f(10)f(5)各个元素所对应的值。方法二:用字符变量定义函数键入:f12=’A.^2+sin(A).^3-exp(-A)’;A=[3*pi52;7105];f12_A=eval(f12)回车得出值方法三:用内联函数指令定义函数先定义内联函数,键入:f2=inline(‘x.^2+sin(x).^3-exp(-x)’)回车得出函数表达式再键入A=[3*pi52;7105];f2(A)例5用标识符ad代表2axc符号表达式。解键入:ad=sym(‘a*x^2+c’)回车得出例6创建符号矩阵cossinsin5axxijxbax和15.126.453d1sin439解1键入:fj=sym(‘[a/sin(x),cos(x);b-x/5,a*sin(x)]’)2键入:d=[1/35.12,6.45;sin(4),sqrt(3),9]回车得出数值矩阵键入:d2=sym(d)把数值矩阵定义为符号矩阵键入:d1=sym(‘[1/35.12,6.45;sin(4),sqrt(3),9]’)把字符串矩阵定义为符号矩阵回车得出结果。例7创建符号矩阵sin()axabxabex,并将它的第一行第一列元素换成v2c.解键入:g=sym(‘[a*sin(b*x),a+b;exp(a*x),sqrt(x)]’)g(1,1)=’v2c’或者键入g=subs(g,g(1,1),’v2c’)例8用3阶魔方矩阵代替代数表达式a^2*sin(x)中的a.解键入:symax,subs(a^2*sin(x),a,magic(3))例9若3sin15aasbb,24cos28bsba,计算s1+s2和矩阵s1与s2的矩阵算法积和数组算法积。解键入;s1=sym(‘[a/b,sin(a);b^3,5]’);s2=sym(‘[4/bcos(b);a^28]’);s1+s2回车键入:ss=s1*s2,sss=s1.*s2回车例10计算例9中的矩阵s1的逆阵和s1被s2除的结果。解键入:inv(s1)回车键入s1/s2例11对矩阵2222225621121xxxxxxxxxxxxx的各个元素进行因式分解。解:键入:k=sym(‘[x/(x^2-5*x-6),2*x/(x^2-2*x+1);(x^2+x)/(x^2+2*x+1),(x+1)/(x^2+x)]’);factor(k)回车例12将符号矩阵3(1)sin()cos()xy
本文标题:Matlab学习例题指导
链接地址:https://www.777doc.com/doc-4703709 .html