收藏 分销(赏)

简单的matlab程序.doc

上传人:精*** 文档编号:2269385 上传时间:2024-05-24 格式:DOC 页数:21 大小:372.04KB 下载积分:10 金币
下载 相关 举报
简单的matlab程序.doc_第1页
第1页 / 共21页
简单的matlab程序.doc_第2页
第2页 / 共21页


点击查看更多>>
资源描述
实 验 报 告 (2010学年第一学期) 课 程 名 称 Matlab 教 学 院 (部) 工学院 任课教师及职称 许芹 专 业、班 级 电子信息工程 学 号 1104080129 姓 名 赵超 实验一 Matlab基础入门 四:实例练习 1, 设两个复数a=2+3i,b=4+5i,计算a+b,a-b,a*b,a/b function one_1(a,b) a1=a+b a2=a—b a3=a*b a4=a/b >> a=complex(2,3); >> b=complex(4,5); >> one_1(a,b) a1 = 6.0000 + 8.0000i a2 = -2.0000 - 2.0000i a3 = —7。0000 +22。0000i a4 = 0.5610 + 0。0488i 2,计算下列函数的结果,其中x=—3.5〬,y=8〬, F= function one_2(x,y) x=x*pi/180 y=y*pi/180 f=(sin(abs(x)+abs(y)))/(sqrt(cos(abs(x+y)))) 〉〉 one_2(—3.5,8) x = —0。0611 y = 0.1396 f = 0。1997 3。我国人口按2000年第五次人口普查的结果为12。9533亿,如果人口增长率为1.07%,求公元2010年的人口数。 function one_3(n) a=12.9533 y=a*(1+0。00107)^(n—2000) 〉〉one_3(2010) a = 12。9533 y = 13.0926 4,求解ax2+bx+c=0方程的根,其中a=1,b=2,c=3 function one_4(a,b,c) p1=[a,b,c] roots(p1) 〉> one_4(1,2,3) p1 = 1 2 3 ans = -1。0000 + 1.4142i -1。0000 - 1.4142i 5,已知三角形三边a=8.5,b=14。6。c=18.4,求三角形面积 function one_5(a,b,c) s=(a+b+c)/2; area=sqrt(s*(s-a)*(s—b)*(s-c)) 〉> one_5(8。5,14。6,18.4) area = 60.6106 实验二 Matlab 符号运算 2, 微积分 1) 求极限: , , function two_1 syms x limit(1/x,x,0) limit(1/x,x,0,’left’) limit(1/x,x,0,'right’) 〉> two_1 ans =NaN ans =—Inf ans =Inf 2) 微分:f(x)=ax2+bx+c 分别以x,a作为自变量求f(x)的一次和二次微分 function two_2 syms a b c x f=a*x^2+b*x+c diff(f,x,1) diff(f,x,2) diff(f,a,1) diff(f,a,2) 〉> two_2 f =a*x^2+b*x+c ans =2*a*x+b ans =2*a ans =x^2 ans =0 3)积分:f(x)=ax2+bx+c,分别以x,a作为自变量求f(x)的积分 function two_3 syms a b c x f=a*x^2+b*x+c int(f,x) int(f,a) 〉> two_3 f =a*x^2+b*x+c ans =1/3*a*x^3+1/2*b*x^2+c*x ans =1/2*a^2*x^2+b*x*a+c*a 4)级数:求级数 求sin(x)的前十项展开式 function two_4(n) syms x y=1/x; symsum(y,x,1,n) y1=sin(x); taylor(y1,10,1) >> two_4(100) Ans=14466636279520351160221518043104131447711/2788815009188499086581352357412492142272 ans =sin(1)+cos(1)*(x-1)-1/2*sin(1)*(x—1)^2—1/6*cos(1)*(x—1)^3+1/24*sin(1)*(x-1)^4+1/120*cos(1)*(x—1)^5—1/720*sin(1)*(x-1)^6-1/5040*cos(1)*(x-1)^7+1/40320*sin(1)*(x-1)^8+1/362880*cos(1)*(x-1)^9 3) 方程求解 (1)代数方程: 分别以x,a为变量求方程f(x)=ax2+bx+c 的根 求方程的解: function two_5 syms a b c x y z solve('a*x^2+b*x+c=0','x') solve(’a*x^2+b*x+c=0’,’a') a1=[1 1 1 ;1 -1 1 ;2 -1 —1 ]; b=[10 0 —4]'; inv(a1)*b >〉 two_5 ans = 1/2/a*(—b+(b^2—4*c*a)^(1/2)) 1/2/a*(-b—(b^2—4*c*a)^(1/2)) ans =—(b*x+c)/x^2 ans = 2.0000 5。0000 3.0000 (2)常微分方程 求微分方程y’=5,初始条件y(0)=1的解 求二阶微分方程y’'=1+y’,初始条件Dy(0)=0的解 function two_6 syms y dsolve('Dy=5’,’y(0)=1') dsolve('D2y=1+Dy’,’Dy(0)=0') >〉 two_6 ans =5*t+1 ans =exp(t)—t+C2 (4) 符号积分变换 以f(x)=a*x2+bx+c 为例,求下列变换 傅里叶变换及其反变换 正变换:fourier(f,u,v) 反变换:ifourier(f,u,v) 拉普拉斯变换及其反变换 正变换:laplace(f,w,z) 反变换:ilaplace(f,w,z) Z变换及其反变换 正变换:ztrans(f,w,z) 反变换:iztrans(f,w,z) clear function two_7 syms a b c x u v w z f=a*x^2+b*x+c; f1=fourier(f,u,v) f2=ifourier(f1,u,v) f3=laplace(f,w,z) f4=ilaplace(f3,w,z) f5=ztrans(f,w,z) f6=ztrans(f5,w,z) 〉> two_7 f1 =2*(a*x^2+b*x+c)*pi*dirac(v) f2 =2*(a*x^2+b*x+c)*pi*dirac(v)^2 f3 =(a*x^2+b*x+c)/z f4 =(a*x^2+b*x+c)/z*dirac(z) f5=(a*x^2+b*x+c)*z/(z—1) f6 =(a*x^2+b*x+c)*z^2/(z—1)^2 三.实例练习 1) 求极限)x , function two_8 syms x a f1=((x+a)/(x—a))^x; f2=(tan(x))^(1/log(x)); limit(f1,x,inf) limit(f2,x,0,’right’) >〉 two_8 ans =exp(2*a) ans =exp(1) 2) 已知f(t)=,求f’(t) function two_9 syms x t f1=(1+1/x)^(2*t*x); f=limit(f1,x,inf) f2=diff(f,t,1) 〉> two_9 f =exp(2*t) f2 =2*exp(2*t 3) 求积分:dx function two_10 syms x f=sqrt(x)/(1+x)^2; int(f,x,0,inf) 〉> two_10 ans =1/2*pi 4) 求一阶微分方程y’+ytanx=cosx的通解 function two_11 syms x dsolve(’Dy+y*tan(x)=cos(x)') 〉〉 two_11 ans =exp(—tan(x)*t)*cos(x)^2/sin(x)*exp(sin(x)/cos(x)*t)+exp(-tan(x)*t)*C1 实验三 Matlab 数值运算 1 矩阵的构造 利用不同的方法构造一下矩阵 A,B A=[1,2,3,4;5,6,7,8;9,10,11,12;13,14,15,16] B=[1,5,9,13;2,6,19,14;3,7,11,15;4,8,12,16] 2矩阵的运算 1) 加减运算:计算C=A+B,D=A—B,E=A+3 2) 乘法运算:计算F=A*B ,G=A*3 3) 除法运算:计算A/B,A\B 4) 乘方运算:计算A的自乘P次,其中P=1,2,3 5) 矩阵转置:A‘ 6) 求逆矩阵:H=【1 2 0;2 5 —1;4 10 —1】,x=inv(H) 7) 求特征值:eig(H) 8) 求特征多项式: 9) 求线性方程组 function three_1 A=[1,2,3,4;5,6,7,8;9,10,11,12;13,14,15,16]; B=[1,5,9,13;2,6,19,14;3,7,11,15;4,8,12,16]; C=A+B D=A—B E=A+3 F=A*B G=A*3 Y=A^2 A’ H=[1 2 0; 2 5 -1; 4 10 —1 ]; eig(H) poly(H) det(H) a=[2 1 -3;3 -2 2; 5 —3 —1]; b=[5 5 16]'; x=inv(a)*b >> three_1 C = 2 7 12 17 7 12 26 22 12 17 22 27 17 22 27 32 D = 0 -3 —6 -9 3 0 -12 —6 6 3 0 -3 9 6 3 0 E = 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 F = 30 70 128 150 70 174 332 382 110 278 536 614 150 382 740 846 G = 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 Y = 90 100 110 120 202 228 254 280 314 356 398 440 426 484 542 600 ans = 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16 ans = 3。7321 0。2679 1.0000 ans = 1。0000 -5.0000 5.0000 -1.0000 ans = 1 x = 1.0000 -3。0000 —2。0000 4多项式 2) 多项式四则运算:求一下两个多项式的和,积,商 a(x)=5x4+4x3+3x2+2x+1 b(x)=3x2+1 function three_2 a=[5 4 3 2 1]; b=[3 0 1 ]; B=conv(a,b) [p,r]=deconv(a,b) 〉〉 three_2 B =15 12 14 10 6 2 1 p = 1.6667 1.3333 0.4444 r = 0 0 0 0。6667 0。5556 3)多项式微分:求多项式p(x)=2x4—6x3+3x2+7 4)求根:求p(x)=2x4—6x3+3x2+7 5)求值:当X=1时,求多项式p(x)=2x4-6x3+3x2+7的值 function three_3 p=[2 —6 3 0 7]; p1=polyder(p) p2=roots(p) p3=polyval(p,1) >〉 three_3 p1 = 8 -18 6 0 p2 = 1.9322 + 0。4714i 1.9322 - 0.4714i —0.4322 + 0。8355i —0.4322 - 0。8355i p3 =6 三 实例练习 1) 设矩阵A和B满足AB=A+2B,已知A=[4,2,3;1,1,0;—1,2,3] 求B 2) 将表达式(x-4)(x+5)(x2—6x+9)展开为多项式,并求其对应的一元N次方程的根 3) 已知一元四次方程所对应的四个根为—5 4 3 3 ,求这个方程所对应的表达式原型 function three_4 A=[4 2 3;1 1 0;-1 2 3 ]; B=inv(A—2)*A p1=[1 -4]; p2=[1 5]; p3=[1 —6 9]; p=conv(p1,p2); p=conv(p,p3) r=roots(p) p4=poly([-5 4 3 3 ]) >> three_4 B = 1。0000 0。0000 0。0000 —6.0000 —5。0000 -6。0000 2。0000 2。0000 3.0000 p = 1 -5 —17 129 —180 r = -5.0000 4。0000 3。0000 3。0000 p4 = 1 —5 -17 129 -180 实验四 Matlab 图形绘制 绘出(-3,6)区间上曲线的波形 Y=f(x)= 〉> x=linspace(-3,100,0); y=x; plot(x,y) x=linspace(—3。6,0,100); y=x; plot(x,y) hold on x=linspace(0,pi,100); y=sin(x.*2); plot(x,y) hold on x=linspace(pi,6,100); y=(x—pi)。^2; plot(x,y) 方法二: function four_1_1() n=1; for x=-3。6:0.1:6; if x<=0 y(n)=x elseif (0<x)&(x<pi) y(n)=sin(2*x) else y(n)=(x—pi).^2 end n=n+1; end x=-3。6:0。1:6; plot(x,y) title('y=x的图像') xlabel('x'); ylabel(’y’); 2 用MATLAB语言绘出[—2pi,2pi]区间内sinx cosx 曲线,数据点间隔0。1弧度。要求分别用上下两个子图分别绘制两个图形,sin x 用红色、实线cosx用蓝色、虚线及横坐标进行标注 function four_2() x=-2*pi:0.1:2*pi; subplot(2,1,1) y1=sin(x); plot(x,y1,'r’) title('y=sinx的图像’) xlabel(’x’) ylabel(’y’) subplot(2,1,2) y2=cos(x); plot(x,y2) title('y=cosx的图像') xlabel(’x') ylabel(’y’) 实验五 Matlab 语言程序设计 三 实例练习 1 求1~100的和 function y=five1(n) y=0; for m=1:n y=y+m; end y=y 〉〉 five1(100) y = 5050 ans= 5050 2) 求N的阶乘 function y=five2(n) y=1; for m=1:n y=y*m; end y=y 〉> five2(10) y = 3628800 ans = 3628800 2)给出学生百分制成绩要求转成五级制 function y=five3(n) a=fix(n/10) switch a case {9,10} y='优’ case 8 y=’良' case 7 y='中' case 6 y=’及格' otherwise y='不及格’ end 实验六月SUMULINK 系统仿真 假定从实际自然界(力学、电学、生态学)或社会中,抽象出初态状态为0的二阶微分方程 X’’+0.2x’+0。4x=0.2U(t), U(t)是单位阶跃函数
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服