Matlab程序单步调试方法及样例分析报告.docVIP

  • 12
  • 0
  • 约2.86千字
  • 约 8页
  • 2018-11-14 发布于江苏
  • 举报

Matlab程序单步调试方法及样例分析报告.doc

Matlab程序单步调试方法及样例分析报告

Matlab程序单步调试方法及样例分析-电气论文 Matlab程序单步调试方法及样例分析 王若楠,田野,马玉峰,刘立士 (沈阳理工大学信息科学与工程学院,辽宁沈阳110159) 摘要: 针对单步调试法在程序调试中的重要作用,引用了一个具体的样例,进行Matlab程序单步调试法的分析并逐步检验,根据运行结果与实际计算结果的比较,验证了该方法在程序调试中的重要地位,并且该实验结果还可以应用于复杂的算法验证中,具有很大的实用意义。 关键词 :程序调试;系统质量;运行结果;计算结果;单步调试法 中图分类号:TN92?34 文献标识码:A 文章编号:1004?373X(2015)15?0139?03 收稿日期:2015?01?31 基金项目:本项目获辽宁“百千万人才工程”培养经费资助(2014921044) 0 引言 Matlab(Matrix Laboratory)作为一种高效的科学及工程计算语言,广泛地应用于数学分析、自动控制、系统仿真、人工智能等领域[1?5]。 在Matlab应用中,程序调试是保证系统质量的关键步骤[6?7],其主要目的是发现程序中的错误并及时纠正。目前主要有直接调试和单步调试两种方法。直接调试法主要应用于简单的Matlab程序,如程序设计中的流程控制问题;当M文件很大或者M文件中含有复杂的嵌套时,则需要单步调试法对程序进行调试,文献[8]采用单步调试法验证信号处理指标和实时性是否满足要求,文献[9]针对现场故障,采用继电保护应用软件仿真验证系统,进行单步跟踪调试,准确判断装置保护程序逻辑正确性。 上述研究只是应用了单步调试方法,并没有提到具体的调试步骤。因此,本文针对具体的样例,进行了Matlab环境下程序的单步调试,该样例可为复杂的Matlab程序设计提供依据和参考。 1 单步调试法 程序调试中常见的错误有以下三种:拼写错误、语法错误与逻辑错误[1],Matlab会在程序运行出错的时候提示是哪一行出现问题,但却不能确定导致出错的是哪一行,或者在运行过程中没有报错,但是得出的结果却是不符合逻辑的。在这些情况下就需要单步调试解决问题。单步调式法具体可以由以下几个步骤完成: (1)设置断点; (2)程序运行到断点时步进; (3) 在断点处查看所调试的变量是否与逻辑值相符; (4)Step in,进入子程序,查看运行情况; (5)在子程序中步进或者直接跳出进入主程序。 2 样例分析 将式(1)代入样例公式得: 其中: 仿真参数z 设置为1,以x = 1 为例,使用单步调试法测试程序的正确性。图1为该公式的主程序示意图。 程序中的s1(1,x) 和s2 (1,x) 分别对应公式中的y1 和y2 。首先设置断点,如图2所示。 运行完这一步后,跳出子程序,回到主程序,此时程序的各参数运行结果如图4所示。 此时,将z = 1,x = 1 与n = 0 代入式(3),得出此时y1的累加结果为y1 = 0 ,此结果与上述程序运行结果相符,继续测试当n = 1 时的结果。点击继续程序的运行,当第二次运行完时,各参数运行结果如图5所示。 此时,将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 结论 通过以上实例的分析,验证了单步调试法在程序测试中的重要作用。通过此方法,程序员可

文档评论(0)

1亿VIP精品文档

相关文档