Catherine_000 2021-11-02 12:53 采纳率: 100%
浏览 71
已结题

数值分析问题,这个公式对吗

这个是追赶法的一个公式,请帮忙看看是对的吗?这是追赶法的公式吧?追赶法的公式是这个吧

img

  • 写回答

1条回答 默认 最新

  • joel_1993 2021-11-02 13:41
    关注

    你好追赶法公式就是这样,只是三角分解更简单了罢了,下面代码供参考:

    function x = chase(a, b, c, d)
    if(numel(a)+1~=numel(b)||numel(b)~=numel(c)+1||numel(b)~=numel(d))
        error('Not valid input, please check length of a,b,c,and d!')
    end
    a = a(:); b = b(:); c = c(:); d = d(:);
    if(abs(b(1))-abs(c(1))<=0 || abs(b(end))-abs(a(end))<=0 || abs(a(end))<=0 || abs(c(1))<=0)
        error('Input not satisfy the Tri condition');
    elseif(numel(b)>=3 && any(abs(b(2:end-1))-abs(a(1:end-1))-abs(c(2:end))<0))
        error('Input not satisfy the Tri condition');
    end
    p = zeros(size(b));
    q = zeros(size(a));
    n = numel(b);
    p(1) = b(1);
    for i = 1:1:n-1
        q(i) = c(i)/p(i);
        p(i+1) = b(i+1) - a(i)*q(i);
    end
    y = zeros(n,1);
    y(1) = d(1)/p(1);
    for i = 2:1:n
        y(i) = (d(i) - a(i-1)*y(i-1))/p(i);
    end
    x = zeros(n,1);
    x(n) = y(n);
    for j = n-1:-1:1
        x(j) = y(j) - q(j)*x(j+1);
    end
    end
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 11月11日
  • 已采纳回答 11月4日
  • 赞助了问题酬金 11月4日
  • 创建了问题 11月2日

悬赏问题

  • ¥15 python 用Dorc包报错,我的写法和网上教的是一样的但是它显示无效参数,是什么问题
  • ¥15 指定IP电脑的访问设置
  • ¥30 matlab ode45 未发现警告,但是运行出错
  • ¥15 vscode platformio
  • ¥15 代写uni代码,app唤醒
  • ¥15 全志t113i启动qt应用程序提示internal error
  • ¥15 ensp可以看看嘛.
  • ¥80 51单片机C语言代码解决单片机为AT89C52是清翔单片机
  • ¥60 优博讯DT50高通安卓11系统刷完机自动进去fastboot模式
  • ¥15 minist数字识别
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部