回覆列表
-
1 # gddsn1445
-
2 # 湯圓電影Vlog
以matlab在polyfit擬合help裡面的例子為基礎程式設計:擬合後函式在y=f(1)處的切線。x = (0: 0.1: 5)";y = erf(x);p = polyfit(x,y,6);f = polyval(p,x);figure(1)hold onplot(x,y,"o",x,f,"-")Ts = 0.001;x1 = [1 1+Ts];f1 = polyval(p,x1);k1 = (f1(2)-f1(1))/Ts;y1 = k1*x+(f1(1)-k1*x1(1));x2 = [x(1) x1(1) x1(1)];y2 = [f1(1) f1(1) 0]plot(x,y1,"r",x1(1),f1(1),"r*",x2,y2,"r:")hold offaxis([0 5 0 1.2])
多項式函式擬合:a=polyfit(xdata,ydata,n)其中n表示多項式的最高階數,xdata,ydata為將要擬合的資料,它是用陣列的方式輸入.輸出引數a為擬合多項式的係數多項式在x處的值y可用下面程式計算.y=polyval(a,x)