全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
2585 0
2014-08-23
初学者要如何进行matlab程序调试和优化,步骤如下:

程序调试和优化

一、       Debugger窗口调试程序

open打开M文件并进入Debugger窗口。

二、       设置断点

分为标准断点、条件断点和错误断点。

让断点不起作用或反之:Debug->Enable/DisableBreakpoint

有效断点(红色)和无效断点(灰色):后者并非是不起作用的断点,程序运行到此照样停止,只是修改后没有保存而修改变成无效。

命令窗口处设置断点——dbstop函数,有两种形式,如下:

dbstop in mfile

dbstop in mfile at lineno

前者暂停在第一行可执行语句上,后者暂停在lineno行。它将函数置于debug方式,其后可用dbcontdbstep重新运行,也可用dbquit退出debug方式。

清除断点:Debug->Set/ClearBreakpointdbclear函数(dbclear all/in mfile/in mfile atlineno)。

在命令窗口显示断点状况:dbstatusdbstatus mfile

设置条件断点:Debug->Set/ModifyConditional Breakpoint

断点的弹出菜单:鼠标右键点击断点。

命令窗口设置条件断点:dbstopin mfile at lineno if expression

错误断点:Debug->Stopif Errors/Warings

命令窗口设置错误断点:dbstopif errordbstop iferror identifierdbstop ifwarningdbstop ifwarning identifierdbstop if naninf

清除错误断点:dbclearif errordbclear ifwarningdbclear ifnaninfdbclear iferror identifierdbclear ifcaught error

三、       交互地使用命令窗口和Debugger窗口

选中Debug->OpenM-files when Debugging

keyboard语句:观察和修改变量,并用return结束键盘方式并把控制再交给M文件。

在工作区上面的Stack中可以选择collatzplot函数,可以显示当前的变量及其值。

打开数组编辑器:双击变量,或用命令openvar variable

whowhos:列出当前工作区的变量。

四、       彩色语法突出显示(Syntax highlighting),改正语法错误

可使用原本的颜色,也可自定义:File->Prefences->Colors Prefences。恢复默认颜色Restore Default Colors

五、       利用错误信息

语法错误,带有下划线,可作为超链接。

六、       MATLAB命令窗口进入Debug方式

   dbstop        - Set breakpoint.

   dbclear        - Remove breakpoint.

   dbcont        - Resume execution.

   dbdown       - Change local workspace context.

   dbmex       - Enable MEX-file debugging.

   dbstack        - List who called whom.

   dbstatus        - List all breakpoints.

   dbstep        - Execute one or more lines.

    dbtype       - List M-file with line numbers.

   dbup         - Change local workspace context.

   dbquit        - Quit debug mode.

七、       Cells

Cell工具条:,从左到右依次是执行当前Cell;执行当前Cell并推进到下一个Cell;执行整个文件;减少或增加光标附近的数值,并运行;除或乘光标附近的数,并运行;插入Cell定界符;显示Cell标题。

Cell是指在Editor/Debugger窗口中把一个M文件分解成的若干段。独立cell可以单独运行。

激活Cell方式:Cell->Enable Cell Mode

定义CellCell->Insert Cell Divider/Break

Cell加标题:Cell->Insert TextMarkup->Cell Title

下一个CellCell->Next Cell

上一个CellCell->Previous Cell

运行一个CellCell->Evaluate Current Cell或点击响应的图标。

八、       M-Lint

M-lint能帮助验证代码的完整性。进入方式:mlint函数;M-Lint的图形用户界面(GUI)。

进入方式:在CurrentDirectory中单击M-lint CodeCheck Report;或者在Editor窗口选择Tools->Check Code with M-Lint

命令窗口:mlint函数。

文件比较报告:FileComparison Report

九、       Profile

Profile是能够检测程序性能的工具。

打开:在MATLAB窗口打开Desktop->Profile;在Editor窗口打开Tools->Open Profile;在Command History窗口选择一条语句单击右键,在弹出的快捷菜单中选择Profile Code;在命令行输入“profile viewer”。

运行:检测M文件时在Run this code中输入文件名;检测图形用户界面时首先保证Run this code区空白,点击Start Profiling按钮,然后打开图形用户界面,然后使用,工作完成时点击Profiler窗口的Stop Profiling按钮。

改变Profiler字体:File->Preferences->Fonts,然后选择代码或文本字体,点击OkApply按钮,然后在Profiler窗口刷新。

Profiler简略报告和详细报告。

Profile函数:profile on       (开始);profile off(中止)和profile viewer(打开)。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群