Help!!! Least square fitting

8 vues (au cours des 30 derniers jours)
Moza Salem
Moza Salem le 20 Mar 2021
Modifié(e) : Moza Salem le 20 Mar 2021
I have a set of values P and D :
P = [175.2582 150.9053 103.9622 69.9965 48.6696]
D = [0 31.3300 61.3200 91.3800 121.4000]
and i want to use the following equation to find a and b
D = a * (P- b)^2
but I have to satisfy the following conditions
if P <= b then D=a * (P- b)^2
else D=0
How can i do this and fit the data?

Réponse acceptée

Matt J
Matt J le 20 Mar 2021
Modifié(e) : Matt J le 20 Mar 2021
Using fminspleas from the File Exchange,
P = flip([175.2582 150.9053 103.9622 69.9965 48.6696]).';
D = flip([0 31.3300 61.3200 91.3800 121.4000]).';
funlist={@(b,P) (P<=b).*(P-b).^2};
[b,a]=fminspleas(funlist,P(end), P,D),
b = 230.0623
a = 0.0037
fn=@(P) a*funlist{1}(b,P); %fitted function
plot(P,D,'x',P,fn(P));
  1 commentaire
Moza Salem
Moza Salem le 20 Mar 2021
Modifié(e) : Moza Salem le 20 Mar 2021
Thank you very much !!! without your help I wouldn't be able to get my beam imprint

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Interpolation 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