matlab数值分析
线性代数的直接接法追赶法求解线性方程组Ax=b,其中A是三对角方阵
%追赶法求解线性方程组Ax=b,其中A是三对角方阵function x=tridiagsolver(A,b)[n,n]=size(A);for i=1:nif(i==1)l(i)=A(i,i);y(i)=b(i)/l(i);else i<nl(i)=A(i,i)-A(i,i-1)*u(i-1);y(i)=(b(i)-A(i,i-1)*y(i-1))/l(i);endif(i<n)u(i)=A(i,i+1)/l(i);endendx(n)=y(n);for j=n-1:-1:1x(j)=y(j)-x(j+1)*u(j);end
调用程序
clcclearA=[2,-1,0,0;-1,3,-2,0;0,-2,4,-3;0,0,-3,5];b=[6;1;-2;1];x= tridiagsolver(A,b)