日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

插值MATLAB实现(牛顿差商、插值误差、龙格现象、切比雪夫插值)

發布時間:2025/4/16 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 插值MATLAB实现(牛顿差商、插值误差、龙格现象、切比雪夫插值) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

牛頓差商

function [c,y] = newtondd(a,b,x) n=length(a); for i=1:nv(i,1)=b(i); end for j=2:nfor i=1:n-j+1v(i,j)=(v(i+1,j-1)-v(i,j-1))/(a(i+j-1)-a(i));end end for j=1:n c(j)=v(1,j); end k=length(x); y=zeros(1,k); for w=1:k for i=n:-1:2f=1;for j=1:i-1f=f*(x(w)-a(j));endf=f*c(i);y(w)=y(w)+f; end y(w)=y(w)+c(1); end end

說明:a為多項式插值基點橫坐標,b為多項式插值基點縱坐標,x為輸入待求值。y為利用牛頓差商公式得到的多項式的x對應值,c為牛頓差商公式系數。

插值誤差

function z = chazhierror(f,h,x0) n=length(h); d=1; for i=1:nd=d*i; end syms x g=f(x); fn=diff(g,n); for i=1:na(i)=subs(fn,x,h(i)); end b=max(abs(a)); k=length(x0); for j=1:kl=1;for i=1:nl=l*(x0(j)-h(i));endz(j)=b/d*l; end z=double(z); end

f為模擬插值函數,h為模擬插值橫坐標,z為在x0點處的誤差上限。

切比雪夫插值

function [d,d1,cha] = qiebixuefu(f,n,a,b) deta=(b-a)/n; h=[a:deta:b]; h1=(a+b)/2+(b-a)/2*cos((1:2:2*n-1)*pi/(2*n)); syms x g=f(x); y=subs(g,x,h); y1=subs(g,x,h1); y=double(y); y1=double(y1); l=a:0.01:b; [c,d] = newtondd(h,y,l); [c1,d1] = newtondd(h1,y1,l); d2=subs(g,x,l); cha=d-d1; plot(l,d,'-',l,d1,'o',l,d2,'*'); end

f為模擬插值函數,n為插值點數,a,b為基本域。d為等間距插值得到的多項式對應橫坐標l的函數值,d1為切比雪夫插值得到的多項式對應橫坐標l的函數值。

龍格現象圖示

f =

? 包含以下值的 function_handle:

? ? @(x)exp(abs(x))

>> a=-1

a =

? ? -1

>> b=1

b =

? ? ?1

>> n=10

n =

? ? 10

圖一為上述參數的等間距插值與切比雪夫插值對比,圖二為局部放大。可以看到切比雪夫插值更接近原始函數,避免了龍格現象。

總結

以上是生活随笔為你收集整理的插值MATLAB实现(牛顿差商、插值误差、龙格现象、切比雪夫插值)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。