数值分析课的作业
单从题目来看,矩阵A和矩阵B都是三对角矩阵
参考资料:块三对角矩阵方程的追赶法及其应用 - 豆丁网Docin
推导过程如下:
求解matlab程序:文章来源:https://www.toymoban.com/news/detail-630219.html
function x=tridiagsolver_block(n)
c=(1:n^2);
for i=1:n,
a{i}=c(i:i+n-1);
b{i}=a{i}';
end
B=diag(repmat([4], 1, n))+diag(repmat([-1], 1, n-1), 1)+diag(repmat([-1], 1, n-1), -1);%矩阵B
G{1}=B;
D{1}=-inv(G{1});
y{1}=inv(B)*b{1};
for i=2:n-1,
G{i}=B+D{i-1};
D{i}=-inv(G{i});
y{i}=inv(G{i})*(b{i}+y{i-1});
end
G{n}=B+D{n-1};
D{n}=-inv(G{n});
y{n}=inv(G{n})*(b{n}+y{n-1});
x{n}=y{n};
for i=n-1:-1:1,
x{i}=y{i}-D{i}*x{i+1};
end
注意,此处要使用cell数据类型将矩阵存储到A中,所以均采用“{}”,最后调用函数输入n就行啦^_^ 文章来源地址https://www.toymoban.com/news/detail-630219.html
到了这里,关于追赶法求解块三对角矩阵以及matlab代码实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!