龙贝格算法求解椭球周长

数值积分:

在实际应用中经常应用到计算方法去求解一些不易测量的零件的周长或面积。已知一个椭圆形边框如下图所示,试用龙贝格算法求解这个边框的周长,要求结果精确到6 位有效数字。

3.1 数学原理:

龙贝格算法是由递推算法得来的。由梯形公式得出辛普生公式得出柯特斯公式最后得到龙贝格公式。

(1)将区间[a,b] 划分为 n等分,分点:\left ( x_{0},x_{1},..., x_{n} \right ); ;根据梯形公式T_{n}=\frac{h}{2}[f(a)-\sum_{k=1}^{n-1}2f(x_{k})+f(b)]],求出 T_{n},再根据T_{n}T_{2n}之间的递推公式T_{2n}=T_{n}/2+\frac{h}{2}\sum_{k=0}^{n-1}f(k+1/2)求出T_{2n}

(2)设m 为加速次数, k为划分区间次数,则由加速公式:T_{n}=\frac{4^{m}}{4^{m}-1}T^{(k)}_{m-1}-\frac{1}{4^{m}-1}T^{(k)}_{m-1} (k=1,2,... )求出第 k次划分,第 m次加速次数的梯形值T^{(k)}_{m},这样不断地循环,直到求出在满足精度条件下的某个T^{(k)}_{m}作为积分值为止。

题中要求的椭圆周长可用函数 f=32\int _{0}^{\pi /2}\sqrt{1-\frac{7}{16}sin^{2}(x))}dx来求得。

3.2 程序设计:

%主函数程序

a = 0;

b = 3.1415926/2;

epsilon = 0.5e-6;

f = @(x)sqrt(1-7/16.*sin(x).*sin(x));

y =32*Romberg(f,a,b,epsilon);

%后面是画出函数图像,注,不是积分函数图像。是被积函数图像

x = 0:0.01:3.1415926/2;

z = sqrt(1-7/16.*sin(x).*sin(x));

plot(x,z),xlabel('x'),ylabel('y'),title(['Result = ',num2str(y)])

 

%定义龙贝格函数子程序

function [R,k,T]=Romberg(fun,a,b,tol)

k=0; % 迭代次数

n=1; % 区间划分个数

h=b-a;

T=h/2*(fun(a)+fun(b));

err=1;

while err>=tol

    k=k+1;

    h=h/2;

    tmp=0;

    for i=1:n

        tmp=tmp+fun(a+(2*i-1)*h);

    end

    T(k+1,1)=T(k)/2+h*tmp;

    for j=1:k

        T(k+1,j+1)=T(k+1,j)+(T(k+1,j)-T(k,j))/(4^j-1);

        T1(k+1,j+1)=32*T(k+1,j+1)

    end

    n=n*2;

    err=abs(T(k+1,k+1)-T(k,k));

end

R=T(k+1,4);

end

 

3.3 结果分析和讨论:

输出结果:

 

44.2800              0              0              0              0

44.2075   44.2026              0              0              0

44.2070   44.2070   44.2070              0              0

44.2070   44.2070   44.2070   44.2070              0

44.2070   44.2070   44.2070   44.2070   44.2070

最终计算得到椭圆周长为44.2070.

如需要代码请在此链接下下载:https://download.csdn.net/download/weixin_41788456/10854229

如有志同者请发邮箱chenshuai0614@hrbeu.edu.cn联系我!

[原文] 一、为了更好、更准确的说明数学里的一些词句概念,在这里引进一个基,界,及相似形形概念。 1、什么是基?基是长轴相等且相对不变的同类几何图形的长轴,界:这里是界线,比如说零是正数和负数的界。界是指几何面两轴相等,几何体三轴同时相等的几何体。 ①长相等的长方形,包括正方形是同基长方形。长叫做这些长方形的同基长,同基里的正方形是长方形的界,而这些长方形与界正方形是相似面积。 ② 椭圆:长轴相等的椭圆是同基椭圆。 以短轴相等的椭圆,包括圆,也是同基椭圆,圆是两类椭圆的分界。长轴相等的椭圆的长轴叫同基长。同基里的圆面积(或周长)是椭圆面积(或周长)的面积(或周长)的界。 ③抛物面:长轴相等的抛物面是同基抛物面。两轴 相等的抛物面面积为同基抛物面的界。两轴相等抛 物面的弧长,为同基抛物面弧长界。 ④椭圆球:球体积是同基面椭圆球体积的体积界。 球表面积是同基面椭圆球面积的的曲面面积界。画出凸半球的同基面的球曲面面积界,(即三轴相等)以同基面为底面,连接上顶点,做内接圆锥形的界(三轴相等)以AB即2a为直径的圆面积;是凸半球和内接圆锥形的同基面S,S面为基面,AO=OB=OC=a,当OC<AO时,AO=a为基长,当OC>AO时,OC为基长,在计算弧长和凸球曲面面积的公式,两轴相比时,长轴即基长,永远为分母。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值