function x = nopvt(A,b) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Solution of Ax = b with no-pivoting. % x = b; n = length(b); % %%%%%%%%%%%%%%%%%%%%% % Forward elimination % % %%%%%%%%%%%%%%%%%%%%% for k = 1:n-1 % % Eliminate x_k from equations k+1 to n % % Compute the multipliers, overwriting A(k+1:n,k) % A(k+1:n,k) = A(k+1:n,k)/A(k,k); % % Subtract m(k+1:n) times equation k from equations k+1:n % A(k+1:n,k+1:n) = A(k+1:n,k+1:n) - A(k+1:n,k)*A(k,k+1:n); x(k+1:n) = x(k+1:n) - A(k+1:n,k)*x(k); end % %%%%%%%%%%%%%%%%%%% % Back substitution % % %%%%%%%%%%%%%%%%%%% L = eye(n) + tril(A,-1); L, U=triu(A) x(n) = x(n)/A(n,n); for k = n-1:-1:1, % % Substitute x(k+1) to x(n) (now known) % into equation k, then solve for x(k). % x(k) = (x(k) - A(k,k+1:n)*x(k+1:n))/A(k,k); end