If I already had a function and some points(x,y), how can I find six parameters in a function?

1 view (last 30 days)
I already known a function: a+b.*exp(c.*t)+d.*t.*exp((e.*t).^f
unknown parameters are 6 : a b c d e f.
some points:
Please help me. Thanks!

Answers (1)

Matt J
Matt J on 10 Jan 2021
fminspleas would be a good choice,
seeing as 3 of your parameters (a,b, and d) are intrinsically linear,
funlist={1, @(cef,t) exp(cef(1).*t) , @(cef,t) t.*exp((cef(2).*t).^cef(3)) };
[cef,abd]=fminspleas(funlist,[c0,e0,f0], t,y);
[a,b,c,d,e,f] = deal(abd(1), abd(2), cef(1), abd(3), cef(2),cef(3));

Community Treasure Hunt

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

Start Hunting!