MATLAB程序运行时出现错误怎么办
1、下述方法描述中,采用如下殂翼瑟擀实例程序进行说明。%实例程序[xx,yy] = meshgrid(1:20,1:20);d = sqrt(xx.^2+yy.^2);z芰垄孕动z = peaks(10);out = d + zz;surf(out);shading interp;
2、MATLAB程序运行错误后,切换到MATLAB命令行中,观察命令行中的错误信息,确定错误原因
3、在错误信息中,查找源程序中错误代码的行数,点击行数链接,可以直接定位错误语句
4、错误语句定位后,自动跳转到代码编辑器中,在代码编辑器中通过光标标识错误代码的位置
5、确定错误语句后,通过F12快捷键在错误语句处设定断点
6、断点设定完成后,通过F5快捷键重新执行程序,程序会在断点处停止运行,进入调试状态
7、在调试状态下有多个步骤可以查找程序问题的原因。(1)将鼠标放置在变量上方,这时代码编辑器会自动显示变量的类型、维数、各维大小等信息,根据此信息帮助程序员查找程序中变量错误原因。
8、在调试状态下有多个步骤可以查找程序问题的原因。(2)将问题代码行复制到在MATLA幞洼踉残B命令行中执行,重现错误。这样可以反复重新错误,而不中断程序运行,而且不用重新执行程序,提高调试效率。
9、在调试状态下有多种方法可以查找程序问题的原因。(3)通过whos、size、help等命令协助确定错误原因。其中,whos命令可以酴兑镗笄查看当前工作区中变量列表,size可以确定某一变量的维数和各维大小,help可以确定某一操作符或函数的帮助信息。如:K>> whos Name Size Bytes Class Attributes ans 1x2 16 double d 20x20 3200 double filename 1x60 120 char xx 20x20 3200 double yy 20x20 3200 double zz 10x10 800 double K>> size(zz)ans = 10 10K>> size(d)ans = 20 20K>> help +plus - Addition This MATLAB function adds arrays A and B and returns the result in C. C = A + B C = plus(A,B) plus 的参考页 另请参阅 cumsum, minus, sum, uplus 名为 plus 的其他函数 finance/plus, fixedpoint/plus, symbolic/plus, matlab/plus, +, symbolic/plus, +, matlab/+, symbolic/+K>>
10、仔细分析上述信息,最终确定MATLAB程序执行错误的原因。上述实例中,程序执行错误的原因为:变量a和变量zz的行数和列数不一致,不符合+操作符的要求。