How to find two local slopes in an arbitrary curve?

조회 수: 3 (최근 30일)
Body_sea
Body_sea 2013년 6월 3일
답변: Jules Ray 2015년 6월 16일
I am used Matlab to find a model from curves. So i am processing curvesand i have some difficult to find two local slopes?
For information i am not an expert in math.
Thanks for help!
Best regards
  댓글 수: 2
Azzi Abdelmalek
Azzi Abdelmalek 2013년 6월 3일
This is not clear
Jan
Jan 2013년 6월 3일
What does "processing curves" exactly mean? Do youz have two vector of x- and y_values? Or a sheet of paper with a hand-drawn line?

댓글을 달려면 로그인하십시오.

답변 (5개)

Iain
Iain 2013년 6월 3일
The general expression to calculate "slope" is (y2 - y1) / (x2 - x1)
If you have a vector of "y" values and "x" values of the same length, you can:
slope = diff(y) ./ diff(x);
slope_x_vals = (x(2:end) + x(1:end-1))/2;
plot(slope_x_vals,slope_y_vals)
If your y value is in metres, and your x value is in seconds, the units of "slope" is metres per second.

Body_sea
Body_sea 2013년 6월 3일
Hello,
I see my question is not clear...
I have a curve stored in a vector X and Y as the following picture :
in an arbitraru curve i know there a two local slopes. So my question is how to find the two local slopes in the curve?
With the picture i hope it is clear.
Best regards.

Jan
Jan 2013년 6월 3일
The gradient function calculates the slope in a fast and stable way.

Body_sea
Body_sea 2013년 6월 3일
I know the gradient function in Matlab. But you can see, my problem is not here, i am looking for the two local slope. i mean after to have the gradient of the curve, i want to find the local linear slope and to make sure this is the good of the two slopes i want.
An idea?
Regards

Jules Ray
Jules Ray 2015년 6월 16일
Use ginput (four in this case) to the boundaries or the limits that enclose both areas, for each area use for polyfit, and lineal interpolations, this allows estimates the slope but also the associated 2 sigma error of your measurements

카테고리

Help CenterFile Exchange에서 Interpolation에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by