inline function with 3 variables

8 views (last 30 days)
hello,
I'm trying to run this code but I don;t know how to write the function in a way that uses the values of h and t, then fx(a) and fx(b). can anyone please help
t = [5 6 7 8 9]
h= [2 3 4 5 6]
fx =inline('((2*pi.^2)./t)-(((9.81*2*pi)./x).*tanh((2*pi*h)./x))')
a = 1;
b = 10;
tol = 0.001;
fx(a)
fx(b)

Accepted Answer

Walter Roberson
Walter Roberson on 20 Apr 2019
You cannot do that with inline functions. Every name you mention in an inline function must either be a function call (like tanh or pi -- pi is a function), or else it is turned into a parameter that must be passed to the function at the time it is executed.
You should not use inline functions unless someone imposes a requirement on you that you cannot overrule. You should use anonymous functions instead. http://www.mathworks.com/help/matlab/math/parameterizing-functions.html
  1 Comment
Nathan latchman
Nathan latchman on 20 Apr 2019
thank you. I ended up using anonymous function and that worked. only problem is now the function keeps running for much longer than i think it should so, some progress made and some to go.

Sign in to comment.

More Answers (0)

Categories

Find more on Function Creation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!