求水域面积

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

陕西理工学院

机械工程专业 郑佳文 2015年12月22日

题目:

某地为了发展旅游产业及美化环境,规划将一片水域改造成一个景观湖,需测算该水域的面积,并计划沿湖修建一条观光道路。已在水域边界上测量了n 个点的坐标(见表),现要求解决下列问题:

(1)做出该水域的平面图 (2)求出该水域面积的近似值 (3)求出该水域边界的周长

表:湖的边界点实测坐标

解题思路:

1. 根据边界点实测的离散数据,利用多项式拟合求法分别求得数据(x,Y1)和(x,Y2)所对

应的拟合多项式表达式W1和W2。 2. 根据表达式,利用数值积分分别求出W1与W2与X 轴围城的面积1s 与2s ,则所测水域

的面积21s s s =

-.

3. 利用曲线积分公式b

a

L =

⎰,分别求得W1和W2对应函数的曲线长度,则所测水域的周长12L L L =

+.

MATLAB 程序如下:

%测量数据

x=[2 15 28.6 52 61.8 75.4 92.9 105.9 121.1...

140.8 157.2 180.5 216.8 248.5 279.8 310.4...

335 360.6 378.5 400.1 420.5 448.5 470.5 493.1];

Y1=[38.5 18.6 12.4 5.8 10.6 23.8 36.8 38.8...

25.4 28.7 18.8 38.6 50.5 20.4 5.4 32.8...

51.9 56.8 72.8 66.6 55.5 65.5 90.5 170.4];

Y2=[38.5 78.5 86.8 81.5 98.6 114.2 160.6...

172.8 176.6 165.5 158.6 155.6 186.8 252.4...

268.8 276.7 275.4 258.2 235.2 228.9 198.5 195.5 188.1 170.4]; %----------------------------------------------------------------------------------------

n=13;

m=15;

p=polyfit(x,Y1,n);

w1=poly2sym([p],'x')

c1=double(int(w1,2,493.1));

dw1=diff(w1);

s1=int(sqrt(1+dw1^2),2,493.1);

L1=double(s1);

q=polyfit(x,Y2,m);

w2=poly2sym([q],'x');

c2=double(int(w2,2,493.1));

dw2=diff(w2);

s2=int(sqrt(1+dw2^2),2,493.1);

L2=double(s2);

MJ=c2-c1 %水域的近似面积

L=L1+L2 %水域的边界周长

xi=linspace(2,493.1);

z1=polyval(p,xi);

z2=polyval(q,xi);

plot(x,Y1,'ok',xi,z1,'b');

hold on

plot(x,Y2,'ok',xi,z2,'b');

title('测绘水域平面图');

xlabel('x');

ylabel('y');

text(30,270,{[' ','计算结果',' '];['水域面积为:',num2str(MJ),'m^2'];['水域周长为:',num2str(L),'m']})

legend('测绘点','拟合曲线');

运行结果如下:

50100150200

250300350400450500

测绘水域平面图

x

y

相关文档
最新文档