add contraints on parameters defined in function

17 Ansichten (letzte 30 Tage)
Giru Mishra
Giru Mishra am 19 Jan. 2018
Kommentiert: Matt J am 20 Jan. 2018
I have a function:
y =x.^a + z.^b
For which I wrote a separate function as I neet to fit it over my data. But I want to add constraint: a>b. How will I do that? Please help me with it. Thanks
  5 Kommentare
Torsten
Torsten am 19 Jan. 2018
Use "lsqcurvefit" together with the model function y=Const*(x^(c1+c2)+z^c1) and include the bound constraint c2>0.
Once lsqcurvefit has determined c1 and c2, a=c1+c2 and b=c1 in your original model.
Best wishes
Torsten.
Giru Mishra
Giru Mishra am 19 Jan. 2018
any other way?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 19 Jan. 2018
if a > b
y = x.^a + z.^b;
else
y = zeros(size(x));
end
  4 Kommentare
Giru Mishra
Giru Mishra am 20 Jan. 2018
Thanks Walter and Torsten... It was really very helpful..
Matt J
Matt J am 20 Jan. 2018
@Giru,
You should Accept-click the answer if it helped you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with Curve Fitting Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by