Mathematical Function as Matlab-Function Input
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hello Everybody!
I have a probably pretty easy to answer question, but I am just not getting to it. How can I tell Matlab to use a mathematical function as an input argument?
To make clear what I mean a very simple example:
function [df] = derivate(y)
x=-20:20;
df=diff(y);
end
If I try to run this now with any kind of function like 3*x+5, Matlab tells me x wasn't defined. Can you tell me my mistake?
Thanks in advance!!!
0 Commenti
Risposta accettata
Walter Roberson
il 26 Ott 2011
You need the symbolic toolbox in order to do this, and you need to declare your free variable with either a sym() or syms() call.
Please also note that you cannot take the derivative of a mathematical function over a range.
If you are trying to do numeric derivatives then you should recode as something like:
function df = derivate(f)
x = -20:20;
df = diff(f(x));
end
and you would then call it with a function handle, such as calling
derivate(@(x) 3*x+5)
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!