fitting 2 variable function to (x-1) form

1 次查看(过去 30 天)
I have this fit currently which works great:
fitobject = fit([r,eta/eta_c],H,ft,'problem',knownVals)
However, because of the nature of the data, it would make more sense if r was actually in the form of .
When I change the code to this:
fitobject = fit([(r-1),eta/eta_c],H,ft,'problem',knownVals)
My fit is completey messed up, and it looks nothing like the data.
My question is, am I employing the fit correctly?
The form should look like: Cij * (r-1)^i *(eta/eta_c)^j.
I wonder if I missed something in the fitting procedure?
  1 个评论
Walter Roberson
Walter Roberson 2019-3-28
Possibly it would help to use 'Upper' and 'Lower' (bounds) or 'StartPoint' options.

请先登录,再进行评论。

采纳的回答

Catalytic
Catalytic 2019-3-29
编辑:Catalytic 2019-3-29
My fit is completey messed up, and it looks nothing like the data.
It shouldn't look like the r and eta data, because that's not the data you fed to the fit, but it should look a lot like r-1 and eta/eta_c.
If I were you, I would just re-define all the r and eta data and forget about it instead of repeatedly having to remember to transform them everywhere they are used in the code. So, I would have
r=r-1;
eta=eta/eta_c;
fitobject = fit([r,eta],H,ft,'problem',knownVals);
plot(fitobject,[r,eta],z)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with Curve Fitting Toolbox 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by