In der numerischen Mathematik ist das Sucessive Over Relaxation -Verfahren, auch SOR-Vefahren genannt, ein Algorithmus zur näherungsweisen Lösung von linearen Gleichungssystemen
A
x
=
b
{\displaystyle Ax=b}
. Es ist, wie das Gauß-Seidel-Verfahren , ein spezielles Splitting-Verfahren .
Gegeben ist ein lineares Gleichungssystem mit n Variablen mit n Gleichungen.
a
1
;
1
⋅
x
1
+
⋯
+
a
1
;
n
⋅
x
n
=
b
1
a
2
;
1
⋅
x
1
+
⋯
+
a
2
;
n
⋅
x
n
=
b
2
⋮
a
n
;
1
⋅
x
1
+
⋯
+
a
n
;
n
⋅
x
n
=
b
n
{\displaystyle {\begin{matrix}a_{1;1}\cdot x_{1}+\dots +a_{1;n}\cdot x_{n}&=&b_{1}\\a_{2;1}\cdot x_{1}+\dots +a_{2;n}\cdot x_{n}&=&b_{2}\\&\vdots &\\a_{n;1}\cdot x_{1}+\dots +a_{n;n}\cdot x_{n}&=&b_{n}\\\end{matrix}}}
Der Algorithmus verwendet eine Matrix
A
~
=
(
a
~
i
j
)
{\displaystyle {\tilde {A}}=({\tilde {a}}_{ij})}
mit
a
~
i
j
=
−
a
i
j
a
i
i
w
{\displaystyle {\tilde {a}}_{ij}={-{\frac {a_{ij}}{a_{ii}}}w}}
falls
i
≠
j
{\displaystyle i\neq j}
, bzw.
a
~
i
j
=
1
−
w
{\displaystyle {\tilde {a}}_{ij}=1-w}
falls
i
≠
j
{\displaystyle i\neq j}
und den Vektor
c
i
=
b
i
a
i
i
w
{\displaystyle c_{i}={\frac {b_{i}}{a_{ii}}}w}
mit
i
=
1
,
2
,
…
,
n
{\displaystyle i=1,2,\ldots ,n}
. Dabei ist
w
{\displaystyle w}
ein reeller Überrelaxtionsparameter. Für
w
=
1
{\displaystyle w=1}
erhält man wieder ein Einzelschrittvervahren. Das Verfahren konvergiert für jedes
w
∈
(
0
,
2
)
{\displaystyle w\in (0,2)}
, falls A symmetrisch positiv definit ist. Um das Gleichungssystem zu lösen, wird die i -te Gleichung nach der i -ten Variable xi aufgelöst,
x
i
m
+
1
=
∑
j
=
1
i
−
1
a
~
i
j
x
j
m
+
1
+
∑
j
=
1
n
a
~
i
j
x
j
m
+
c
i
{\displaystyle x_{i}^{m+1}=\sum \limits _{j=1}^{i-1}{{\tilde {a}}_{ij}}x_{j}^{m+1}+\sum \limits _{j=1}^{n}{{\tilde {a}}_{ij}}x_{j}^{m}+c_{i}}
.
Algorithmus
Wähle
x
0
{\displaystyle x^{0}}
Für
m
=
0
,
1
,
…
{\displaystyle m=0,1,\ldots }
berechne
Für
i
=
0
,
1
,
…
,
n
{\displaystyle i=0,1,\ldots ,n}
berechne
x
i
m
+
1
=
∑
j
=
1
i
−
1
a
~
i
j
x
j
m
+
1
+
∑
j
=
1
n
a
~
i
j
x
j
m
+
c
i
{\displaystyle x_{i}^{m+1}=\sum \limits _{j=1}^{i-1}{{\tilde {a}}_{ij}}x_{j}^{m+1}+\sum \limits _{j=1}^{n}{{\tilde {a}}_{ij}}x_{j}^{m}+c_{i}}
.
Konsistenzbeweis
A
=
L
+
D
+
R
{\displaystyle A=L+D+R}
M
ω
=
(
D
+
ω
L
)
−
1
(
(
1
−
ω
)
D
−
ω
R
)
{\displaystyle M_{\omega }=(D+\omega \,L)^{-1}\,((1-\omega )\,D-\omega \,R)}
N
ω
=
ω
(
D
+
ω
L
)
−
1
{\displaystyle N_{\omega }=\omega \,(D+\omega \,L)^{-1}}
Zeige:
x
=
A
−
1
b
{\displaystyle x=A^{-1}\,b}
ist ein Fixpunkt von
Ψ
(
x
)
=
M
ω
x
+
N
ω
b
{\displaystyle \Psi (x)=M_{\omega }\,x+N_{\omega }\,b}
x
=
M
ω
x
+
N
ω
b
{\displaystyle x=M_{\omega }\,x+N_{\omega }\,b}
⇔
(
D
+
ω
L
)
x
=
(
(
1
−
ω
)
D
−
ω
R
)
x
+
ω
(
D
+
L
+
R
)
x
=
D
x
+
ω
L
x
{\displaystyle \Leftrightarrow (D+\omega \,L)\,x=((1-\omega )\,D-\omega \,R)\,x+\omega \,(D+L+R)\,x=D\,x+\omega \,L\,x}
gilt für alle x
⇒
{\displaystyle \Rightarrow }
x ist ein Fixpunkt.