SOR Verfahren < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Hi, hoffe hier kann mir jemand helfen. Bin schon seit Tagen an meinem Programm, aber irgendwie konvergiert es nicht. Die Iterationsmatrix sollte stimmen, aber die Werte gehen immer weiter weg, bis NaN.
[code]
function [x]= sor(A,b,w,x0,eps)
% SOR-Verfahren Lösung von LGS Ax=b
% A Matrix des LGS
% b Ergebniss des LGS (rechte Seite)
% w Relaxionsparameter
% x0 Startvektor
% eps Fehlerschranke
% x Ergeniss Vektor x
% i Anzahl der Iterationen
% Bilden der Diagonalmatrix D und Dreiecksmatrizen L und R
L=tril(A,-1);
R=triu(A,1);
D=diag(diag(A));
for i=1:100;
x=(inv(D+w*L))*((1-w)*D-w*R)*x0+w*b;
for k=1:n
F(k)=abs(x0(k)-x(k));
end
if sum(F)<eps;
break,
end
x0=x;
end
i
Danke schonmal,
Mfg
Dateianhang 1
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt
Dateianhänge: Anhang Nr. 1 (Typ: m) [nicht öffentlich]
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 11:27 Sa 16.01.2010 | Autor: | Frasier |
Hallo ZoulR3av3r,
eigentlich kann der Code gar nicht laufen. In der inneren for-Schleife steht ein n, das hast du nicht definiert.
lg
F.
|
|
|
|