function x=MyTDMA
%首先说明:追赶法是适用于三对角矩阵的线性方程组求解的方法,并不适用于其他类型矩阵。
%定义三对角矩阵A的各组成单元。方程为Ax=f
% b为A的对角线元素(1~n),a为-1对角线元素(2~n),c为+1对角线元素(1~n-1)。
% A=[2 -1 0 0
% -1 3 -2 0
% 0 -2 4 -3
% 0 0 -3 5]
a=[0 -1 -2 -3];b=[2 3 4 5];c=[-1 -2 -3];f=[6 1 -2 1];
%消去过程
n=length(b);
u=zeros(n,1);
l=zeros(n,1);
y=zeros(n,1);
u(1)=b(1);
y(1)=f(1);
for i=2:n
l(i)=a(i)/u(i-1);
u(i)=b(i)-l(i)*c(i-1);
y(i)=f(i)-l(i)*y(i-1);
end
%回带过程
x=zeros(n,1);
x(n)=y(n)/u(n);
for i=(n-1):-1:1
x(i)=(y(i)-c(i)*x(i+1))/u(i);
end