高斯求积公式 matlab

本文展示了如何在Matlab中利用Gauss-Chebyshev和Gauss-Legendre公式进行数值积分,并通过比较不同点数的误差来评估其精度。对于函数1/(1+x^2),在[-4,4]区间上,应用Gauss-Chebyshev公式得到的积分结果分别是4.511(n=3)和1.90041(n=4),而Gauss-Legendre公式的结果是2.04798(n=3)和3.08862(n=4)。此外,还探讨了Gauss-Lagurre公式的应用。" 111630523,10294390,Python实现溺水行为识别:姿态与图像识别,"['计算机视觉', '图像处理', '深度学习', '人工智能', 'Python库']
摘要由CSDN通过智能技术生成

 

1. 分别用三点和四点Gauss-Chebyshev公式计算积分

                         

并与准确积分值2arctan4比较误差。若用同样的三点和四点Gauss-Legendre公式计算,也给出误差比较结果。

2*atan(4)

 

ans =

 

    2.6516

Gauss-Chebyshev:

function I = gausscheby(f,a,b,n)

syms t;

t= findsym(sym(f));

ta = (b-a)/2;

tb = (a+b)/2;

switch n  

       

    case 3

        I=pi/n*ta*(subs(sym(f),t,ta*cos(pi/(2*n))+tb)*sqrt(1-cos(pi/(2*n))^2)+...

          subs(sym(f),t,ta*cos(3*pi/(2*n))+tb)*sqrt(1-cos(3*pi/(2*n))^2)+...

          subs(sym(f),t,ta*cos(5*pi/(2*n))+tb)*sqrt(1-cos(5*pi/(2*n))^2));

       

    case 4

        I=pi/n*ta*(subs(sym(f),t,ta*cos(pi/(2*n))+tb)*sqrt(1-cos(pi/(2*n))^2)+...

          subs(sym(f),t,ta*cos(3*pi/(2*n))+tb)*sqrt(1-cos(3*pi/(2*n))^2)+...

          subs(sym(f),t,ta*cos(5*pi/(2*n))+tb)*sqrt(1-cos(5*pi/(2*n))^2)+...

          subs(sym(f),t,ta*cos(7*pi/(2*n))+tb)*sqrt(1-cos(7*pi/(2*n))^2));

end

 

     I=simplify(I);

     I=vpa(I,6);

 

syms x

f=1/(1+x^2);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值