Newbie question on feval

6 views (last 30 days)
Jeremy
Jeremy on 1 Jul 2014
Commented: Jeremy on 1 Jul 2014
I loaded two vectors into my workspace, plotted them versus one another, used the "basic fitting" tool on the plot, and saved the fit to my workspace. So I now have a structure named "ResourceFit" that shows up in my variable list. However, when I try to call
feval('ResourceFit', 0.17)
for example, I get
Error using feval Undefined function 'ResourceFit' for input arguments of type 'double'.
I'm an infrequent Matlab user, but I swear I've done this before....not sure where I'm going wrong.

Accepted Answer

Matt J
Matt J on 1 Jul 2014
Edited: Matt J on 1 Jul 2014
I assume you are talking about the feval method for fittype objects, described here
If you have the Curve Fitting Toolbox installed and the object created by the steps you describe is of type "fittype", then it should work if you omit the quotes,
feval(ResourceFit, 0.17)
  4 Comments
Jeremy
Jeremy on 1 Jul 2014
Unfortunately no, they're splines. The plots are of cumulative density functions for empirical data, so they're very "non-smooth"....
Jeremy
Jeremy on 1 Jul 2014
Your answer did lead me to a solution though!
It's painful, and I'm not sure why Matlab makes you go through this, but you can:
pp=mkpp(ResourceFit.coeff.breaks, ResourceFit.coeff.coefs)
ppval (pp, 0.17)
and get the correct answer.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!