窒息了,現在處於啥都看不懂的階段,寫部落格純為記錄學習過程和一些知識點。
今天看了《數學建模演算法與應用》第5章 插值與擬合。
裡面涉及的函式有:
1.y=interp(x0,y0,x,『method』)是一維插值函式,
method有nearest(最近項插值),linear(線性插值),spline(立方樣條插值),cubic(立方插值)。**x0,y0是已知資料點,x是插值點。**用法如下:
x0=[0 3 5 7 9 11 12 13 14 15];
y0=[0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6];
x=0:0.1:15;
y1=interp1(x0,y0,x);
y2=interp1(x0,y0,x,『spline』);`
2.pp=csape(x0,y0,conds,valconds);y=ppval(pp,x)三次樣條插值。
csape(x0,y0)使用預設的拉格朗日條件。x0,y0是已知資料點,x是插值點。y是插值點的函式值。
conds指定插值的邊界條件,可以為complete(邊界為一階導數),『not-a-knot』(非扭結條件),periodic(週期),second(邊界為二階導數)。用法如下:
pp1=csape(x0,y0);
y3=ppval(pp1,x);
pp2=csape(x0,y0,『second』);
y4=ppval(pp2,x);
3. [x』,y1』,y2』,y3』,y4』]這一步暫時不知道在幹嘛
4.subplot(m,n,p)指圖排成m行,n列,p指曲線畫在第幾個圖上。用法:
subplot(1,3,1)
plot(x0,y0,』+』,x,y1)
title(『piecewise linear』)
subplot(1,3,2)
plot(x0,y0,』+』,x,y2)
title(『spline1』)
subplot(1,3,3)
plot(x0,y0,』+』,x,y3)
title(『spline2』)
5.diff(x)求x的一階偏導數。如下:
dx=diff(x);
dy=diff(y3);
dy_dx=dy./dx;./點除 如果a、b是矩陣,a./b就是a、b中對應的每個元素相除,得到乙個新的矩陣;如果a、b是兩個數,那麼a./b就是普通的除法。
dy_dx0=dy_dx(1)
matlab插值與擬合
插值 兩個變數間的關係可以通過函式來表示,若x為自變數,y為因變數,則函式關係可描述為y f x 在大多數問題中,函式關係式y f x 未知,人們通常採用逼近的方法處理 取得一組資料點 xi,yi 然後構造乙個簡單的函式p x 作為函式y f x 的近似表示式,即y f x p x 若滿足p xi ...
Matlab系列 插值 擬合
還是跟之前一樣,有部分命令寫法可能混雜偽 但不妨礙理解 大家可能都學過 計算方法 數值分析 裡面很多的計算都可以很方便地用matlab實現,重點講講插值interpolation和擬合fitting p polyfit x,y,2 多項式擬合,最後乙個引數是多項式polynomial次數,p是項係數...
Matlab曲面擬合和插值
插值和擬合都是資料優化的一種方法,當實驗資料不夠多時經常需要用到這種方法來畫圖。在matlab中都有特定的函式來完成這些功能。這兩種方法的確別在於 當測量值是準確的,沒有誤差時,一般用插值 當測量值與真實值有誤差時,一般用資料擬合。插值 對於一維曲線的插值,一般用到的函式yi interp1 x,y...