Undefined function or variable f when using solve function
Show older comments
solve(RA(12)==1/f*((2/(k+1))*(1+(k-1)/2*f^2))^((k+1)/(2*k-2)),f)
"Undefined function or variable 'f'."
I want matlab to solve for when the correct positive f value makes the equation true. Currently I get a message that reads, Undefined function or variable 'f'. All I can think is duh, that's what I want you to solve for!!! Can someone else tell me why matlab doesn't understand the command and how to fix it? Also, there will be a positive and negative root. Any suggestions on how to tell matlab to just give me the positive root? Thanks!
1 Comment
Answers (2)
John D'Errico
on 1 Dec 2016
Did you ever tell MATLAB in advance that f is a symbolic variable?
help syms
Walter Roberson
on 1 Dec 2016
Before that you need to
syms f
You can further restrict that as
syms f positive
but you should still cross-check the result as sometimes constraints get ignored.
Categories
Find more on Utilities for the Solver 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!