• / 52
  • 下载费用:10 金币  

matlab在科学计算中的应用06_21.ppt

关 键 词:
matlab在科学计算中的应用06_21.ppt
资源描述:
1,6.2.5样条插值的MATLAB表示,样条函数的概念,样条(spline):原指工程设计中使用的一种绘图工具(如富有弹性的细木条或金属条),应用其将已知点连接成一条光滑曲线(称为样条曲线),并使连接点处有连续的曲率.三次样条插值即由此抽象出来.,样条函数:数学上将具有一定光滑性的分段多项式函数称为样条函数. 具体的,给定区间[a,b]的一个划分:,2,三次样条插值 - 样条插值: 利用样条函数进行插值 (例如分段线性插值是一次样条插值),- 三次样条插值: 已知函数f(x)在区间[a,b]上的n个节点,,,3,- 定义三次样条函数类: S=csapi(x,y)其中x=[x1,x2,….,xn], y=[y1,y2,…,yn]为样本点。S返回样条函数对象的插值结果,包括子区间点、各区间点三次多项式系数等。- 可用 fnplt()绘制出插值结果,其调用格式: fnplt(S)- 对给定的向量xp, 可用fnval()函数计算, 其调用格式: yp=fnval(S,xp)其中得出的yp是xp上各点的插值结果。,Matlab 样条插值工具箱,4,例:已知y0=sin(x0),x0= =[0,0.4,1,2,pi], 求该函数三次样条插值结果 解法: x0=[0,0.4,1,2,pi]; y0=sin(x0); sp=csapi(x0,y0), fnplt(sp, 'r:'); hold on, sp = form: 'pp'breaks: [0 0.4000 1 2 3.1416]coefs: [4x4 double]pieces: 4order: 4dim: 1 ezplot('sin(t)',[0,pi]); plot(x0,y0,'o'),5,- 在(0.4000, 1)区间内,插值多项式可以表示为:,- 查看插值多项式 sp.coefs ans =-0.1627 0.0076 0.9965 0-0.1627 -0.1876 0.9245 0.38940.0244 -0.4804 0.5238 0.84150.0244 -0.4071 -0.3637 0.9093,6,例:,点,用三次样条插值的方法对这些数据进行拟合,解法: x=0:.12:1; y=(x.^2-3*x+5).*exp(-5*x).*sin(x); sp=csapi(x,y); fnplt(sp),7,Columns 7 through 12 0.4800 0.6000 -0.2404 0.7652 -0.5776 0.15880.6000 0.7200 -0.4774 0.6787 -0.4043 0.10010.7200 0.8400 -0.4559 0.5068 -0.2621 0.06050.8400 0.9600 -0.4559 0.3427 -0.1601 0.0356, c=[sp.breaks(1:4)' sp.breaks(2:5)' sp.coefs(1:4,:),. sp.breaks(5:8)' sp.breaks(6:9)' sp.coefs(5:8,:) ] c =Columns 1 through 6 0 0.1200 24.7396 -19.3588 4.5151 0 0.1200 0.2400 24.7396 -10.4526 0.9377 0.3058 0.2400 0.3600 4.5071 -1.5463 -0.5022 0.31050.3600 0.4800 1.9139 0.0762 -0.6786 0.2358,8,- 格式S=csapi({x1,x2,…,xn},z),注: csapi() 可处理多个自变量的网格数据三次样条插值类,9, x0=-3:.6:3; y0=-2:.4:2; [x,y]=ndgrid(x0,y0); % 注意这里只能用 ndgrid, 否则生成的 z 矩阵 顺序有问题 z=(x.^2-2*x).*… exp(-x.^2-y.^2-x.*y); sp=csapi({x0,y0},z); fnplt(sp);,例:对函数,解法:,10,三次样条数据插值 -Matlab实现: 函数spline 格式 yy = spline(x,y,xx) 例:对离散分布在y=exp(x)sin(x)函数曲线上的数据点进行样条插值计算:x = [0 2 4 5 8 12 12.8 17.2 19.9 20]; y = exp(x).*sin(x);xx = 0:.25:20;yy = spline(x,y,xx);plot(x,y,'o',xx,yy)
展开阅读全文
  微传网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:matlab在科学计算中的应用06_21.ppt
链接地址:https://www.weizhuannet.com/p-7356977.html
微传网是一个办公文档、学习资料下载的在线文档分享平台

微传网博客

 网站客服QQ:80879498  会员QQ群:727456886

copyright@ 2018-2028 微传网络工作室版权所有

     经营许可证编号:冀ICP备18006529号-1 ,公安局备案号:13028102000124

收起
展开