function [b,A]=gauss_MATLAB(A,b) % Función que resuelve un sistema lineal de ecuaciones compatible determinado % por el método de Gauss utilizando las posibilidades que ofrece el calculo % matricial de MATLAB. % Ultano Kindelán, Álgebra ETSIME, UPM. 09/2022 % Variables de entrada: % A = Matriz de coeficientes. % b= Vector de términos independientes. % Variables de salida % A = Matriz de coeficientes escalonada % b = Vector con la solución del sistema % Se pone a cero el cronómetro. tic % Obtención de la dimensión del sistema. n=size(A,1); %Paso 1 (triangularización) icero = 0; for k=1:n-1 %Intercambio de filas si es necesario if (abs(A(k,k))eps) A = intercambio_de_filas(A,k,i); b = intercambio_de_filas(b,k,i); icero = 0; else i=i+1; end end end if (icero) disp("El sistema no es compatible determinado"); return; end % Pivoteo hacia abajo for i=k+1:n m=-A(i,k)/A(k,k); % Se suma la fila k multiplicada por m a la fila i sin necesidad de utilizar un bucle: A(i,:)=A(i,:)+m*A(k,:); b(i)=b(i)+m*b(k); end end if(abs(A(n,n))