作者tn00364361 (小氵斿)
看板MATLAB
标题Re: [运算] 斜率计算
时间Mon Feb 9 13:36:41 2015
※ 引述《johsieh (ii)》之铭言:
: 想请问
: 我有两组数据 X 和 Y
: 如果X和Y画出来的话会是一段曲线
: 我本来是用 [Y(i+1)-Y(i-1)]/[X(i+1)-X(i-1)] 这样丢入回圈中计算
: 但是算出来的斜率很奇怪
: 请问有没有一个指令直接下给Matlab可以让她知道说我要计算每一个点的斜率呢?
: 感谢!
我的方法是多取几个点,做polyfit,然後再
对fit出来的多项式微分求值
不过既然你没有提供data,我就用我之前作业的数据来做
结果长这样
http://ppt.cc/F3-Y
上面是最常用的Naive estimate,下面是用我的方法之後的结果
--
每次只在感兴趣的部分的附近做polyfit,所以得到的结果就是你想要的local的微分
--
这个方法如果再稍微修改一下的话,很适合用在real-time的的应用
不过这又是另外一则故事了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 68.62.19.11
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1423460206.A.27A.html
※ 编辑: tn00364361 (68.62.19.11), 02/12/2015 11:52:23
1F:推 profyang: 这方法好像蛮准的 不过这样是不是需要写for loop? 02/12 17:40
2F:→ profyang: 另外要如何决定你每个点附近取多少点做polyfit呢? 02/12 17:41