add contraints on parameters defined in function

3 vues (au cours des 30 derniers jours)
Giru Mishra
Giru Mishra le 19 Jan 2018
Commenté : Matt J le 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 commentaires
Torsten
Torsten le 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 le 19 Jan 2018
any other way?

Connectez-vous pour commenter.

Réponse acceptée

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

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Get Started with Curve Fitting Toolbox dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by