⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lumanual.m

📁 programas matlab metodos numericos
💻 M
字号:
n=length(A)-1;
%obtiene el largo de la matriz X
d=1;
for j=2:n
d=det(A(1:j,1:j))*d;
end
%verifica si tiene descomposicion LU (no tiene si d=0)
if d~=0
    for k= 1 :n-1 
        filas= k+1:n;
        if A(k,k)==0 % rota las filas si encuentra un pivote nulo
            i=k+1;
            while A(i,k)==0 
               i=i+1;
            end
            f(k:n+1)=A(i,k:n+1);
            A(i,k:n+1)=A(k,k:n+1);
            A(k,k:n+1)=f(k:n+1);
        end
        A(filas,k)=A(filas,k)/A(k,k);
        A(filas,filas)=A(filas,filas)-A(filas,k)*A(k,filas);
    end
    % descomposicion LU de la matriz A (la que dio el tipo)
    s(1,1)=A(1,n+1);
    for i=2:n
        s(i,1)=(A(i,n+1)-A(i,1:i-1)*s(1:i-1,1));
    end
    % resuelve el sistema L*s=v
    x(n,1)=s(n,1)/A(n,n);
    for k=n-1:-1:1
        x(k,1)=(s(k,1)-A(k,k+1:n)*x(k+1:n,1))/A(k,k);
    end
    %resuelve el sistema U*x=s
     x
    %muestra x
else
    %codigo cuando no se puede resolver

    'segui participando'
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -