Counted Function (CountedFunction)

版本 1.0.3.0 (8.1 KB) 作者: Tamas Kis
Class to define functions in a way that facilitates counting the number of function calls/evaluations.
17.0 次下载
更新 2023/1/15

CountedFunction View Counted Function (CountedFunction) on File Exchange

Class to define functions in a way that facilitates counting the number of function calls/evaluations.

Usage

[fc,count] = CountedFunction.count_function_calls(f)

Description

[fc,count] = CountedFunction.count_function_calls(f) takes a function handle, f, and returns a function handle fc and a counter function count. fc performs the same function evaluation as f (it is just wrapped around a CountedFunction object which calls f directly). Calling the counter function (i.e. count()) will return the current number of function calls.

Note

  • For simple functions, such as f = @(x) x^2, this can severely slow down function calls (by a factor of ~20).
  • For complicated functions that have a long evaluation time to begin with, this performance hit is negligible.

Basic Example

See more examples in Examples.mlx.

% define the function
f = @(x) x^2;

% new function handle that counts the number of function evaluations
[f,count] = CountedFunction.count_function_calls(f);

% evaluates the function 1000 times
for i = 1:1000
    f(0);
end

% prints the number of function evaluations
count()
ans =

        1000
% evaluates the function another 1000 times
for i = 1:1000
    f(0);
end

% prints the number of function evaluations again
count()
ans =

        2000

引用格式

Tamas Kis (2026). Counted Function (CountedFunction) (https://github.com/tamaskis/CountedFunction-MATLAB/releases/tag/v1.0.3), GitHub. 检索时间: .

MATLAB 版本兼容性
创建方式 R2022a
兼容任何版本
平台兼容性
Windows macOS Linux
版本 已发布 发行说明
1.0.3.0

See release notes for this release on GitHub: https://github.com/tamaskis/CountedFunction-MATLAB/releases/tag/v1.0.3

1.0.2.0

See release notes for this release on GitHub: https://github.com/tamaskis/CountedFunction-MATLAB/releases/tag/v1.0.2

1.0.1

See release notes for this release on GitHub: https://github.com/tamaskis/CountedFunction-MATLAB/releases/tag/v1.0.1

1.0.0

要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 存储库
要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 存储库