Help!!! Least square fitting

7 visualizzazioni (ultimi 30 giorni)
Moza Salem
Moza Salem il 20 Mar 2021
Modificato: Moza Salem il 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?

Risposta accettata

Matt J
Matt J il 20 Mar 2021
Modificato: Matt J il 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 Commento
Moza Salem
Moza Salem il 20 Mar 2021
Modificato: Moza Salem il 20 Mar 2021
Thank you very much !!! without your help I wouldn't be able to get my beam imprint

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Interpolation 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