Can I make this?
function[g]= forward(f(x),x)
for j=5:5:40;
h=inv(j)
g=(f(x)+4*f(h)-f(h+h))/(h+h)
end
end

1 comentario

Walter Roberson
Walter Roberson el 31 de En. de 2016
Do you mean something different for inv(j) than 1/j ?

Iniciar sesión para comentar.

 Respuesta aceptada

the cyclist
the cyclist el 31 de En. de 2016
Editada: the cyclist el 31 de En. de 2016
You want to call a MATLAB function an argument that is itself a function, right? You can do that as follows. Define your function like this:
function [g] = forward(f,x)
for j=5:5:40;
h = inv(j);
g = (f(x)+4*f(h)-f(h+h))/(h+h);
end
end
and call it using a "function handle" like this:
forward(@sin,7) % Argument is the MATLAB built-in sine function
or like this
my_func = @(x) x^2; % Define your own function, and assign its handle
forward(my_func,7) % Argument is function defined by you

2 comentarios

Oh thank you! Can you explain to me please this line of code?
my_func = @(x) x^2;
So, if you now do
my_func(5)
you will get 25 as output.
The best form of thanks is to upvote and/or accept solutions that helped you. This rewards the contributor, and can point future users to helpful answers.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Preguntada:

el 31 de En. de 2016

Comentada:

el 31 de En. de 2016

Community Treasure Hunt

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

Start Hunting!

Translated by