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.
14.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 (2024). Counted Function (CountedFunction) (https://github.com/tamaskis/CountedFunction-MATLAB/releases/tag/v1.0.3), GitHub. 检索时间: .

MATLAB 版本兼容性
创建方式 R2022a
兼容任何版本
平台兼容性
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
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 仓库