Derivative constraint in curve fitting
Ältere Kommentare anzeigen
I have a set of data points in 2D that I want to use fit(x,y,'modeltype') function to test the curve fit of different types of functions. I have tried Fourier series, polynomial, two-term exponential and two-term power functions (one on the increasing and one on the decresing interval). I have two constraints that I want to implement but I dont know how. It is the value and the first derivative in one point. I want the following to hold (the data points are somewhat like an U upside down):
f(1)=1, df/dx(1)=0
How do I implement these connstraints? For these to hold (or be as close to 1 and 0 as possible) is more important than the curve to match all the other data points.
Thank you in advance!
2 Kommentare
darova
am 31 Okt. 2019
You can add two points at the beginning. Derivative means df/dx = tan(a) (tangens of an angle)

Ane Følgesvold Reines
am 31 Okt. 2019
Antworten (2)
Matt J
am 31 Okt. 2019
1 Stimme
You can do spline fits with those kinds of constraints using this,
3 Kommentare
Ane Følgesvold Reines
am 31 Okt. 2019
Matt J
am 31 Okt. 2019
A spline of order 2 or higher will have continuous first derivatives and the SLM toolbox provides tools for evaluating them.
Ane Følgesvold Reines
am 1 Nov. 2019
Cyrus Tirband
am 31 Okt. 2019
0 Stimmen
If you absolutely have to make sure your constraints are met, you have to change your fitting equation so that all possible solutions satisfy your constraints. Consider the 2nd degree polynomial:
if the constraints are y'(1) = 0, and y(1) = 1; we get
Your fitting equation then becomes
Which will give shitty results since it only has one degree of freedom. But this is just an example, if you start with a 4th degree polynomial, your fitting equation will have three degrees of freedom. The fit function will then take care of the rest and minimize the least squares cost.
2 Kommentare
Ane Følgesvold Reines
am 31 Okt. 2019
Cyrus Tirband
am 31 Okt. 2019
Matlab does not have this functionality.
Kategorien
Mehr zu Get Started with Curve Fitting Toolbox finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!