函数逼近与曲线(面)拟合的MATLAB程序(9)

发布时间:2021-06-06

函数逼近与曲线(面)拟合的MATLAB程序

[A2,B2,Y2i,R2m]=sanjiao(X2,Y2,Xi,6);

[A3,B3,Y3i,R3m]=sanjiao(X3,Y3,Xi,6);

plot(X1,Y1,'r*', Xi, Y1i,'b-',Xi, Y2i,'g--', Xi, Y3i, 'm:',

Xi, f, 'k-.')

xlabel('x'),ylabel('y')

legend('数据点(xi,yi)','n=13的三角多项式','n=60的三角多项式

','n=350的三角多项式','函数f(x)')

title('例7.7.1 的数据点(xi,yi)、n=13,60,350的三角多项式T3

和函数f(x)的图形')

运行后图形(略).

7.8 随机数据点上的二元拟合及其MATLAB程序

例7.8.1 设节点(X,Y,Z)中的X和Y分别是在区间[ 3,3]和[ 2.5,3.5]上的50个随机数,Z是函数Z=7-3xe在(X,Y)的值,拟合点(XI,YI)中的XI=-3:0.2:3, YI=-2.5:0.2:3.5.分别用二元拟合方法中最近邻内插法、三角基线性内插法、三角基三次内插法和MATLAB 4网格化坐标方法计算在(XI,YI)处的值,作出它们的图形,并与被拟和曲面进行比较.

解 (1)最近邻内插法.输入程序

>> x=rand(50,1);

y=rand(50,1); %生成50个一元均匀分布随机数x和y, x,y .

X=-3+(3-(-3))*x;%利用x生成的随机变量.

Y=-2.5+(3.5-(-2.5))*y; %利用y生成的随机变量.

Z=7-3* X.^3 .* exp(-X.^2 - Y.^2); %在每个随机点(X,Y)处计算Z的值.

X1=-3:0.2:3;

Y1=-2.5:0.2:3.5;

[XI,YI] = meshgrid(X1,Y1); %将坐标(XI,YI)网格化.

ZI=griddata(X,Y,Z,XI,YI, 'nearest') %计算在每个插值点(XI,YI)处的插值ZI.

mesh(XI,YI, ZI) %作二元拟合图形.

xlabel('x'), ylabel('y'), zlabel('z'),

title('用最近邻内插法拟合函数z =7-3 x^3 exp(-x^2 - y^2) 的曲面和节点的图形')

%legend('拟合曲面','节点(xi,yi,zi)')

hold on %在当前图形上添加新图形.

plot3(X,Y,Z, 'bo') %用兰色小圆圈画出每个节点(X,Y,Z). hold of %结束在当前图形上添加新图形.

运行后屏幕显示用最近邻内插法拟合函数Z=7-3x3e在两组不同节点处的曲面及其插值ZI(略).

(2)三角基线性内插法.

输入程序

>> x=rand(50,1);

y=rand(50,1); %生成50个一元均匀分布随机数x和y, x,y .

X=-3+(3-(-3))*x;%利用x生成 上的随机变量.

Y=-2.5+(3.5-(-2.5))*y; %利用y生成 上的随机变量.

Z=7-3* X.^3 .* exp(-X.^2 - Y.^2); %在每个随机点(X,Y)处计算Z的值.

X1=-3:0.2:3;

Y1=-2.5:0.2:3.5;

[XI,YI] = meshgrid(X1,Y1); %将坐标(XI,YI)网格化.

-x2 -y23-x2 -y2

函数逼近与曲线(面)拟合的MATLAB程序(9).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219