探查结果保存在一个可以察看或获取的结构中,本例演示如何察看结果。
1.运行Profile
在命令窗口键入下面的命令行:
code.matlab
>> profile on -detail builtin -history
>> [t,y] = ode23('lotka',[0 2],[20;20]);
2.查看包含profile结果的结构
在命令行键入:
code.matlab
>> stats = profile('info')
stats =
FunctionTable: [86x1 struct]
FunctionHistory: [2x986 double]
ClockPrecision: 5.4028e-07
ClockSpeed: 1.8950e+09
Name: 'MATLAB'
Overhead: 0
3.察看和获取结构的内容
在命令窗口键入:
code.matlab
>> stats.FunctionTable
MATLAB显示FunctionTable结构
code.matlab
ans =
86x1 struct array with fields:
CompleteName
FunctionName
FileName
Type
Children
Parents
ExecutedLines
IsRecursive
TotalRecursiveTime
PartialData
NumCalls
TotalTime
4.查看FunctionTable结构中一个元素的内容
在命令行键入:
code.matlab
>> stats.FunctionTable(2)
MATLAB返回结构中的第2个元素。
code.matlab
ans =
CompleteName: 'C:\Program Files\MATLAB\R2016a\toolbox\matlab\funfun\
private\odearguments.m>odearguments'
FunctionName: 'funfun\private\odearguments'
FileName: 'C:\Program Files\MATLAB\R2016a\toolbox\matlab\funfun\
private\odearguments.m'
Type: 'M-function'
Children: [22x1 struct]
Parents: [1x1 struct]
ExecutedLines: [53x3 double]
IsRecursive: 0
TotalRecursiveTime: 0
PartialData: 0
NumCalls: 1
TotalTime: 0.0409
5.保存结果
用save命令保存结果,即
code.matlab
>> save profstats
6.用保存好的结果生成一个Profile报表
在命令行键入:
code.matlab
>> load profstats
>> profreport(stats)
MATLAB显示Profile报表。