有偿解答,MATLAB的

img


利用MATLAB解题,希望带解释。我理解不了。希望有人可以帮助我理解,附带MATLAB的运行图和过程。

举个栗子 高斯消元法解方程
列主元消去法

img

解方程组

img


②LU分解法解方程组

function agui_lu(a,b)
%求可逆矩阵a的Doolittle分解,1返回单位下三角矩阵,u返回上三角矩阵n=length(a);
n=length(a);
u=zeros(n,n);
l=eye(n,n);
u(1,:)=a(1,:);
l(2:n,1)=a(2:n,1)/u(1,1);
    for k=2:n
        u(k,k:n)=a(k,k:n)-l(k,1:k-1)*u(1:k-1,k:n);
        l(k+1:n,k)=(a(k+1:n,k)-l(k+1:n,1:k-1)*u(1:k-1,k))/u(k,k);
    end
l
u
%解Ly=b
y=zeros(n,1);
y(1)=b(1);
    for k=2:n
        y(k)=b(k)-l(k,1:k-1)*y(1:k-1);
    end
%解Ux=y
x=zeros(n,1);
x(n)=y(n)/u(n,n);
    for k=(n-1):-1:1
        x(k)=(y(k) -u(k,(k+1):n)*x((k+1):n))/u(k,k);
end
x


运行截图

img

方程你自己列嘛

方程

img


M函数

function x=nagauss2(a,b,flag)
if margin<3,flag=0;end
n=length(b);a=[a,b];
for k=1:(n-1)
[ap,p]=max(abs(a(k:n,k)));
p=p+k-1;
if p>k,
    t=a(k,:);a(k,:)=a(p,:);a(p,:)=t;
end
a((k+1):n,(k+1):(n+1))=a((k+1):n,(k+1):(n+1))…-a((k+1):n,k)/a(k,k)*(k,(k+1));
a((k+1):n,k)=zeros(n-k,1);
if flag==0,a,end
end
x=zeros(n,1);
x(n)=a(n,n+1)/a(n,n);
for k=n-1:-1:1
  x(k)=(a(k,n+1))-a(k,(k+1):n)*x((k+1):n)/a(k,k);
end
%列主元高斯消取法代码
A=[15 17 19;0.30 0.40 0.55;1.0 1.2 1.5];b=[3890 95 282];
X=nagauss2(A,b)