MATLAB实验指导书加程序+上机实例_第1页
MATLAB实验指导书加程序+上机实例_第2页
MATLAB实验指导书加程序+上机实例_第3页
MATLAB实验指导书加程序+上机实例_第4页
MATLAB实验指导书加程序+上机实例_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 vacM) hngbian A”_ k!f k1#f w Jw k!k! j 华东交通大学电气学院 张永贤 2006年2月 实验一 MATLAB工作环境熟悉及简单命令的执行 一、实验目的:熟悉MATLAB的工作环境,学会使用MATLAB进行一些简单的 运算。 二、实验内容:MATLAB的启动和退出,熟悉MATLAB的桌面(Desktop),包 括菜单(Menu)、工具条(Toolbar)、命令窗 r I (Command Window) 历 史命令窗口、工作空间(Workspace)等;完成一些基本的矩阵操作;学习使 用在线帮助系统。 三、实验步骤: 1、启动MATLAB,熟悉MATLAB的

2、桌面。 2、在命令窗口执行命令完成以下运算,观察workspace的变化,记录运算结 果。 (1) (365-522-70)3 (2) area=pi*A2 (3) 已知 x=3, y=4,在 MATLAB 中求 z: 。3 c (4) 将下面的矩阵赋值给变量ml,在workspace中察看ml在内存中占用的字 节数。 162313 511108 ml= 97612 414 151 执行以下命令 ml(2,3) ml( 11) ml(:, 3 ) ml(2:3,l:3) ml( l,4) + ml(2,3) + ml(3/2) + ml( 4 ,1) (5) 执行命令help abs 查看函数

3、abs的用法及用途,计算abs(3 + 4i) (6) 执行命令 x=0:6*pi; y=5*si n(x); plot(x,y) (6)运行MATLAB的演示程序,demo,以便对MATLAB有一个总体了解。 四、思考题 K以下变量名是否合法为什么 (1) x2 (2) 3col (3) _row (4) for 2、求以下变量的值,并在MATLAB中验证。 (1) a = l:2:5; (2) b = a a a* ; (3) c = a + b ( 2 ,:) 实验二MATLAB语言矩阵运算 实验目的:掌握基本的矩阵运算及常用的函数。 二.实验内容: 1 1 4 7 _1 2 3 2 4

4、-1 b = c = 0 d = 8 5 2 4 5 6 1 35_ -2 3 6 0 1、下列运算是否合法,为什么如合法,结果是多少 (1) resultl = a1 (2) result2 = a * b (3) result3 = a + b (4) result4 = b*d (5) result5 = b ; c1 * d (6) result6 = a . * b (7) result7 = a . / b (8) result8 = a . * c (9) result9 = a . b (10) resultlO = a . A2 (11) resultll = a A2 (1

5、2) resultll = 2. Aa 2、用MATLAB求下面的的方程组。 2 15 -2 3 7 9 -2 1 x + y + z = 1 x + 2y + z w1 = 8 2x - y - 3w = 3 3x + 3y+ 5z-6w = 5 1 -2 3 -2 11 5 2 13 72 915 3、已知 _2 _2 1 3 求矩阵A的秩(rank) 求矩阵A的行列式(determinant) (3)求矩阵A的逆(inverse) 求矩阵A的特征值及特征向量(eigenvalue and eigenvector) 4、关系运算与逻辑运算 已知 a=20/b=-2/c=0,d=l c =

6、r4 r2 1 2 3 4 思 (/( ( /i 1/ 10 ,二 2,?=2-,0+2-9+- + 29+21/ 求尸(用仙咖七 long 查看 y 的 /?=-10 值) 实验二程序的编辑及调试 一、实验目的:掌握MATLAB程序编辑、运行及调试方法。 二. 实验内容: 1. 启动MATLAB后,点击File|New|M-File,启动MATLAB的程序编辑及调试器 (Editor/Debugger),编辑以下程序,点击File|Save保存程序,注意文件 名最好用英文字符。点击Debug|Run运行程序,在命令窗口查看运行结 果,程序如有错误则改正。 注:数论中一个有趣的题th任意一个正

7、整数,若为偶数,则用2除之,若为奇 数,则与3相乘再加上1。重复此过程,最终得到的结果为1。如: 2 1 3 105168421 63105168421 运行下面的程序,按程序提示输入n,2,3,5,7等数来验证这一结论。 %classic 3n+lN problem from number theory while 1 n=input(Enter n,negative quits:); if nl if 佗m(m2)=0 n=n/2; else n=3*n+l; end a 二a,n; end 2、编程求满足工:1 2 1000的最小m值。 三.思考题 用对分法求解方程2ex =sinx在o

8、, 1内的解,并验证,在程序中统计岀对 分次数。 提示:先将原方程转化成= 2e_v-sinx = 0的形式。 对分法的基本思想是:一个一元方程f(x)=o,若f(xl)*f(x2)0,则在xl,x2 区间内有实数解。取该区间的中点xm=(xl+x2)/2,判定f(xl)和f(x2)二者中哪一 个与f(xm)异号,f(xl)*f(xm)0,则解存在的区间缩小为xlpcm,否则解存在 的区间缩小为xgx2。重复这样的步骤,直到区间的长度小于一个可以接受的 小数(比如le-10),则认为中点即是原方程的解。 实验四函数的编写及调试 一. 实验目的:掌握MATLAB函数的编写及调试方法。 二. 实验

9、内容: K编写一个函数,计算下面函数的值,给出标量x的值,调用该函数后,返回 y的值。 function y=myfunl(x) x0 0 x 3 sin忑 y(Q = i %, x + 6, 选择一些数据测试你编写的函数。 2.编写一个函数求向量x中元素的平均值、最大值、最小值、均方根值。 function m_x,max_x/min_x,rms_x=myfun2(x)方均根值(Root Mean Square)的计算公式为: 用下面数据测试你写的函数: (1) x=sin(0:6*pi) (2) x=rand(l,200),得到的x为200个(0, 1)之间均匀分布的随机数。 3、编写一个

10、函数,给出一个向量X = xl,X2, - Xnf生成如下范德蒙矩阵。 func廿on v二myvander(x) .疔 例如:v=myvander(2 3 4 5) 得 1111 2345 4 91625 8 27 64 125 生成一些数据测试你写的函数。 三、思考题 编写程序,用如下迭代公式求亦,a的值分别为:3, 17, 113o迭代的 终止条件为Xn+1-Xn 2x = x + a 二 xn+1 实验五MATLAB的绘图 1、在同一坐标系下绘制下面三个函数在t 0, 4 的图象。 yi =f y2 = VF y3 = 4疋一 sin(r) x0 0 x3 2、编写程序,选择合适的步距

11、,绘制下面函数在区间卜6, 6中的图象。 sin兀 y(Q = 1 %, 无 + 6, 3、用compass函数画下面相量图 ua = 1; ub = cos(-2*pi/3)+sin(-2*pi/3)*i; uc=cos(2*pi/3)+sin(2*pi/3)*i; compassftuab.uc.ua ub,ubucpiicua) 90 2 4、三维空间曲线绘制z=0:4*pi; x=cos(z); y=sin(z); plot3(“z) 5、用mesh或surf函数,绘制下面方程所表示的三维空间曲面,x和y的取值 范围设为卜3, 3o 10 10 三. 思考题 在同一坐标系下,用不同颜色

12、和线型绘制以下两个函数在t -2, 2 范圉内 的图象。力=2刖 y2 = 2e-2t 实验六MATLAB数值运算 一、实验目的:掌握MATLAB常用的数值运算函数。 二、实验内容: 1、求代数方程3x5+4x4+7/+2a-2+9x + 12 = 的5个根,并将其用星号(*) 标记在复平面图上。(用roots和plot函数)。 2、求代数方程“的5个根,并将其用星号(*)标记在复平面图上。 (用roots和plot函数)。 3、求下面函数在,4区间内的过零点。(用fzero函) /(x) = %3 一 lx1 sin(x) + 5xcos()+ X 4、 50 o 已知R=50欧姆,U=4V

13、, i.极管D正向电流与电圧的关系为: 其中: Ud为二极管正向电压 is为反向饱合电流,取 K为玻尔茨曼常数,“0-23 T为绝对温度,取300开尔文(27摄氏度) q为电子电荷*1019C 求此电路中的电流Id和二极管正向电压Ud (要求用fsolve函数求解) 5、实验数据处理:已知某压力传感器的测试数据如下表 P U 10 11 13 14 17 18 22 24 29 34 39 P为压力值,u为电压值,试用多项式u(p) = ap- +bp2 +cpd来 拟合其特性函数,求出aAd,并把拟合曲线和各个测试数据点画在同一 幅图上。 实验七MATLAB应用 1、以原点为奇对称中心的方波

14、y(wt),可以用相应频率的基波及其奇次谐波合 成。 4 yM)= 7T sin wt + sin 3wt + -sin 5wt + +sin(2w 一 352-1) n = 1,2,3,- 取的阶数越多,越接近方波,但总消除不了边缘上的尖峰,这称为吉布斯效 应。设方波频率为50Hz,时间t取0秒(f=50Hz/w=2*pi*f,h=le-5,tf=40e-3/t = O:h:tf),编写程序,画出如下用1次谐波、1,3次谐波、1,3,5,7,9次谐波, 1,3,5,.,19次谐波合成的近似方波。(产生方波的函数为:square) 2、用Simulink求解下图所示电路0100微秒内的响应。已

15、知R=6*104欧, C=1700 微法,L=6T0 享,uc(0)=15kVo 模块参数设置: Integratorl 的 Initial condition:15kV 在命令窗口为R,L,C赋值。 仿真参数设置如下: Start time:O Stop time:100e-6 Solver Type:Variable-step Solver:ode45 Max step size:le-7 Min step size:auto Initial step size:auto Relative tolerance:le-3 MATLAB实验程序 Absolute tolerance:2e-6

16、实验1 第1题. x=2*sin(85*pi/180)/(l+exp(2) . x=2 l+2i; 5; y=*log(x+sqrt(l+xA(2) y = - + + - 或 x=2 l+2i; 5; d=*log(x+sqrt(l+x*x) d = + + - 或 x=2 l+2*i; 5; y = * Iog(x+sq rt(1+xA (2) y = -+ + - . a a / g=(exp*a)-exp*a).*sin(a+/2+log(+a)/2) 结果略 t=0:; fl=t.A2; f2=t.A2-l; f3=t.A2-2*t+l; z=(t=0 for k=-10:10 y=

17、y+pow2(k); end format long y Y = +003 实验3 方法一 a=0; for i=l:20 a=a+pow2(i); if a10000 m=i; break end end m 方法二 a=0; i=l;、 while (a10000) a=a+pow2(i); i=i+l; end m=i-l; m 实验4 第1题,、 function y=myfunl(x) if x0 end 运行结果: y=myfunl(-pi/2) y = -i y=myfunl(O)y = 0 y=myfunl(2) y = 2 y=myfunl(4) y = 2 第2题 func

18、tion rn_x,max_x,min_xjms_x=myfun2(x) %求平均值一一二. 一、 sum_x=sum(x);%向量兀素求和 m,n=size(x);%最好用 n=length(x); m_x=sum_x/n; %求最大值采用逐个比较方式 if x(l)x(2) max_x=x(l); else max_x=x(2); end for k=3:n if max_xx(k) max_x=x(k); else max_x=max_x;%可省略 end end %求最小值 if x(l)x(k) min_x=x(k); else min_x=min_x;% 可省略 end end %

19、求均方根值 sum_x2=0; for k=l:n sum_x2=sum_x2+x(k).A2; rms_x=sqrt(sum_x2/n); end max_x; min_x; rms:x;%按照函数值行参顺序输出结果 运行结果: m_x/max_x/min_x,rms_x=myfun2(sin(0:6*pi) x = max_x = min_x = rms_x = m_x/max_x,min_x/rms_x=myfun2(rand(lz200) m_x = max_x = rms_x = 第3题 %生成范德蒙矩阵 %实现矩阵上下翻转 functionnder(x) vl=vander(x);

20、 v2=vl*; v=flipud(v2); 运行结果: v=myvander(2:5) V = 1 1 1 1 2 3 4 5 4 9 16 25 8 27 64 125 思考题 functio n x,n=sqrVa(a) x= for k=l:100 m=x; x=x/2+a/(2*x); if abs(x-m)=10A(-5) break end end x; n=k; s=(x-sqrt(a); 讦 s=10A(-5) disp(正确); else dispC 错误); end 运行结果: x,n=sqrt_a(3) 正确 n 二 5 x,n=sqrt_a(17) x = n 二 6 x,n=sqrt_a(113) x = 实验5 笫1题. 方法1 t=linspace(0,4*pi/200); yi=t; y2=sqrt(t); y3=4*pi*exp*t).*sin(t); plotyl/bt/gyS/r1) 方法2 t=linspace(0/4*pi/200); yi=t; y=yl,y2,y3; y2=sqrt(t); y3=4*pi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论