Is the 8th term maximum in the curve fitting toolbox and command line?

1 view (last 30 days)
재열 김
재열 김 on 23 May 2022
Edited: Matt J on 23 May 2022
It seems to apply up to 9th term with a simple command line input.
From 'sin10', it is recognized as 3D. is there any other way?
I hope for your answer. thank you.
F = fix(x,y,'sin9')
plot(F,x,y)

Answers (2)

Matt J
Matt J on 23 May 2022
You will probably have to use a custom model, or else resort to lsqcurvefit().
  4 Comments
Matt J
Matt J on 23 May 2022
For a startpoint, perhaps do a non-custom 'sin8' fit to estimate the first 24 parameters. Subtract the sin8 fit from the measured curve samples to obtain a a modified set of curve samples to which you would do a non-custom 'sin2' fit to estimate the remaining parameters.
F=fit(x,y,'sin8');
dy=y-F(x);
dF=fit(x,dy,'sin2');
startpoint=[coeffvalues(F),coeffvalues(dF)]; %startpoint for custom sin10 fit

Sign in to comment.


Matt J
Matt J on 23 May 2022
Perhaps just do an FFT decomposition and select the 10 strongest frequencies.

Community Treasure Hunt

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

Start Hunting!