Matlab中二维插值interp2函数的使用

问题:已知m*n个节点(xi,yi,zij),i=1,2,3..m,j=1,2,3...n,且x1<x2<...<xm,y1<y2<...<yn.求点(x*,y*)处的插值z*。

对上述问题,MATLAB中提供了二维插值函数interp2,其基本格式为cz=interp2(x,y,z,cx,cy,'method');其中x和y是自变量。x和y的分量值必须是单调递增的。x,y,z的值是已经知道的,cx,cy是但插值的点的坐标,cz是对应的插值。method为可选参数,可以用下面四个值中任选一个:

'nearest':最近邻点插值

'linear':线性插值

'spline':三次样条插值

'cubic':三次插值

'linear'是缺省值

例:已知平板表面3*5的网格处的温度值为

    82    79    84
    81    63    84
    80    61    82
    82    65    85
    84    81    86

做出平板表面温度分布曲面,在x,y方向上每隔0.2个单位进行插值,画出插值后的图形。

 

clc;clear;
x=1:3;
y=1:5;
temps=[82    79    84
    81    63    84
    80    61    82
    82    65    85
    84    81    86]
[x,y]=meshgrid(x,y);
figure(1);
mesh(x,y,temps);
xlabel('x');
ylabel('y');

figure(2);
xi=1:0.2:3;
yi=1:0.2:5;
[xi,yi]=meshgrid(xi,yi);
zi=interp2(x,y,temps,xi,yi,'cubic');
mesh(xi,yi,zi);
xlabel('x');
ylabel('y');


 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值