matlab中怎么停止调试器,Matlab 调试器的使用

8.8 调试和剖析

8.8.2 调试器的使用

8.8.2.2 调试器应用示例

【 * 例 8.8.2 .2.-1 】本例的目标:对于任意随机向量,画出鲜明标志该随机向量均值、标准差的频数直方图(如图 8.8.2. 2-1-1 ),或给出绘制这种图形的数据。

2005129235353577.gif

图 8.8.2 . 2-1-1 带均值、标准差标志的频数直方图

(1)根据题目要求写出以下两个 M 文件

[histzzy.m]

function [nn,xx,xmu,xstd]=histzzy(x)

xmu=mean(x);

xstd=std(x);

[nn,xx]=hist(x);

if nargout==0

barzzy(nn,xx,xmu,xstd) %<6>

end

[barzzy.m]

function barzzy(nn,xx,xmu,xstd)

clf,

bar(xx,nn);hold on

Ylimit=get(gca, 'YLim' );

yy=0:Ylimit(2);

xxmu=xmu*size(yy);

xxL=xxmu/xmu*(xmu-xstd);

xxR=xxmu/xmu*(xmu+xstd);

plot(xxmu,yy, 'r' , 'Linewidth' ,3) %<9>

plot(xxL,yy, 'rx' , 'MarkerSize' ,8)

plot(xxR,yy, 'rx' , 'MarkerSize' ,8),hold off

(2)初次运行以下指令后,得到运行出错的提示。

randn('seed',1),x=randn(1,100);histzzy(x);

??? Error using ==> plot

Vectors must be the same lengths.

Error in ==> E:\mat53\work\barzzy.m

On line 8 ==> plot(xxmu,yy,'r','Linewidth',3)

Error in ==> E:\MAT53\work\histzzy.m

On line 6 ==> barzzy(nn,xx,xmu,xstd)

2005910173327740.gif

图 8.8.2 . 2-1-2 运行出错时所得的不完整图形

(3)初步分析错误原因

(4)断点设置

(5)在指令窗中运行以下指令,进入“动态”调试

randn('seed',1),x=randn(1,100);histzzy(x);

2005129235353302.jpg

图 8.8.2 . 2-1-3 运行暂停在断点处

(6)深入被调文件内部

2005129235353632.jpg

图 8.8.2 . 2-1-4 动态调试深入 barzzy.m

(7)连续执行,直到另一个断点

2005129235353667.jpg

图 8.8.2 . 2-1-5 变量值的鼠标观察法

(8)指令窗观察法

(9)修改程序,停止第一论调试,重新运行。

randn('seed',1),x=randn(1,100);histzzy(x);

8.8.3 M文件性能剖析

8.8.3.2 剖析器

【 * 例 8.8.3 .2-1 】演示剖析指令的基本使用:对例 8.8.2.2-1 中那通过调试后运行正确的 histzzy.m 进行性能分析。

(1)产生剖析报告

randn('seed',1),x=randn(1,100);

profile on % 启动剖析器,在 mmex 层面上统计数据

for kk=1:100;histzzy(x);end % 运行 100 次,使统计数据受随机因素影响较小

profile report histzzy_report % 产生名为 histzzy_report.htm 的分析报告

2005129235353746.jpg

图 8.8.3 . 2-1-1 超文本形式剖析报告的 Summary 章的部分内容

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值