Input formula to be used in a function

2 views (last 30 days)
Lukas Underwood
Lukas Underwood on 6 Nov 2019
Answered: darova on 6 Nov 2019
Hi all,
I have to write a function that can input different f(x) formulas and then use that formula to get solve for some variable in an output. I haven't been able to find anything that quite applies to what I'm trying to do. Any help is appreciated.
Ex.
function v = functionname(formula,a,b,c,d) %formula could be f(x) = x^2 + 2 or whatever
%I want to use the formula and other inputs to get an output
end

Answers (2)

Jeremy
Jeremy on 6 Nov 2019
It sounds like you want
polyval
?
  1 Comment
Jeremy
Jeremy on 6 Nov 2019
Edited: Jeremy on 6 Nov 2019
Without using polyval, something like this is working for me
function f = eval_eq(eq,a)
x = linspace(0,1,101);
f = eq(x,a);
plot(x,f)
end
and then call this with
y = @(x,a) a*x + 1;
f = eval_eq(y,2);
Seems a little out of the way to get it done though. I think just calling the anonymous function in the script is easier than passing it into a function

Sign in to comment.


darova
darova on 6 Nov 2019
Use function handle
function main
f = @(x) 2*x + 1; % function handle
func(f,2,3)
function res = func(f,a,b)
res = f(a)+b;
end
end

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!