MATLAB-第六次实验_第1页
MATLAB-第六次实验_第2页
MATLAB-第六次实验_第3页
MATLAB-第六次实验_第4页
MATLAB-第六次实验_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、MATLAB 第十章第十章 MATLAB综合应综合应用用MATLAB基础基础在工程计算中的应用(在工程计算中的应用(P274,例例10-1)在机械工程设计中的应用(在机械工程设计中的应用(P276,例例10-4)在产品质量检验中的应用(在产品质量检验中的应用(P282,例例10-9)在工程电路计算与分析中的应用(在工程电路计算与分析中的应用(P285,例例10-12)2第十章第十章 MATLAB工程基础的应用工程基础的应用应用领域应用领域MATLAB基础基础3 例例 对对n=1,2,10,求求xn= 的值。的值。10sin n 编写编写M文件文件 for1.m如下:如下: for n=1:10

2、 x(n)=sin(n*pi/10); end x 运行即可得结果。运行即可得结果。 for循环应注意:循环应注意: for循环内不能对循环变量重新赋值;循环内不能对循环变量重新赋值; for循环内接受任何有效的循环内接受任何有效的MATLAB数组;数组; for循环可按需要嵌套;为提高运算速度,能用其它方法解决时,尽量不用循环可按需要嵌套;为提高运算速度,能用其它方法解决时,尽量不用for循环,必须循环,必须要用要用for循环时应预先分配数组循环时应预先分配数组(预先分配内存预先分配内存)。MATLAB基础基础Matlab 符号运算举例4 solve(a*x2+b*x+c=0) x=sym(

3、x); diff(cos(x)2) syms a b x; int(x2,a,b)u 求一元二次方程求一元二次方程 ax2 + bx + c = 0 的根的根 u 求的根求的根 f (x) = (cos x)2 的一次导数的一次导数u 计算计算 f (x) = x2 在区间在区间 a, b 上的定积分上的定积分MATLAB基础基础55 例例 设银行年利率为设银行年利率为11.25%。将。将10000元钱存入银行,问多长时间会连本带利翻一番?元钱存入银行,问多长时间会连本带利翻一番? 编写编写M文件文件 while1.m如下:如下: money=10000; years=0; while mon

4、ey syms x h n; L=limit(log(x+h)-log(x)/h,h,0) M=limit(1-x/n)n,n,inf)MATLAB基础基础计算积分7int(f,v,a,b): 计算定积分计算定积分int(f,a,b): 计算关于计算关于默认变量默认变量的定积分的定积分int(f,v): 计算不定积分计算不定积分int(f): 计算关于计算关于默认变量默认变量的不定积分的不定积分 syms x; f=(x2+1)/(x2-2*x+2)2; I=int(f,x) K=int(exp(-x2),x,0,inf)( )baf v dv ( )f v dv 例:计算 和2221(22)

5、xIdxxx 20 xKedx MATLAB基础基础符号求和8 syms n; f=1/n2; S=symsum(f,n,1,inf) S100=symsum(f,n,1,100)symsum(f,v,a,b): 求和求和symsum(f,a,b): 关于关于默认变量默认变量求和求和( )bv af v 例:计算级数例:计算级数 及其前及其前100项的部分和项的部分和211nSn 例:计算函数级数例:计算函数级数21nxSn syms n x; f=x/n2; S=symsum(f,n,1,inf)MATLAB基础基础微分方程求解微分方程求解9q dsolvey=dsolve(eq1,eq2,

6、 . ,cond1,cond2, . ,v)其中其中 y 为输出的解,为输出的解, eq1、eq2、. . . 为微分方程,为微分方程,cond1、cond2、.为初值条件,为初值条件, v 为自变量为自变量例例 1:求微分方程求微分方程 的通解的通解22xdyxyxedx y=dsolve(Dy+2*x*y=x*exp(-x2),x)MATLAB基础基础微分方程求解微分方程求解10例例 :求微分方程求微分方程 满足初值条件满足初值条件 的特解,并画出解函数的图形。的特解,并画出解函数的图形。0 xxyye y=dsolve(x*Dy+y-exp(x)=0, . y(1)=2*exp(1),

7、x) ezplot(y);12( )ye MATLAB基础基础例:例:求某目标函数求某目标函数: 的最的最值值fx=(x)x.4+3*x.3+5*x.2+10;x,fval=fminbnd(fx,-100,100)102.*53.*34.)()(xxxxtfMATLAB基础基础12极坐标、柱坐标和球坐标系下绘制图形极坐标、柱坐标和球坐标系下绘制图形 ploar是直接在极坐标系下绘图的命令调用格式为:是直接在极坐标系下绘图的命令调用格式为: ploar(THETA, RHO,S)其中其中 S 是字符串,用来控制图形的线型。是字符串,用来控制图形的线型。绘制半径为绘制半径为 2 的渐开线。的渐开线

8、。 rhe=2; theta=0:pi/20:4*pi; rho=rhe+theta*rhe; polar(theta,rho,r) MATLAB基础基础13用用 subplot函数函数把两种不同的图形综合在一个图形窗口中。把两种不同的图形综合在一个图形窗口中。 subplot(2,2,1) t=0.1:0.1:2*pi; y=sin(t); semilogx(t,y) grid on subplot(2,2,2) t=0:0.1:4*pi; y=sin(t); plot(t,y)subplot(2,2,3) x=1:0.01:5; y=exp(x); plotyy(x,y,x,y,semil

9、ogx,plot) subplot(2,2,4) x=1:0.1:10; y=sqrt(x); plot(x,y,:rd) 二维工程曲线图形绘制二维工程曲线图形绘制MATLAB基础基础14用函数用函数 pie 和和 pie3 绘制饼图。绘制饼图。x=200,360,120,400,320; subplot(2,2,1),pie(x,0 0 0 1 0) subplot(2,2,2),pie3(x,0 0 0 1 0) subplot(2,2,3),pie(x(2:5) subplot(2,2,4), x=0.1,0.12,0.21,0.34,0.11;pie3(x ,A,B,C,D,E)三维图

10、形绘制与复数的图形绘制三维图形绘制与复数的图形绘制MATLAB基础基础15x、y、z 是向量时,是向量时,plot3 命令的使用命令的使用t=0:0.1:8*pi; plot3(sin(t),cos(t),t)title(绘制螺旋线) %用命令用命令 title 对图形主题进行标注对图形主题进行标注 xlabel(sin(t),FontWeight,bold,FontAngle,italic) ylabel(cos(t),FontWeight,bold,FontAngle,italic) zlabel(t,FontWeight,bold,FontAngle,italic) %命令命令 zlab

11、el 用来指定用来指定 z 轴的数据名称轴的数据名称 grid onx、y、z 都是矩阵时,都是矩阵时,plot3 命令的使用命令的使用X,Y=meshgrid(-pi:0.1:pi);Z=sin(X)+cos(Y); plot3(X,Y,Z) 三维图形绘制与复数的图形绘制三维图形绘制与复数的图形绘制MATLAB基础基础g.绘制三维圆柱曲面命令绘制三维圆柱曲面命令cylinder cylinder命令中,柱面的轴线定义为 z 轴,只要给出母线的描述就可完成一个柱面。 调用格式为: X,Y,Z = cylinder(R,N);X,Y,Z = cylinder(R):缺省值 N=20; X,Y,Z

12、 = cylinder:缺省值 N=20,R=1,1。 R:是一描述柱面母线的向量;N:是旋转柱面上的分割线条数;X,Y,Z :是返回的x,y,z坐标向量。 绘制一个柱面。绘制一个柱面。 t=pi:0.01:3*pi; r=sin(t)+t; cylinder(r,30) shading interp5.4 三维图形绘制与复数的图形绘制三维图形绘制与复数的图形绘制MATLAB基础基础17球面的表达球面的表达spheresphere 调用格式为:调用格式为: X,Y,Z=sphere(N)X,Y,Z=sphere(N):产生一个(产生一个( N+1N+1)()( N+1 N+1)的矩阵,然后用函

13、数的矩阵,然后用函数 surf surf 命令绘命令绘制一个制一个单位的球面,单位的球面,N N 为设置分割线的条数;为设置分割线的条数; X,Y,Z = sphereX,Y,Z = sphere:缺省值缺省值 N = 20N = 20。画一个球面。画一个球面。 X,Y,Z=sphere; surf(X,Y,Z)MATLAB基础基础【例】示波器应用示例。Simulink仿真模型如左图所示,示波器输入为3(Y轴个数为3)。右图为该示波器显示的三路输入信号的波形. 模块库和系统仿真模块库和系统仿真MATLAB基础基础 :符号函数符号函数。 该模块的输出为输入信号的符号。下图为对正弦信号经符号运算后

14、的波形。模块库和系统仿真模块库和系统仿真MATLAB基础基础【例】积分分离式PID控制器。这种PID控制器可以让控制器中的积分项在系统响应进入稳态时投入运行,以提高稳态精度;而在系统响应处于瞬态过程时,将积分项断开以改善系统动态响应质量。积分分离式PID控制器建立如图所示: 使能模块的控制信号为delta与abs(e)的差值。delta为一很小的正数,当偏差e的绝对值小于delta时,控制器的积分项才投入使用,从而实现了控制器中的积分项的分离控制。封装子系统封装子系统MATLAB基础基础例:例: 使用3个单选钮控制静态文本框的背景颜色。function radiobutton1_Callbac

15、k(hObject, eventdata, handles)set(handles.text1,BackGroundColor,r)function radiobutton2_Callback(hObject, eventdata, handles)set(handles.text1,BackGroundColor,g)function radiobutton3_Callback(hObject, eventdata, handles)set(handles.text1,BackGroundColor,b)GUI常用组件及举例常用组件及举例MATLAB基础基础打开该GUI的 m 文件ex11.

16、m,在函数pushbutton1_Callback 与 pushbutton2_Callback中加入代码,如下所示:function pushbutton1_Callback(hObject, eventdata, handles)s1=str2double(get(handles.edit1,String)s2=str2double(get(handles.edit2,String)set(handles.text1,String,s1+s2);function pushbutton2_Callback(hObject, eventdata, handles)s1=str2double(g

17、et(handles.edit1,String)s2=str2double(get(handles.edit2,String)set(handles.text1,String,s1-s2);GUI常用组件及举例常用组件及举例MATLAB基础基础在输入信号x(t)=1(即单位阶跃信号),要求建立M文件,画出输出信号y(t)(即单位阶跃响应)的图象,MATLAB程序如下:G=tf(100,1,10,100); %得到传递函数G(S)t=0:0.05:3; %时间t设在03秒间,运算间隔0.05秒y=step(G,t); %得到单位阶跃响应y(t)plot(t,y,-k); %绘制出y(t) 图象xlabel(t); %横坐标轴标号为tylabel(y(t); %纵坐标轴标号为y(t)gr

温馨提示

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

评论

0/150

提交评论