weixin_48994902 2021-11-25 17:14 采纳率: 50%
浏览 884
已结题

数值积分计算,复合梯形及复合辛普森积分

用不同数值方法计算积分

img

(1)取不同的步长h,分别用复合梯形及复合辛普森求积计算积分,给出误差中关于h的函数,并与积分精确值比较两个公式的精度,是否存在一个最小的h,使得精度不能再被改善?
(2)用龙贝格求积计算完成问题(1)。
(3)用自适应辛普森积分,使得精度达到 10-4次

想要matlab代码

  • 写回答

1条回答 默认 最新

  • 技术专家团-Joel 2021-11-25 20:42
    关注

    回答第一题

    f = @(x) sqrt(x).*log(x).*(x>0)+0.*(x<=0); % 函数
    narr = 10.^(1:8); % 分段从10~100000000,h从十分之一到亿分之一
    err1 = zeros(size(narr));
    err2 = zeros(size(narr));
    for i = 1:length(narr)
        n = narr(i);
        a = 0;
        b = 1;
        xi = linspace(a,b,n+1);
        h = (b-a)/n;
        % 复合梯形法
        S1 = sum([0, 2*f(xi(2:end)), f(b)])*h/2;
        % 复合辛普森法
        if(mod(n,2)~=0)
            n = n+1;
        end
        xi = linspace(a,b,n+1);
        h = (b-a)/n;
        S2 = sum([0, f(b), 4*f(xi(2:2:end-1)), 2*f(xi(3:2:end-2))])*h/3;
        err1(i) = abs((S1-(-4/9))/(-4/9)); % 求误差
        err2(i) = abs((S2-(-4/9))/(-4/9)); % 求误差
    end
    loglog(1./narr, err1, 'r-*', 1./narr, err2, 'b-o') % 画误差对h的对数坐标图
    xlabel('h'); ylabel('error')
    legend('复合梯形法','复合辛普森法')
    

    img

    可见在相同步长h时,复合辛普森法要比复合梯形法精度要高,且随着步长减小,相对误差也减小,且可见相对误差与步长的关系符合幂指数形式

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月8日
  • 已采纳回答 11月30日
  • 创建了问题 11月25日

悬赏问题

  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)