Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- JACOBI:
- function X=jacobi(A,B,X0,tol,kmax)
- % Χ0: το διάνυσμα της αρχικής εκτίμησης της λύσης.
- % tol: η ακρίβεια ε.
- % kmax: ο μέγιστος αριθμός επαναλήψεων.
- N = length(B); % διάσταση του πίνακα Β.
- for k=1:kmax
- for j=1:N
- X(j)=(B(j)-A(j,[1:j-1,j+1:N])*X0([1:j-1,j+1:N]))/A(j,j);
- end
- err=abs(norm((X'-X0),inf)); % εύρεση της νόρμας της εξίσωσης (6).
- X0 = X';
- if err < tol % έλεγχος του κριτηρίου της εξίσωσης (6).
- k
- break
- end
- end
- X=X';
- GAUSSIAN
- function X=gauseid(A,B,X0,tol,kmax)
- N = length(B);
- for k=1:kmax
- for j=1:N
- if j==1
- X(1)=(B(1)-A(1,2:N)*X0(2:N))/ A(1,1); %εξίσωση (7) για m=1.
- elseif j==N
- X(N)=(B(N)-A(N,1:N-1)*(X(1:N-1))')/ A(N,N); % εξίσωση (7) για m=N.
- else
- X(j)=(B(j)-A(j,1:j-1)*X(1:j-1)'-A(j,j+1:N)* X0(j+1:N)) / A(j,j); % εξίσωση (7).
- end
- end
- err=abs(norm((X'-X0),inf)); %εύρεση της νόρμας της εξίσωσης (6).
- X0=X';
- if err < tol % έλεγχος του κριτηρίου της εξίσωσης (6).
- k
- break
- end
- end
- X=X';
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement