使用函数作为另一个函数的输入

问题描述 投票:0回答:1

嗨,我是matlab的新手,所以不熟悉它的语法。我想编写一个函数来使用特定的算法来解决一些函数。

我想要做的是使用另一个我希望作为输入解决的函数来编写函数。

例如,如果我想得到x ^ 2 - 1 = 0的根,我需要像输入一样插入这个函数。

我的代码就像

function [y] = brent(f, x0, x1, max_iter, tolerance)

fx0 = f(x0)
fx1 = f(x1)
......

end

f是我想要解决的功能。我的问题是我应该如何编写代码,以便函数'brent'可以使用函数'f'来计算特定点的值。

恩。在第二行中,我需要得到f(x0)的值(x0是一个点)。

matlab
1个回答
4
投票

Matlab讨论了函数句柄。那些可以作为输入参数:

写下你的主要功能:

function a = func(f,x)
   a = f(x) + 7;

定义要输入的函数,并调用'正常'

>> myfun = @(x) x^2-1;
>> func(myfun,3)
ans =
        15
>> func(@sin,0)
ans =
        7

见:https://se.mathworks.com/help/matlab/matlab_prog/creating-a-function-handle.html

© www.soinside.com 2019 - 2024. All rights reserved.