Azzera filtri
Azzera filtri

fitting 2 variable function to (x-1) form

1 visualizzazione (ultimi 30 giorni)
Benjamin
Benjamin il 28 Mar 2019
Commentato: Benjamin il 29 Mar 2019
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 Commento
Walter Roberson
Walter Roberson il 28 Mar 2019
Possibly it would help to use 'Upper' and 'Lower' (bounds) or 'StartPoint' options.

Accedi per commentare.

Risposta accettata

Catalytic
Catalytic il 29 Mar 2019
Modificato: Catalytic il 29 Mar 2019
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)

Più risposte (0)

Categorie

Scopri di più su Get Started with Curve Fitting Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by