add contraints on parameters defined in function

2 visualizzazioni (ultimi 30 giorni)
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 Commenti
Torsten
Torsten il 19 Gen 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.

Accedi per commentare.

Risposta accettata

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

Accedi per commentare.

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