1、数学试验报告一、实验问题:有一形状较为复杂,但表面很光滑的曲面工件.通过科学手段,将其放置于某一空间坐标系下,测得曲面上若干个点的坐标如下:Yx-5 -4 -3 -2 -1 0 1 2 3 4 5-5 13.6 -8.2 -14.8 -6.6 1.4 0 -3.8 1.4 13.6 16.8 0-4 -8.2 -15.8 -7.9 2.2 3.8 0 0.6 7.3 10.1 0 -16.8-3 -14.8 -7.9 2.5 5.8 2.3 0 2.7 5.1 0 -10.1 -13.7-2 -6.6 2.2 5.9 3 -0.3 0 1.9 0 -5.1 -7.3 -1.4-1 1.4 3.
2、8 2.3 -0.3 -0.9 0 0 -1.7 -2.7 -0.6 3.80 0 0 0 0 0 0 0 0 0 0 01 -3.8 0.6 2.7 1.7 0 0 0.9 0.3 -2.3 -3.8 -1.42 1.4 7.3 5.1 0 -1.7 0 0.3 -3.1 -5.8 -2.2 6.63 13.6 10.1 0 -5.1 -2.7 0 -2.3 -5.8 -2.5 7.9 14.84 16.8 0 -10.1 -7.3 -0.6 0 -3.8 -2.2 7.9 15.8 8.25 0 16.3 -13.6 -1.4 3.8 0 -1.4 6.6 14.8 8.2 -13.6要求
3、:(1) 、画出该曲面工件的图形.(2) 、在已知相邻的横、纵坐标之间插入三个分点,用 interp2 命令计算出所有点处的竖坐标,画出相应的插值曲面.(3) 、分别用不同的方法求出该曲面工件表面积的近似值.二、问题分析:(1) 、由 x=-5:1:5;y=-5:1:5 产生“格点”矩阵,再用已知的各 “格点”的纵坐标 z,用 surf(x,y,z)命令即可画出未进行插值的工件表面图形。(2) 、要在已知相邻的横、纵坐标之间插入三个分点,则要用 xc=-5:0.25:5;yc=-5:0.25:5 产生另一个“格点”矩阵,然后使用 interp2 命令计算所有“格点”处的纵坐标 z,然后再用 s
4、urf(x,y,z)命令即可画出该插值曲面。(3) 、该工件是一个曲面,要求其表面积的近似值,可以想到的用“分” ,“匀” , “和” , “精”的思想,将工件曲面分成 n 个在 xoy 平面上的投影是边长为 d 的矩形的曲面四边形(从第(2)题画出的曲面可以一目了然的看出) ,分别求出各个曲面四边形的面积再求和,n 取的越大,d 越小,越接近准确值。对于如何求每一个曲面四边形的面积:方法 1:如图所示,曲面面积微元 S 近似等于以 OP1 和 OP2 为邻边的平行四边形的面积 S= ,只要 n 取的值较大,d 足够小,误12差会较小。曲面微元:方法 2:由第一型面积分公式: ,曲面=( )
5、1+2+2面积微元 S 等于 . 由上述分割工件曲面的思想,dxdy 即1+2+2等于 . 问题是如何求得曲面方程的对 x、y 的偏导数?通过查找资料,发d2现 Matlab 软件中有求梯度的命令 gradient,因此,曲面的面积微元 S 可以求得,而且与方法一类似,当 d 取足够小时,误差可以忽略不计。三、问题求解:(1) 、使用 Matlab 软件编写如下程序:x=-5:1:5;y=-5:1:5;xb,yb=meshgrid(x,y);zb=13.6,-8.2,-14.8,-6.6,1.4,0,-3.8,1.4,13.6,16.8,0;-8.2,-15.8,-7.9,2.2,3.8,0,
6、0.6,7.3,10.1,0,-16.8;-14.8,-7.9,2.5,5.8,2.3,0,2.7,5.1,0,-10.1,-13.7;-6.6,2.2,5.9,3.0,-0.3,0,1.9,0,-5.1,-7.3,-1.4;1.4,3.8,2.3,-0.3,-0.9,0,0,-1.7,-2.7,-0.6,3.8;0,0,0,0,0,0,0,0,0,0,0;-3.8,0.6,2.7,1.7,0,0,0.9,0.3,-2.3,-3.8,-1.4;1.4,7.3,5.1,0,-1.7,0,0.3,-3.1,-5.8,-2.2,6.6;13.6,10.1,0,-5.1,-2.7,0,-2.3,-5.
7、8,-2.5,7.9,14.8;16.8,0,-10.1,-7.3,-0.6,0,-3.8,-2.2,7.9,15.8,8.2;0,16.3,-13.6,-1.4,3.8,0,-1.4,6.6,14.8,8.2,-13.6;surf(xb,yb,zb)图 1、由已知坐标点画出的工件表面图形(2) 、使用 Matlab 软件编写如下程序:x=-5:1:5;y=-5:1:5;xb,yb=meshgrid(x,y);zb=13.6,-8.2,-14.8,-6.6,1.4,0,-3.8,1.4,13.6,16.8,0;-8.2,-15.8,-7.9,2.2,3.8,0,0.6,7.3,10.1,0,-
8、16.8;-14.8,-7.9,2.5,5.8,2.3,0,2.7,5.1,0,-10.1,-13.7;-6.6,2.2,5.9,3.0,-0.3,0,1.9,0,-5.1,-7.3,-1.4;1.4,3.8,2.3,-0.3,-0.9,0,0,-1.7,-2.7,-0.6,3.8;0,0,0,0,0,0,0,0,0,0,0;-3.8,0.6,2.7,1.7,0,0,0.9,0.3,-2.3,-3.8,-1.4;1.4,7.3,5.1,0,-1.7,0,0.3,-3.1,-5.8,-2.2,6.6;13.6,10.1,0,-5.1,-2.7,0,-2.3,-5.8,-2.5,7.9,14.8;
9、16.8,0,-10.1,-7.3,-0.6,0,-3.8,-2.2,7.9,15.8,8.2;0,16.3,-13.6,-1.4,3.8,0,-1.4,6.6,14.8,8.2,-13.6;xc=-5:0.25:5;yc=-5:0.25:5;xcb,ycb=meshgrid(xc,yc);zcb=interp2(xb,yb,zb,xcb,ycb,spline)surf(xcb,ycb,zcb)图 2、插值计算出的所有点的纵坐标值(截取了一部分)图 3、插值曲面(3) 、求工件表面面积:利用方法一求面积微元:x=-5:1:5;y=-5:1:5;xb,yb=meshgrid(x,y);zb=13
10、.6,-8.2,-14.8,-6.6,1.4,0,-3.8,1.4,13.6,16.8,0;-8.2,-15.8,-7.9,2.2,3.8,0,0.6,7.3,10.1,0,-16.8;-14.8,-7.9,2.5,5.8,2.3,0,2.7,5.1,0,-10.1,-13.7;-6.6,2.2,5.9,3.0,-0.3,0,1.9,0,-5.1,-7.3,-1.4;1.4,3.8,2.3,-0.3,-0.9,0,0,-1.7,-2.7,-0.6,3.8;0,0,0,0,0,0,0,0,0,0,0;-3.8,0.6,2.7,1.7,0,0,0.9,0.3,-2.3,-3.8,-1.4;1.4,
11、7.3,5.1,0,-1.7,0,0.3,-3.1,-5.8,-2.2,6.6;13.6,10.1,0,-5.1,-2.7,0,-2.3,-5.8,-2.5,7.9,14.8;16.8,0,-10.1,-7.3,-0.6,0,-3.8,-2.2,7.9,15.8,8.2;0,16.3,-13.6,-1.4,3.8,0,-1.4,6.6,14.8,8.2,-13.6;d=0.25; %改变 d 的值即可改变曲面四边形的个数 nxc=-5:d:5;yc=-5:d:5;xcb,ycb=meshgrid(xc,yc);zcb=interp2(xb,yb,zb,xcb,ycb,spline);p=1;q
12、=1;ss=0;while p10/d+1while q10/d+1s=sqrt(d*d*(zcb(p,q+1)-zcb(p,q)2+d*d*(zcb(p+1,q)-zcb(p,q)2+d4); %s 为每一个曲面四边形的面积ss=s+ss; %对 s 循环相加q=q+1;endq=1;p=p+1;endss(步长 d 取 0.25 时得工件表面积约为 ss =670.0184)使用方法二求面积微元:x=-5:1:5;y=-5:1:5;xb,yb=meshgrid(x,y);zb=13.6,-8.2,-14.8,-6.6,1.4,0,-3.8,1.4,13.6,16.8,0;-8.2,-15.
13、8,-7.9,2.2,3.8,0,0.6,7.3,10.1,0,-16.8;-14.8,-7.9,2.5,5.8,2.3,0,2.7,5.1,0,-10.1,-13.7;-6.6,2.2,5.9,3.0,-0.3,0,1.9,0,-5.1,-7.3,-1.4;1.4,3.8,2.3,-0.3,-0.9,0,0,-1.7,-2.7,-0.6,3.8;0,0,0,0,0,0,0,0,0,0,0;-3.8,0.6,2.7,1.7,0,0,0.9,0.3,-2.3,-3.8,-1.4;1.4,7.3,5.1,0,-1.7,0,0.3,-3.1,-5.8,-2.2,6.6;13.6,10.1,0,-5.
14、1,-2.7,0,-2.3,-5.8,-2.5,7.9,14.8;16.8,0,-10.1,-7.3,-0.6,0,-3.8,-2.2,7.9,15.8,8.2;0,16.3,-13.6,-1.4,3.8,0,-1.4,6.6,14.8,8.2,-13.6;d=0.25; %改变 d 的值即可改变曲面四边形的个数 nxc=-5:d:5;yc=-5:d:5;xcb,ycb=meshgrid(xc,yc);zcb=interp2(xb,yb,zb,xcb,ycb,spline);Fx,Fy=gradient(zcb,d,d);p=1;q=1;ss=0;while q10/d+1while p10/
15、d+1s=sqrt(1+Fx(p,q)2+Fy(p,q)2)*d*d; %s 为每一个曲面四边形的面积ss=s+ss; %对 s 循环相加p=p+1;endp=1;q=q+1;endss(步长 d 取 0.25 时得工件表面积约为 ss = 661.1878)两种方法的比较:d 的取值 方法一的 ss 方法二的 ss0.250 670.0184 661.18780.200 671.3242 665.43360.100 673.9680 672.15380.050 675.0788 674.52040.020 675.7059 675.56850.010 675.9075 675.85340.005 676.0069 675.9836可以看出,两种方法算得的工件表面面积最终都逼近到 676 左右,因此,可以认为工件表面面积约为 676。还可以看出,当 d 取的值不是很大的情况下,方法一的结果更接近准确值,方法一误差相对较小。