问题描述:

在一丘陵地带测量高程,xy方向每隔100米测一个点,得高程数据如下。试用MATLAB的二维插值函数“interp2”进行插值,并由此找出最高点和该点的高程。

y                  x

100

200

300

400

100

636

697

624

478

200

698

712

630

478

300

680

674

598

412

400

662

626

552

334

结果:

经过插值画出的地形如下图:(程序:sikao_1.m),得出的最高点位(110110712)。

blob.png

程序源码:

[x,y]=meshgrid(100:100:400); 
z=[636 697 624 478 ; 
   698 712 630 478 ; 
   680 674 598 412 ; 
   662 626 552 334];
[xi,yi]=meshgrid(100:10:400); 
zi=interp2(x,y,z,xi,yi,'linear');
mesh(xi,yi,zi);
grid on
Z=max(zi(:));
[a,b]=find(zi==Z);
xi=a+99
yi=b+99
Z