please I wrote this code to solve an equation of linear systems using LU factorization but it keeps giving me zeros as the value of x. please can someone help? thanks in advance
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
function [ x,u,l ] = trial2( A )
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
%let i represent columns
%let j repesent rows
% declaration comes first
n = size(A,1);
x = zeros(n,1);
b = zeros(n,1);
y = zeros (n,1);
% to compute for lower triangular matrix
for i = 1:(n-1);
for j = i+1:n;
d = A(j,i)/A(i,i);
A(:,i) = A(:,i)-d*A(:,j);
end
end
l = tril(A);
% to compute for the value of y using forward elimination
b(n) = l(n,n)*y(n);
for j = 2: n;
b(j) = b(j)-l(j,i)*y(i);
y(j) = b(j)/l(j,j);
end
% to compute for the upper triangular matrix
for i = 1:(n-1);
for j = i+1:n;
d = A(j,i)/A(i,i);
A(j,:) = A(j,:)-d*A(i,:);
end
end
u = triu(A);
% to compute for the value of x using backward substitution
y(n) = u(n,n)*x(n);
for j =n:-1:1;
x(j) = x(j) - u(j,i)* x(i);
x(j) = y(j)/u(j,j);
end
end
0 Commenti
Risposte (1)
Jason R
il 13 Giu 2014
It seems that you initialize y as a vector of zeros (y = zeros (n,1);) and then use y to solve for b(n) and b(j) without updating y to a non-zero vector. This makes b(n) and b(j) end up being 0. There may be more issues but this should help.
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!