



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Matlab程序单步调试方法及样例特征分析摘 要: 针对单步调试法在程序调试中的重要作用,引用了一个具体的样例,进行Matlab程序单步调试法的分析并逐步检验,根据运行结果与实际计算结果的比较,验证了该方法在程序调试中的重要地位,并且该实验结果还可以应用于复杂的算法验证中,具有很大的实用意义。关键词: 程序调试;系统质量;运行结果;计算结果;单步调试法中图分类号: TN92?34 文献标识码: A 文章编号: 1004?373X(2015)15?0139?03Single?step debugging method of Matlab program and instance analysis
2、WANG Ruonan, TIAN Ye, MA Yufeng, LIU Lishi(School of Information Science and Engineering, Shenyang Ligong University, Shenyang 110159, China)Abstract: A specific instance is cited and analyzed by using single?step debugging of Matlab program. The debugging method is verified step by step. In compari
3、son with operation results and actual computation results, the important status of the proposed method in program debugging is verified. The experimental results can be applied in complicated algorithm verification. The method has great practical significance.Keywords: program debugging; system qual
4、ity; operation result; computation result; single?step debugging method0 引 言Matlab(Matrix Laboratory)作为一种高效的科学及工程计算语言,广泛地应用于数学分析、自动控制、系统仿真、人工智能等领域。在Matlab应用中,程序调试是保证系统质量的关键步骤,其主要目的是发现程序中的错误并及时纠正。目前主要有直接调试和单步调试两种方法。直接调试法主要应用于简单的Matlab程序,如程序设计中的流程控制问题;当M文件很大或者M文件中含有复杂的嵌套时,则需要单步调试法对程序进行调试,文献采用单步调试法验证信号
5、处理指标和实时性是否满足要求,文献针对现场故障,采用继电保护应用软件仿真验证系统,进行单步跟踪调试,准确判断装置保护程序逻辑正确性。上述研究只是应用了单步调试方法,并没有提到具体的调试步骤。因此,本文针对具体的样例,进行了Matlab环境下程序的单步调试,该样例可为复杂的Matlab程序设计提供依据和参考。1 单步调试法程序调试中常见的错误有以下三种:拼写错误、语法错误与逻辑错误【1】,Matlab会在程序运行出错的时候提示是哪一行出现问题,但却不能确定导致出错的是哪一行,或者在运行过程中没有报错,但是得出的结果却是不符合逻辑的。在这些情况下就需要单步调试解决问题。单步调式法具体可以由以下几个
6、步骤完成:(1) 设置断点;(2) 程序运行到断点时步进;(3) 在断点处查看所调试的变量是否与逻辑值相符;(4) Step in,进入子程序,查看运行情况;(5) 在子程序中步进或者直接跳出进入主程序。2 样例分析以公式为例,其中复合函数服从泊松分布,即的概率为: (1)将式(1)代入样例公式得: (2)其中: (3) (4)仿真参数设置为1,以为例,使用单步调试法测试程序的正确性。图1为该公式的主程序示意图。 dYLw.nET图1 主程序程序中的和分别对应公式中的和。首先设置断点,如图2所示。图2 主程序断点设置单击运行程序,当程序运行到断点处时即暂停,然后单击单步运行,当程序运行到第二个
7、断点时,即进入泊松子程序,如图3所示。图3 泊松子程序运行完这一步后,跳出子程序,回到主程序,此时程序的各参数运行结果如图4所示。此时,将与代入式(3),得出此时的累加结果为,此结果与上述程序运行结果相符,继续测试当时的结果。点击继续程序的运行,当第二次运行完时,各参数运行结果如图5所示。图4 时的运行结果图5 时的运行结果此时,将与代入式(3),得出此时的累加结果如图6所示。图6 时的计算结果此结果与上述程序运行结果相符,继续测试当时的运行结果。点击继续程序的运行,当第三次运行完时,各参数运行结果如图7所示。图7 时的运行结果此时,将与代入式(3),得出此时的累加结果如图8所示。图8 时的计
8、算结果此结果与上述程序运行结果相符,可以表明该主程序的第一部分是正确的。继续设置断点,如图9所示。图9 主程序第二次设置断点单步运行程序,当运行完一次后,各参数运行结果如图10所示。图10 时的运行结果将与代入式(4),得出此时的累加结果如图11所示。 dYLw.nET图11 时的计算结果此结果与上述程序运行结果相符,继续测试当时的运行结果。点击继续程序的运行,当第二次运行完时,各参数运行结果如图12所示。图12 时的运行结果将与代入式(4),此时的累加结果如图13所示。图13 时的计算结果此结果与上述程序运行结果相符,可以表明该主程序的第二部分是正确的。综合上述的分析,该程序的第一部分及第二
9、部分对于每次累加后和的结果都是正确的,所以,其编写是正确的。因此,该样例成功运用单步调试法完成了本程序的测试,为后续大数量数据的运行提供了基础。3 结 论通过以上实dYLw.nET例的分析,验证了单步调试法在程序测试中的重要作用。通过此方法,程序员可以通过Matlab搭建系统模型,利用Matlab软件本身的计算优势,在程序编译过程中快速找到错误所在,提高编写程序的效率,还可以应用于复杂的算法测控中,具有很强的实用价值。注:本文通讯作者为田野。参考文献【1】 许波,刘征.Matlab工程数学应用.北京:清华大学出版社,2000.【2】 王向东,戎海武,文翰.数学实验.北京:高等教育出版社,2004.【3】 薛定宇,陈阳泉.高等应用数学问题的Matlab求解.北京: 清华大学出版社,2004.【4】 黄忠霖.控制系统Matlab计算机仿真.北京:国防工业出版社,2004.【5】 姜启源,邢文训,谢金星,等.大学数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 比亚迪工厂合同协议书
- 洗浴维修合同协议书
- 绝交协议书合同搞笑
- 员工合同转移协议书
- 厨师合同及协议书
- 搬运司机合同协议书
- 司机免责合同协议书
- 企业转让合同协议书
- 宴会酒店合同协议书
- 医生医学术语编码
- 第10课和谐校园共同维护(课件)-【中职专用】高一思想政治《心理健康与职业生涯》(高教版2023·基础模块)
- 2024年04月江苏省农业农村厅直属事业单位2024年公开招考工作人员笔试历年高频考题摘选后附答案详解
- 多图中华民族共同体概论课件第十三讲先锋队与中华民族独立解放(1919-1949)根据高等教育出版社教材制作
- 伤口造口进修汇报护理
- 口才与演讲实训教程智慧树知到期末考试答案2024年
- 档案整理及数字化服务售后服务方案
- 打造消费天堂(百货公司与近代城市文化)
- 2024年一年级《体育与健康》全册教案
- 臂丛神经损伤康复护理
- 2023路用热拌环氧沥青
- 建筑工程《拟投入本项目的主要施工设备表及试验检测仪器设备表》
评论
0/150
提交评论