欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    matlab 课设设计.doc

    • 资源ID:1031379       资源大小:181.50KB        全文页数:18页
    • 资源格式: DOC        下载积分:10积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要10积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    matlab 课设设计.doc

    1、 武汉理工大学Matlab 应用课程设计1、Matlab 概述1.1 概况MATLAB是矩阵实验室(MatrixLaboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多. 当前流行的MATLAB 5.3/Simulink 3.0包括拥有数百个内部函数的主包和三十几种工具包(Toolbox).工具包又可以分为功能性工具包和学科工具包.功能工具包用来扩充MATLAB的符

    2、号计算,可视化建模仿真,文字处理及实时控制等功能.学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类. 开放性使MATLAB广受用户欢迎.除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包. 1.2 基本功能MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领

    3、域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连matlab开发工作界面接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 1.3 应用 MATLAB 产品族可以用来进行以下各种工作: 数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字图象处理技术 数字信号处理技术 通讯系统设计与仿真 财务与金融工程 MATLAB 的应用范围非常广,包括信号

    4、和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB 函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。2、试题(第二套)1 计算y1=和y2=;2 画出衰减震荡曲线及其他的包络线,t的取值范围是0,6.3. 画出所表示的三维曲面。x,y的取值范围是-9,9。4. 分析下面每条指令的功能并运行,观察执行结果。(1) X=0:0.2:2;Y=X.*exp(-X);plot(X,Y),xlabel(x), ylabel(y),title(y=x*exp(-x);(2) A=zeros(3,4)A(:)=

    5、-4:7L=abs(A)3islogical(L)X=A(L)(3) A=1:5;6:10pow2(A)(4) A=zeros(3,5)A(:)=1:15A=A*(1+i)A1=A.;B1=A;(5) A=ones(2,3)B=ones(2)C=eye(4)D=diag(C)E=repmat(C,1,3)5. 计算在x=0.1与10处的值。6. 求函数, n=100的值。7. 求1000个元素的随机数向量A中大于0.5的元素个数。8. 求线性方程组AX=b的根。9. 画出y=|1000sin(4x)|+1的y轴为对数图。10用FFT直接计算x=sin(2*pi*40*t)+2cos(2*pi*

    6、120*t)+w(t)的功率谱。3、 试题解答3.1 第一题:计算y1=和y2=;分析:直接运行即可。 y1=2*sin(0.5*pi)/(1+sqrt(6)y1 = 0.5798 y2=3*cos(0.5*pi)/(1+sqrt(7)y2 = 5.0387e-0173.2 第二题: 画出衰减震荡曲线及其他的包络线,t的取值范围是0,6. 分析:先声明t的范围,写出y、y0关于t的方程,运行程序。 t=linspace(0,6*pi,200); %设置t的范围 y=exp(-(3*t)*cos(t/5); %生成y的数据 y0=exp(-(3*t); %生成y0的数据 plot(t,y,r-)

    7、,xlabel(t轴),ylabel(y轴); %用红色实线绘制 hold on; %在当前图形上继续绘制下一个图形 plot(t,y0,b:); %用蓝色点线绘制3.3 第三题:画出所表示的三维曲面。x,y的取值范围是-9,9分析:先设置x的范围,用mesh函数绘制给定的三维曲面。结果如下:x=-9:0.3:9; %设置x的范围y=-9:0.3:9; %设置y的范围x,y=meshgrid(x,y); %生成平面网格数据z=cos(sqrt(2*(x2+y2)/sqrt(x2+y2);surf(x,y,z) %绘制该曲面3.4 第四题:分析下面每条指令的功能并运行,观察执行结果。3.4.1

    8、X=0:0.2:2;Y=X.*exp(-X);plot(X,Y),xlabel(x), ylabel(y),title(y=x*exp(-x);X=0:0.2:2; %X取值从0 到2 每隔0.2 取一个数 Y=X.*exp(-X); %Y对于X 的表达式,求出X 对应下的Y 值 plot(X,Y),xlabel(x), ylabel(y),title(y=x*exp(-x)3.4.2 A=zeros(3,4) %产生3 x 4 的全零矩阵AA = 0 0 0 0 0 0 0 0 0 0 0 0 A(:)=-4:7 %将-4 到7 依次赋值给AA = -4 -1 2 5 -3 0 3 6 -2

    9、 1 4 7 L=abs(A)3 %判断A 内各元素绝对值是否大于3,大于返回1,小于返回0,并将返回值构成与A相同行列的矩阵LL = 1 0 0 1 0 0 0 1 0 0 1 1 islogical(L) %判断矩阵L 内是否为逻辑值,是返回1,不是则返回0ans = 1 X=A(L) %将A 对应L 内为真的元素取出来,构成列向量X,即绝对值大于3的值取出X = -4 4 5 6 73.4.3 A=1:5;6:10pow2(A) %将A 内各元素幂以2 为底的结果A = 1 2 3 4 5 6 7 8 9 10ans = 2 4 8 16 32 64 128 256 512 10243.

    10、4.4 A=zeros(3,5) %产生3 x 5 的全零矩阵AA = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A(:)=1:15 %将1 到15 依次赋值给各元素A = 1 4 7 10 13 2 5 8 11 14 3 6 9 12 15 A=A*(1+i) %将A 各元素乘以(1+i),成为复数矩阵A = 1.0000 + 1.0000i 4.0000 + 4.0000i 7.0000 + 7.0000i 10.0000 +10.0000i 13.0000 +13.0000i 2.0000 + 2.0000i 5.0000 + 5.0000i 8.0000 + 8.0

    11、000i 11.0000 +11.0000i 14.0000 +14.0000i 3.0000 + 3.0000i 6.0000 + 6.0000i 9.0000 + 9.0000i 12.0000 +12.0000i 15.0000 +15.0000i A1=A. %令A1 成为A 的转置非共轭矩阵A1 = 1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i 4.0000 + 4.0000i 5.0000 + 5.0000i 6.0000 + 6.0000i 7.0000 + 7.0000i 8.0000 + 8.0000i 9.0000 +

    12、 9.0000i 10.0000 +10.0000i 11.0000 +11.0000i 12.0000 +12.0000i 13.0000 +13.0000i 14.0000 +14.0000i 15.0000 +15.0000i B1=A %令B1 成为A 的转置共轭矩阵B1 = 1.0000 - 1.0000i 2.0000 - 2.0000i 3.0000 - 3.0000i 4.0000 - 4.0000i 5.0000 - 5.0000i 6.0000 - 6.0000i 7.0000 - 7.0000i 8.0000 - 8.0000i 9.0000 - 9.0000i 10.0

    13、000 -10.0000i 11.0000 -11.0000i 12.0000 -12.0000i 13.0000 -13.0000i 14.0000 -14.0000i 15.0000 -15.0000i3.4.5 A=ones(2,3) %产生一个2 x 3 全1 矩阵AA = 1 1 1 1 1 1 B=ones(2) %产生一个行列为2 的全1 的方阵BB = 1 1 1 1 C=eye(4) %产生一个行列为4 单位方阵CC = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 D=diag(C) %将C 的主对角元素取出形成列向量DD = 1 1 1 1 E=repm

    14、at(C,1,3) %将C 看成一个元素,重复C 构成一个1 x 3 的矩阵EE = 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 13.5 第五题:计算在x=0.1与10处的值。分析:此题可以直接创建一个匿名函数进行运算,也可以利用M文件计算。 myfhd = (x)(x5+0.1*(x3)-90); %创建一个匿名函数 myfhd(0.1)ans = -89.9999 myfhd(10)ans = 1000103.6 第六题:求函数, n=100的值

    15、。分析:直接用for循环进行计算。 y=0; %设置y的初始值 for n=1:100 y=y+1/n2; end y %输出y值y =1.63503.7 第七题:求1000个元素的随机数向量A中大于0.5的元素个数。分析:用rand函数产生一个含1000个元素的的矩阵,在进行循环比较。 clear; %清除残留数据A=rand(1,1000); %随机产生1 x 1000 矩阵Atimes=0; %令次数times 为零for n=1:1:1000if A(1,n)0.5times=times+1; %循环比较,如果元素大于0.5,次数加1endendtimes %输出次数timestime

    16、s = 4883.8 第八题:求线性方程组AX=b的根。分析:此题可用左除法求解线性方程的根。运行结果如下: A=0.4156 02319 0.2024 0.2730 0.3690; 0.3206 0.3650 0.5662 0.1812 0.4631;0.5146 0.3734 0.7315 0.3575 0.6278;0.7192 0.0500 0.4226 0.6341 0.9445;0.8420 0.0739 0.8395 0.5864 0.4058; b=0.0505;0.4449;0.5959;0.7483;0.8642b = 0.0505 0.4449 0.5959 0.7483

    17、 0.8642 X=AbX = 2.4285 -0.0002 -0.2452 -1.8803 0.31523.9 第九题:画出y=|1000sin(4x)|+1的y轴为对数的图。分析:此题关键是用semillogy(x,y)函数将y坐标轴表示成对数坐标系。 x=1:0.0001:10; %设置x的范围y=abs(1000*sin(4*x)+1; %生成y的数据semilogx(x,y),xlabel(x),ylabel(log(y); %表示x坐标轴是对数坐标系grid on %给图形加上网格title(y=|1000sin(4x)|+1的y轴为对数的图) %添加标题 3.10 第十题:用FF

    18、T直接计算x=sin(2*pi*40*t)+2cos(2*pi*120*t)+w(t)的功率谱。分析:利用傅里叶变换处理。 Fs=1000; %采样频率t=0:1/Fs:1;x=sin(2*pi*40*t)+2*cos(2*pi*120*t)+rand(size(t); %产生含有噪声的序列tfft=1024; %fft点数X=fft(x,tfft); %对 x 进行快速傅里叶变换Pxx=abs(X).2; %功率谱的量度为变换后幅度的平方 m=0:round(tfft/2-1); %由于对称性,取一半f=m*Fs/tfft; %使频率变化从零开始P=10*log10(Pxx(m+1);plo

    19、t(f,P),xlabel(频率),ylabel(功率) %画出功率谱4、 心得体会 在本次的课设中我学到了很多,从开始的一无所知道现在能解决一点简单的问题,以下是我的一点心得: 1.最好找一个熟悉编程的人来辅助你的学习,这就包括很多编程的技巧问题,程序的结构设计问题,对于程序的运行效率非常有帮助。有的时候,你编出来的程序,能够运行,但是耗时太长,也就是说你的程序没有错,但是不适合实际。或者说,对于规模小的问题能够解决,但是规模大一点的问题就需要很长很长的时间,这就需要对程序的结构和算法问题进行改进 2.需要找一本matlab的函数工具词典,就像汉语词典一样,你要尽量多的熟悉matlab自带的

    20、函数,及其作用,因为matlab的自带函数特别多,基本上能够满足一般的数据和矩阵的计算,所以基本上不用你自己编函数(如vb中,大部分的函数都需要自己编)。这一点对你的程序非常有帮助,可以使你的程序简单,运行效率高,可以节省很多时间。 3.你把基本的知识看过之后,就需要找一个实际的程序来动手编一下,不要等所有的知识都学好之后再去编程,你要在编程的过程中学习,程序需要什么知识再去补充(这一条是别人教我的,很管用),编程是一点一点积累的,所以你要需做一些随手笔记什么的。 4.编程问题最头疼的不是编程序,而是调程序,所以在你的程序编完之后,一定要进行验证其正确性,你要尽量多的设想你的问题的复杂性,当然

    21、,要一步一步复杂,这样才能保证你的程序的适用性很强。 Matlab 确实是一个很强大的工具,这在我完成任务的时候逐步的认识到了,以后还有多加以利用。这次课设不仅是一个任务,它不想仅让我们学会了使用 Matlab,还让我们有了一个自主学习与和别人交流的机会。而学会的东西都是对以后的专业学习很有帮助的,相信在这个强大的工具下,让以后的专业学习会更轻松。5、参考文献1、 MATLAB 及在电子信息类课程中的应用(第 2 版) 电子工业出版社 唐向 荣等编著2、 MATLAB 实用教程(第 2 版) 电子工业出版社 高会生等编著3、 MATLAB 7.0 从入门到精通(修订版) 人民邮电出版社 刘保柱等编著4、 MATLAB 数值计算 机械工业出版社 莫勒、 喻文健等编著5、 MATLAB 2010 从入门到精通 电子工业出版社 张琨编著6、 MATLAB 教程 北京航空航天大学出版社 张志涌、杨祖樱等编著6、附表 本科生课程设计成绩评定表姓 名刘苗性 别女专业、班级电信1002班课程设计题目:Matlab 应用课程设计课程设计答辩或质疑记录:成绩评定依据:最终评定成绩(以优、良、中、及格、不及格评定) 指导教师签字: 年 月 日17


    注意事项

    本文(matlab 课设设计.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922