声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 829|回复: 1

[编程技巧] 求助!一个追赶法问题~忘高人解答!

[复制链接]
发表于 2010-7-10 08:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
一个追赶法问题~忘高人解答!
function x=zhuiganfa1(A,d)
%首先说明:追赶法是适用于三对角矩阵的线性方程组求解的方法,并不适用于其他类型矩阵。
%定义三对角矩阵A的各组成单元。方程为Ax=d
%    b为A的对角线元素(1~n),a为-1对角线元素(1~n-1),c为+1对角线元素(1~n-1)。
%    A=[2  -1  0    0
%       -1  3  -2   0
%       0  -2  4   -3
%       0  0   -3   5]
a=diag(A,-1); c=diag(A,1); b=diag(A); n=size(A);
%“追”的过程
y(1)=d(1)/b(1); w(1)=c(1)/b(1);
for i=2:(n-1)
    y(i)=(d(i)-a(i-1)*y(i-1))/(b(i)-a(i-1)*w(i-1))
        w(i)=c(i)/(b(i)-a(i-1)*w(i-1))
end
y(n)=(d(n)-a(n-1)*y(n-1))/(b(n)-a(n-1)*w(n-1));
%“赶”的过程
x(n)=y(n);
for i=(n-1):-1:1
    x(i)=y(i)-w(i)*x(i+1);
end


??? Error using ==> minus
Matrix dimensions must agree.
Error in ==> zhuiganfa1 at 18
y(n)=(d(n)-a(n-1)*y(n-1))/(b(n)-a(n-1)*w(n-1));
我用的矩阵的一个元素,怎么会说维数不一样呢?
谢谢大家~~问题解决了:size函数的用法没有理解好!!!谢谢大家的围观。。。。。。

[ 本帖最后由 ChaChing 于 2010-7-10 11:11 编辑 ]

评分

1

查看全部评分

回复
分享到:

使用道具 举报

发表于 2010-7-10 11:10 | 显示全部楼层
参考下length函数!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-16 14:49 , Processed in 0.065981 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表