Matlab程序单步调试方法及样例分析.doc_第1页
Matlab程序单步调试方法及样例分析.doc_第2页
Matlab程序单步调试方法及样例分析.doc_第3页
Matlab程序单步调试方法及样例分析.doc_第4页
Matlab程序单步调试方法及样例分析.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

Matlab程序单步调试方法及样例分析 王若楠,田野,马玉峰,刘立士 (沈阳理工大学信息科学与工程学院,辽宁沈阳110159) 摘要:针对单步调试法在程序调试中的重要作用,引用了一个具体的样例,进行Matlab程序单步调试法的分析并逐步检验,根据运行结果与实际计算结果的比较,验证了该方法在程序调试中的重要地位,并且该实验结果还可以应用于复杂的算法验证中,具有很大的实用意义。 关键词:程序调试;系统质量;运行结果;计算结果;单步调试法 :TN92?34:A:1004?373X(xx)15?0139?03 :xx?01?31 基金项目:本项目获辽宁“百千万人才工程”培养经费资助(xx921044) 0引言 Matlab(MatrixLaboratory)作为一种高效的科学及工程计算语言,广泛地应用于数学分析、自动控制、系统仿真、人工智能等领域1?5。 在Matlab应用中,程序调试是保证系统质量的关键步骤6?7,其主要目的是发现程序中的错误并及时纠正。目前主要有直接调试和单步调试两种方法。直接调试法主要应用于简单的Matlab程序,如程序设计中的流程控制问题;当M文件很大或者M文件中含有复杂的嵌套时,则需要单步调试法对程序进行调试,文献8采用单步调试法验证信号处理指标和实时性是否满足要求,文献9针对现场故障,采用继电保护应用软件仿真验证系统,进行单步跟踪调试,准确判断装置保护程序逻辑正确性。 上述研究只是应用了单步调试方法,并没有提到具体的调试步骤。因此,本文针对具体的样例,进行了Matlab环境下程序的单步调试,该样例可为复杂的Matlab程序设计提供依据和参考。 1单步调试法 程序调试中常见的错误有以下三种:拼写错误、语法错误与逻辑错误1,Matlab会在程序运行出错的时候提示是哪一行出现问题,但却不能确定导致出错的是哪一行,或者在运行过程中没有报错,但是得出的结果却是不符合逻辑的。在这些情况下就需要单步调试解决问题。单步调式法具体可以由以下几个步骤完成: (1)设置断点; (2)程序运行到断点时步进; (3)在断点处查看所调试的变量是否与逻辑值相符; (4)Stepin,进入子程序,查看运行情况; (5)在子程序中步进或者直接跳出进入主程序。 2样例分析 将式(1)代入样例公式得: 其中: 仿真参数z设置为1,以x=1为例,使用单步调试法测试程序的正确性。图1为该公式的主程序示意图。 程序中的s1(1,x)和s2(1,x)分别对应公式中的y1和y2。首先设置断点,如图2所示。 运行完这一步后,跳出子程序,回到主程序,此时程序的各参数运行结果如图4所示。 此时,将z=1,x=1与n=1代入式(3),得出此时y1的累加结果如图6所示。 此时,将z=1,x=1与n=2代入式(3),得出此时y1的累加结果如图8所示。 此结果与上述程序运行结果相符,可以表明该主程序的第一部分是正确的。 继续设置断点,如图9所示。 单步运行程序,当运行完一次后,各参数运行结果如图10所示。 将z=1,x=1与n=11代入式(4),得出此时y2的累加结果如图11所示。 将z=1,x=1与n=12代入式(4),此时y2的累加结果如图13所示。 此结果与上述程序运行结果相符,可以表明该主程序的第二部分是正确的。 综合上述的分析,该程序的第一部分及第二部分对于每次累加后y1和y2的结果都是正确的,所以,其编写是正确的。因此,该样例成功运用单步调试法完成了本程序的测试,为后续大数量数据的运行提供了基础。 3结论 通过以上实例的分析,验证了单步调试法在程序测试中的重要作用。通过此方法,程序员可以通过Matlab搭建系统模型,利用Matlab软件本身的计算优势,在程序编译过程中快速找到错误所在,提高编写程序的效率,还可以应用于复杂的算法测控中,具有很强的实用价值。 注:本文通讯作者为田野。 参考文献 1许波,刘征.Matlab工程数学应用M.北京:清华大学出版社,2000. 2王向东,戎海武,文翰.数学实验M.北京:高等教育出版社,xx. 3薛定宇,陈阳泉.高等应用数学问题的Matlab求解M.北京:清华大学出版社,xx. 4黄忠霖.控制系统Matlab计算机仿真M.北京:国防工业出版社,xx. 5姜启源,邢文训,谢金星,等.大学数学实验M.北京:清华大学出版社,xx. 6李建新,刘乃安,刘继.现代通信系统分析与仿真M.西安:西安电子科技大学出版社,xx. 7刘志俭.Matlab应用接口用户指南M.北京:科学出版社,2000. 8刘春.伪码调相中断连续波雷达信号处理系统的设计与实现D.南京:南京理工大学,xx. 9朱宁,吴崇昊,李志坚,等.一种继电保护应用软件仿真验证系统的设计J.电力自动化设备,xx,32(6):140?144. 10毛用才,胡奇英.随机过程M.西安:西安电子科技大学出版社,xx. 作者简介:王若楠(1989),女,山东德州人,研究生。主要研究方向为高速移动无线信号处

温馨提示

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

评论

0/150

提交评论