


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验一 MATLAB 根底知识一、实验目的1熟练掌握 Matlab 的启动与退出;2. 熟悉 Matalb 的命令窗口,常用命令和帮助系统;3. 熟悉 Matalb 的数据类型;4. 熟悉 Matlab 的根本矩阵操作,运算符和字符串处理二、实验设备1方正电脑2. MATLAB件三、实验内容1. 矩阵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写出完成以下操作的命令 :(1) 将矩阵A的第2-5行中第1 , 3, 5列元素赋给矩阵 B;(2) 删除矩阵A的第7号
2、元素;(3) 将矩阵A的每个元素加上30 ;(4) 求矩阵A的大小和维数;(5) 将矩阵A的右下角3*2矩阵构成矩阵C;(6) 输出 -5,5 范围内的所有元素; 程序: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%(1)B=A(2:5,1 3 5)%(2)A2=A;A2(7)=%(3)A3=A+30%(4)length(A)size(A)%(5)C=A(end-2:end,end-1:end)%(6)A6=A.*(A=-5 & A=5)结果 :34-11-91
3、065074-161-47-16-82-45-612-8-36-78-118-49130B =6 0 41 7 62 5 12-3 -7 -1A2 =Columns 1 through 73 6 1 2 -3 8 5Columns 8 through 14-4 -4 6 -4 -1 0 7Columns 15 through 215 -7 9 1 7 -1 -6Columns 22 through 288 1 -9 4 6 12 -1Columns 29 through 353 10 -16 -8 -8 1 0A3 =33 34 29 31 21 4036 35 30 37 34 143126
4、37293622322635244222273623382931382639313330ans =ans =12-8-1A6 =-1-4-1-4-3-1-42.设 x=-74 ,y=27o,求sin (x2y2)的值。,ta nxy程序:x=(-74/180)*pi;y=(27/180)*pi;sin( xA2+yA2)/(sqrt(ta n(abs(x+y)+pi)结果:ans =3. 当 a 取-3.0 , -2.9 , -2.8 ,,2.8 , 2.9 , 3.0 时,求 e sin(a 0.3)在各点的函 数值。程序:a=-3.0:0.1:3.0m=exp(-0.3.*a).*sin(
5、a+0.3) 结果:a =Columns 1 through 4Columns 5 through 8Columns 9 through 12Columns 13 through 16Columns 17 through 20Columns 21 through 24Columns 25 through 28Columns 33 through 36Columns 37 through 40Columns 41 through 44Columns 45 through 48Columns 49 through 52Columns 53 through 56Columns 57 through
6、60Column 61 m =Columns 1 through 4Columns 5 through 8Columns 13 through 16Columns 17 through 20Columns 21 through 24Columns 25 through 28Columns 29 through 32Columns 33 through 36Columns 37 through 40Columns 41 through 44Columns 45 through 48Columns 49 through 52Columns 57 through 60Column 613542126
7、7A 34457 ,B2874879015930求以下表达式的值:(1) A*B 和 A.*B(2) AA3 和 A.A3(3) A/B 和 BA(4) A,B和A(1,3);BA2 程序:A=3 54 2;34 -45 7;87 90 15;B=1 -2 67; 2 8 74;9 3 0;A*BA.*BAA3A.A3A/BABA,BA(1,3,:);BA2结果;ans =12943241977-407-105240259112489ans =3-10813468-360518783 270 0ans =-28917137883171333240246-259101252504-4368276
8、6938673ans =27 157464 839304 -91125 343658503 729000 3375ans =ans =ans =35421-26734-4572874879015930ans =3542879015600183-81684282726156 825iab4. 设 a=1+2i,b=-3+4i, c e6 ,求 c的值。a b程序:a=1+2*i;b=3+4*i; c=exp(pi/6)*i); c+a*b/(a+b)结果:ans =实验二MATLAB程序设计一、实验目的1 学会编写简单函数m文件,调用及调试函数m文件;2 .学会MATLA啲简单程序编写。二、实验
9、设备1. 方正电脑2. MATLAB件三、实验内容1. 从键盘输入一个 4位整数,按如下规那么加密后输出。加密规那么:每位数字都加上7然后用和除以10的余数取代该数字;然后将第 1位数与第3位数交换,第2位数与第4位 数交换。程序:a=i nput(请输入一个四位整数:);a仁 fix(a/1000); %千a2=rem(fix(a/100),10);% 百 a3=rem(fix(a/10),10) ;%十a4=rem(a,10) ;% 个%加密a1=a1+7;a2=a2+7;a3=a3+7;a4=a4+7;a仁 rem(a1,10);a2=rem(a2,10);a3=rem(a3,10);a
10、4=rem(a4,10);m=a3*1000+a4*100+a1*10+a2;if a3=0disp(输出:,0, num2str(m) elsedisp(输出:,nu m2str(m) end结果:请输入一个四位整数:1234输出:01892. 硅谷公司职工的工资计算方法如下:(1)工作时数超过120h者,超过局部加发15% 工作时数低于 60h者,扣发700元;(3)其余按每小时84元计发。试编程按输入的工号和该职工的工时数,计算应发工资。 程序:clear all;clc;a=input(请输入工号:);b=input(请输入工时:);if 60=b & b=120m=b*84;endi
11、f b120m=(b-120)*84*(1+0.15)+120*84;end的职工应发工资,num2str(m),元)disp(工号为,num2str(a),结果:请输入工号:2453请输入工时:24工号为2453的职工应发工资 1316元11113 .根据-2 -2 2 ,求612 22 32n2结果是多少?要求:分别用循环结构和向量运算使用的近似值。当n分别取100, 1000, 10000时,sum函数来实现程序(1):clc;clear all;n=input(输入 n:);v=0;for i=1: nv=v,102);endm=sum(v);disp(sqrt(6*m) %pi的近似
12、值结果:输入n:1000程序(2):clc;clear all;n=input(输入 n:);v=0;for i=1: nv=v+1/(iA2);enddisp(sqrt(6*v) %pi的近似值结果:输入n:10001114 .根据y 1 -一一,求35 2n 1(1) y3 时的最大n值;与(1)的n值对应的y值。考虑 程序:clc;clear all;y=0;n=0;while(y=3)n=n+1;y=y+1/(2* n-1);endy=y-1/(2* n-1);n=n-1;disp(y3 时的最大的 n=,num2str(n);disp(y= ,n um2str(y);结果:y3时的最
13、大的n=56,其中,a,b为常数。5 考虑一下迭代公式 Xn ib X5(1) 编写程序求迭代结果,迭代的终止条件为Xn iXn10 ,迭代初值Xo1.0,迭代次数不超过500次。b fb24a(2) 如果迭代过程收敛于r,那么r的准确值是 ,当(a,b)的值取(1,1)、(8,3)、2(10,0.1)时,分别对迭代结果和准确值进行比拟。程序:clc;clear all;a=input(请输入正数a:);b=input(请输入正数b:);n=0; %迭代次数x=1.0;% 初值xl=1.0;while (n =499)x=a/(b+x);n=n+1;h=abs(x-xl);if h=10A(-
14、5)o=1;break;endxl=x;enddisp(x=, nu m2str(x);disp( n=,n um2str( n);m=(-b+sqrt(bA2+4*a)/2结果:请输入正数a:123请输入正数b:134n=3m =实验三图形绘制一、实验目的1 .加深认识二维、三维绘图函数 plot, plot3, mesh, surf;2 .要求熟练掌握以上绘图函数的用法、简单图形标注、简单颜色设定等。、实验设备1. 方正电脑2. MATLAB件三、实验内容1 .绘制以下曲线3x y x3!程序:x=-100:0.01:100; y=x-x.A3/(3*2*1); plot(y)结果:2-2
15、1.510.50-0.5-1-1.50.511.522.54 x 100x 105x2程序:x=-10:0.01:10; y=(1/2*pi)*exp(-x/2);Plot(y);结果:250200150100501000150020002500 x2 2y264程序:t=0:0.01:10*pi; x=8*s in( t);y=(8*cos(t)/(sqrt(2);Plot(x,y)结果:Ax tsinty tcost程序:t=0:0.01:10*pi; x=t.*s in( t); y=t.*cos(t);Plot(x,y),完成以下操作:2.y 2x 0.5和%恥问。七 y si n(
16、3t)si n(t)(1)在同一坐标系下用不同的颜色和线形绘制两条曲线,给曲线添加文字说明; 程序:x1=-pi/2:0.01:pi/2; y1=2*x1-0.5;t=0:0.01:pi;x2=si n(3*t).*cos(t);y2=si n(3*t).*si n( t);plot(x1,y1,b:,x2,y2,m);text(1.0,1.5,y=2x-0.5); text(0.5,-0.5,x=si n( 3t)cos(t) text(0.5,-1,y=si n(3t)si n( t) 结果:311 12-y=2x-0.51-0x=s in( 3t)cos(t)-1y=s in( 3t)s
17、 in (t)-2-3-A11i-2-1.5-1-0.500.511.52(2)以子图形式,分别用条形图和散点图绘制两条曲线,并为各子图添加函数标题。 程序:subplot(2,2,1 3);x1=-1:0.01:1;y1=2*x1-0.5;bar(x1,y1);grid on;title(条形图,y=2x-0.5)subplot(2,2,4);t=0:0.01:pi;x2=si n(3*t).*cos(t);y2=si n(3*t).*si n( t);scatter(x2,y2);title(散点图,x=si n( 3t)cos(t),y=si n( 3t)s in (t)grid on;
18、结果:条形图,y=2x-0.5散点图,x=sin(3t)cos(t),y=sin(3t)sin(t)113. 设y J, t,在同一窗口采用子图的形式绘制条形图、阶梯图、杆图和1 e t对数坐标图。程序:t=-pi:0.01:pi;y=1./(1+exp(-t);subplot(2,2,1);bar(t,y);title(条形图,y=1/(1+exp(-t),-pi,pi);subplot(2,2,2);stairs(t,y)title(阶梯图,y=1/(1+exp(-t),-pi,pi);subplot(2,2,3);stem(t,y);title( 杆图,y=1/(1+exp(-t),-p
19、i,pi);y=1/(1+exp(-t),-pi,pi);subplot(2,2,4); loglog(t,y);title(对数坐标图,结果:条形图,y=1心+exp(-t),-pi,pi杆图,y=1/(1+exp(-t),-pi,pi阶梯图,y=1/(1+exp(-t),-pi,pi对数 坐标图,y=1/(1+exp(-t),-pi,pi11O-0.11O-0.2-5100105104. 绘制以下极坐标图(1) 5cos 4程序:theta=-10*pi:0.01:10*pi; rho=5*theta+4;polar(theta,rho);结果: r a(1 cos ), a 1,0,2程
20、序:a=1;fai=0:0.01:2*pi; r=a*(1+cos(fai); polar(fai,r) 结果:9025应用MATLAB三维曲线和图形绘制语句,绘制以下函数的图形:t/20,t/201x e cost, y esint,zt,t 0,2 。程序:t=0:0.01:2*pi;x=exp(-t/20).*cos(t);y=exp(-t/20).*s in( t);z=t;plot3(x,y,z);grid on2z3(1x)2e2 2x (y 1)x10(55、y )ex2e (x 1)2 y233 x, y3,程序:x=-3:0.01:3;y=-3:0.01:3;z=3*(1-x
21、).A2.*exp(-x.A2-(y+1).A2)-10*(x/5-x.A3-y.A5).*exp(-x.A2-y.A2)-1/3.*exp( -(x+1).A2-y.A2);plot3(x,y,z);grid on;结果:实验四 线性代数中的数值运算一、实验目的MATLAB中的区另1 通过实验能让学生加深认识冒号、逗号、分号及字母大小写在2 .能够对数值矩阵进行简单操作;3.熟悉Matlab的矩阵元素运算;4 .能够熟练掌握MATLAB的数值运算功能。二、实验设备1. 方正电脑2. MATLAB软件三、实验内容Dp, Dh以及它们的1.试产生5阶帕斯卡矩阵P和5阶希尔伯特矩阵H,且求其行列式
22、 条件数Kp, Kh,判断哪个矩阵的性能更好些?为什么?程序:P=pascal(5)H=hilb(5)Dp=det(P)Dh=det(H)Kp=cond(P)Kh=cond(H)if abs(Kp-1)0.5)/30000结果:平均值ans =标准方差ans =曰 I - T7-最大元素ans =最小元素ans =ans =2.在某处测得海洋不同深度处水温数据表5.6所示。用插值法求出水深500m 900m和 1500m处的水温oC表5.6海洋水温观测值水深m46671595014221635水温oC程序:h=466,715,950,1422,1635;t=7.04,4.28,3.40,2.5
23、2,2.13;x=500,900,1500in terp1(h,t,x,spli ne)结果:ans =3. 用5次多项式p(x)在区间1,101区间内逼近函数 lg(x),并绘制lg(x)和p(x)在1,101区间的函数曲线。程序:次拟合多项式的系数计算多项式在1: 0.1 : 101上的值 绘制lgx和拟合多项式曲线,:虚线表示lgx, -实现x=1:0.1:101; y=log10(x);p=polyfit(x,y,5) %5 yi=polyval(p,x); % plot(x,y,:,x,yi,-) % 表示多项式输出结果:P(x) x3 2x2 7, F2(x) x 2, F3(x)
24、 x3 5x 1,试进行以下操作。1求 P(x) P1(x)P2(x) P3(x) 。2求 P(x) 的根。143 3设 A21l、【/【、【7r匚?7ra rVi /f=T. 、J , rH vnf 日P-4rv 、, rVi /古、【/ 、丨斤匚5 ,当以矩阵 A 的每一元素为自变量时,求P( x) 的值;当以矩056阵 A 为自变量时, 程序: p1=1 2 0 7; p2=0 0 1 -2; p3=1 0 5 1;求P(x)的值。p=conv(p1,p2)+zeros(1,length(conv(p1,p2)-length(p3),p3 x=roots(p)a=-1 4 3;2 1 5
25、;0 5 6;y1=polyval(p,a)结果:p =0 0 1 1 -4 12 -13x =-3.46561.2400y1 =-292919519-3697-13 697 1427y2 =3912084327350226934207720377558921求 3x-sin x+1=0 在 x0=0 附近的根。 程序:function fx=funx(x)fx=3*x-sin(x)+1;% 函数文件名一定要以函数名命名 调用 fzero 求根z=fzero(funx,0.0) 输出结果: z =2yy1,初值 x0=3, y0=3程序: 建立函数文件 myfun .m function q=
26、myfun(p) x1=p(1); x2=p(2);q(1)=x1A2+x2A2-9;q(2)=x1+x2-1; 调用 fsolve 求根 x=fsolve(myfun,3,0,optimset(Display,off) 输出结果:x =实验六 数值微分与常微分方程求解 、实验目的1 通过实验能让学生加深认识数值微积分计算方法; 2能够对常微分方程求数值解;3 .能够熟练掌握MATLAB的数值微积分运算功能。、实验设备1 .方正电脑2. MATLAB软件三、实验内容1 求函数在指定点的数值导数。f(x)x2 x3 x12x3x2,x 1,2,3026x程序:syms x;a=x,xA2,xA3
27、;1,2*x,3*xA2;0,2,6*x; f=det(a);f1=diff(f)f1_仁 subs(f1,x,1)f1_2=subs(f1,x,3)f1_3=subs(f1,x,2)结果:f1_1 =6f1_2 =54f1_3 =241y x1010x logx10,求 y程序:syms x;y=xA10+10Ax+1/(log10(x);y1=diff(y)结果:y1 =10*xA9+10Ax*log(10)-1/log(x)A2*log(10)/x(2) y=ln(1 + x),求 y|x 1程序:syms x;y=log(1+x);y2=diff(y,x,2);y2_1= subs(y
28、2,x,1)结果:y2_1 =ix2 2X3dx1fun ctio n f=fe(x) %f=xA2*sqrt(2*xA2+3)错 f=x.A2.*sqrt(2.*(x.A2)+3);ans =2空一dx4 sin xfun ctio n f=fe(x) f=x./(si n(x).A2; quad(fe,pi/4,pi/3)ans =3o o cos(x y)dxdyfun ctio n f=fe(x,y) f=abs(cos(x+y); dblquad(fe,O,pi,O,pi)ans =y 22 xydxdy程序:syms x t y;f=in t(x*y,x,yA2,y+2);f=in
29、 t(f,y,-1,2结果:45/81.5y=f(x)在点的值如表 6.2所示,求f(x)dx。0.3表6.2 f(x)的值xyx=0.3 0.5 0.7 0.9 1.1 1.3 1.5;y=0.3895 0.6598 0.9147 1.1611 1.3971 1.6212 1.8325;trapz(x,y)ans =5.求微分方程的数值解。门 y (1.2 sin 10t)y 0,t 0,tf5,y(t) 1fun ctio n f=fe(x,y)f=-(1.2+si n(10*x)*y;x0=0;xf=5;y0=1;x,y=ode23(fe,x0, xf,y0)0,tf 5, y(t)0,
30、 y(t) 12(1 t2)y 2ty 3y 2,t。function f=fe(t,x)f=x(2);(2-2*t*x(2)-3*x(1)/(1+t:A2); x0=0;xf=5;y0=0;1;x,y=ode45(fe,x0, xf,y0)y 5fs2t1)2 y13 sint ycost,t。 0,tf5,y(t。)1,y(t。) 0,y(t) 2function f=fe(t,x)f=x(2);x(3);cos(t)+5*cos(2*t)/(t+1)A2)*x (3)-x (2) -x(1)/(3+si n( t); x0=0;xf=5;y0=0;1;2;x,y=ode45(fe,x0,
31、 xf,y0) 6.求微分方程的数值解,并绘制解的曲线。Y1Y2 Y3yY1Y3Y310-51Y1Y3Y1(0)0, V2(0) 13(0)1function f=fe(t,x)f=x (2) *x (3);-1*x(1)*x (3) ;-0.51*x(1)*x(3); x0=0;xf=80;y0=0;1;1;x,y=ode45(fe,x0, xf,y0) plot3(y(:,1),y(:,2),y(:,3);grid on;实验七 数值微分与常微分方程求解一、实验目的1让学生了解符号运算和数值运算的区别;2熟悉 Matlab 符号对象定义方法 2通过实验掌握如何创立、修改符号矩阵及加深认识符
32、号运算功能; 4初步认识 MATLAB 符号运算功能在高等数学中的应用。二、实验设备1方正电脑2. MATLAB件三、实验内容1 123Axyz321求矩阵的秩、逆矩阵和行列式的值。a=sym(1 2 3;x y z;3 2 1); n=rank(a) inva=inv(a) deta=det(a) n = inva =1/(-2*y+z+x),-2/(-2*y+z+x),1/(-2*y+z+x),1/4*(y-2*z)/(-2*y+z+x),-1/4*(-2*z+3*y)/(-2*y+z+x)-1/4*(x-3*z)/(-2*y+z+x),1/4*(-z+3*x)/(-2*y+z+x)1/4
33、*(2*x-3*y)/(-2*y+z+x),-1/4*(-y+2*x)/(-2*y+z+x)deta =-8*y+4*z+4*x1y x . x x,求 y和 ysyms x;f1=sqrt(x+sqrt(x+sqrt(x); diff(f1)diff(f1,x,2)ans =1/2/(x+(x+xA(1/2)A(1/2)A(1/2)*(1 + 1/2/(x+xA(1/2)A(1/2)*(1 + 1/2/xA(1/2)ans =-1/4/(x+(x+xA(1/2)A(1/2)A(3/2)*(1 + 1/2/(x+xA(1/2)A(1/2)*(1+1/2/xA(1/2)A 2+1/2/(x+(x
34、+xA(1/2)A(1/2)A(1/2)*(-1/4/(x+xA(1/2)A(3/2)*(1 + 1/2/xA(1/2)A2-1/8 /(x+xA(1/2)A(1/2)/xA(3/2)(2) f(x,y)sin( x2y)ey,求d2fdxdy程序:syms x y;f=s in( xA2*y)*exp(-xA2-y);df=diff(diff(f,x),y)结果:df = -2*si n( xA2*y)*xA3*y*exp(-xA2-y)+2*cos(xA2*y)*x*exp(-xA2-y)-2*cos(xA2*y)*x*y*exp(-xA2-y)-2*cos(xA2*y)*xA3*exp(
35、-xA2-y)+2*si n( xA2*y)*x*exp(-xA2-y)2t1X4 1dXcost2x2 1 (2x2 3x 1)2dxsyms x;f1=sym(1/(xA4+1); in t(f1)ans =1/8*2A(1/2)*log(xA2+x*2A(1/2)+1)/(xA2-x*2A(1/2)+1)+1/4*2A(1/2)*ata n( x*2A( 1/2)+1)+1/4*2A(1/2)*ata n( x*2A(1/2)-1)f2=sym(-2*xA2+1)/(2*xA2-3*x+1)A2);in t(f2,sym(exp(2*t),sym(cos(t)ans =-(-2*cos(
36、t)*exp(2*t)A2-cos(t)+2*exp(2*t)*cos(t)A2+exp(2*t)/(2*cos(t)-1)/(cos(t)-1)/(2*exp(2*t)-1)/(exp(2*t)-1)1o(2 n 1)(2x 1)2n 1的和函数,并求m(2n 1)(2x 1)2n 1之和。syms n x;symsum(2/(2* n+2)*(2*x+1)A(2* n+1), n,1, inf)ans =sum(2/(2* n+2)*(2*x+1)A(2* n+1),n = 1 . i nf) syms n x;symsum(2/(2* n+2)*(2*x+1)A(2* n+1), n,1
37、,5)ans =2/(8*x+4)A3+2/(12*x+6)A5+2/(16*x+8)A7+2/(20*x+10)A9+2/(24*x+12)A11x x0的泰勒级数展开式1yxxe e,X0,n55x2y e sin(3x ), x0asyms x;taylor(exp(x)+exp(-x)/2,5,0)ans =1 + 1/2*xA2+1/24*xA4syms x a;taylor(exp(-5*x)*si n(3*x+pi/3),1,a)ans =exp(-5*a)*si n(3*a+1/3*pi)3x2y2 10001x ax 10 23x 5y 80x=solve(sym(xA3+a*x+1=0)x =1/6*(-108+12*(12*aA3+81)A(1/2)A(1/3)-2*a/(-108+12*(12*aA3+81)A(1/2)A(1/3)-1/12*(-108+12*(12*aA3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 触电安全教育托班教案
- 合作社农业生产合作运营协议
- 行政管理经济法重点体系试题及答案
- 2025年海口市琼山区九年级中考语文一模试卷附答案解析
- 目标明确2025年中级经济师试题及答案
- 行政管理公共关系学职业发展试题及答案
- 项目经理安全b证考试试题及答案
- 职高本科考试试题及答案
- 节约粮食主题班会教育
- 班级工作计划整体资源
- 高效课堂新授课评价量化表
- 信和SDS2MS使用说明书
- 维修手册震旦218现场
- 画法几何与阴影透视复习题(DOC)
- 螺旋密封的设计及在流体机械中的应用
- 青岛市失业人员登记表
- 烧结机工程施工设计方案
- 《中国好声音》全国校园海选招商方案(冠名)
- 广西安全文明施工费使用管理细则桂建质新版
- 存货质押贷款业务管理规定
- 公路路面基层施工技术规范JTJ034-93条文说明
评论
0/150
提交评论