Hestenes y Stiefel, los inventores del método del gradiente conjugado, derivaron el método del más general método de las direcciones conjugadas en el contexto de la minimización de la función cuadrática
f
(
x
)
=
1
2
x
T
A
x
−
b
T
x
.
{\displaystyle f(\mathbf {x} )={\frac {1}{2}}\mathbf {x} ^{\mathrm {T} }\mathbf {Ax} -\mathbf {b} ^{\mathrm {T} }\mathbf {x} {\text{.}}}
En el método de las direcciones conjugadas se elige una serie de direcciones
p
0
,
p
1
,
p
2
,
…
{\displaystyle \mathbf {p} _{0},\mathbf {p} _{1},\mathbf {p} _{2},\ldots }
que son conjugadas mutuamente, en otras palabras,
⟨
p
i
,
A
p
i
⟩
=
0
{\displaystyle \langle \mathbf {p} _{i},\mathbf {Ap} _{i}\rangle =0}
para
i
≠
j
{\displaystyle i\neq j}
. La iteración se inicia con una solución aproximada
x
0
{\displaystyle \mathbf {x} _{0}}
y el correspondiente residuo
r
0
{\displaystyle \mathbf {r} _{0}}
y procede con los siguientes pasos para
i
=
0
,
1
,
2
,
…
{\displaystyle i=0,1,2,\ldots }
:
α
i
=
⟨
p
i
,
r
i
⟩
⟨
p
i
,
A
p
i
⟩
,
{\displaystyle \alpha _{i}={\frac {\langle \mathbf {p} _{i},\mathbf {r} _{i}\rangle }{\langle \mathbf {p} _{i},\mathbf {Ap} _{i}\rangle }}{\text{,}}}
x
i
+
1
=
x
i
+
α
i
p
i
,
{\displaystyle \mathbf {x} _{i+1}=\mathbf {x} _{i}+\alpha _{i}\mathbf {p} _{i}{\text{,}}}
r
i
+
1
=
r
i
+
α
i
A
p
i
.
{\displaystyle \mathbf {r} _{i+1}=\mathbf {r} _{i}+\alpha _{i}\mathbf {Ap} _{i}{\text{.}}}
El método del gradiente conjugado también se puede ver como una variante de la iteración de Arnoldi/Lanczos aplicada a la solución de los sistemas lineales.
El método de Arnoldi general
editar
En la iteración de Arnoldi, se comienza con un vector
r
0
{\displaystyle {\boldsymbol {r}}_{0}}
y construye gradualmente una base ortonormal
{
v
1
,
v
2
,
v
3
,
…
}
{\displaystyle \{{\boldsymbol {v}}_{1},{\boldsymbol {v}}_{2},{\boldsymbol {v}}_{3},\ldots \}}
del subespacio de Krylov
K
(
A
,
r
0
)
=
{
r
0
,
A
r
0
,
A
2
r
0
,
…
}
{\displaystyle {\mathcal {K}}({\boldsymbol {A}},{\boldsymbol {r}}_{0})=\{{\boldsymbol {r}}_{0},{\boldsymbol {Ar}}_{0},{\boldsymbol {A}}^{2}{\boldsymbol {r}}_{0},\ldots \}}
mediante la definición de
v
i
=
w
i
/
‖
w
i
‖
2
{\displaystyle {\boldsymbol {v}}_{i}={\boldsymbol {w}}_{i}/\lVert {\boldsymbol {w}}_{i}\rVert _{2}}
donde
w
i
=
{
r
0
si
i
=
1
,
A
v
i
−
1
−
∑
j
=
1
i
−
1
(
v
j
T
A
v
i
−
1
)
v
j
si
i
>
1
.
{\displaystyle {\boldsymbol {w}}_{i}={\begin{cases}{\boldsymbol {r}}_{0}&{\text{si }}i=1{\text{,}}\\{\boldsymbol {Av}}_{i-1}-\sum _{j=1}^{i-1}({\boldsymbol {v}}_{j}^{\mathrm {T} }{\boldsymbol {Av}}_{i-1}){\boldsymbol {v}}_{j}&{\text{si }}i>1{\text{.}}\end{cases}}}
En otras palabras, para
i
>
1
{\displaystyle i>1}
,
v
i
{\displaystyle {\boldsymbol {v}}_{i}}
se obtiene a través de la ortogonalización de Gram-Schmidt de
A
v
i
−
1
{\displaystyle {\boldsymbol {Av}}_{i-1}}
contra
{
v
1
,
v
2
,
…
,
v
i
−
1
}
{\displaystyle \{{\boldsymbol {v}}_{1},{\boldsymbol {v}}_{2},\ldots ,{\boldsymbol {v}}_{i-1}\}}
seguida por la normalización.
Expresada en la forma matricial, la iteración se capta por la ecuación
A
V
i
=
V
i
+
1
H
~
i
{\displaystyle {\boldsymbol {AV}}_{i}={\boldsymbol {V}}_{i+1}{\boldsymbol {\tilde {H}}}_{i}}
donde
V
i
=
[
v
1
v
2
⋯
v
i
]
,
H
~
i
=
[
h
11
h
12
h
13
⋯
h
1
,
i
h
21
h
22
h
23
⋯
h
2
,
i
h
32
h
33
⋯
h
3
,
i
⋱
⋱
⋮
h
i
,
i
−
1
h
i
,
i
h
i
+
1
,
i
]
=
[
H
i
h
i
+
1
,
i
e
i
T
]
{\displaystyle {\begin{aligned}{\boldsymbol {V}}_{i}&={\begin{bmatrix}{\boldsymbol {v}}_{1}&{\boldsymbol {v}}_{2}&\cdots &{\boldsymbol {v}}_{i}\end{bmatrix}}{\text{,}}\\{\boldsymbol {\tilde {H}}}_{i}&={\begin{bmatrix}h_{11}&h_{12}&h_{13}&\cdots &h_{1,i}\\h_{21}&h_{22}&h_{23}&\cdots &h_{2,i}\\&h_{32}&h_{33}&\cdots &h_{3,i}\\&&\ddots &\ddots &\vdots \\&&&h_{i,i-1}&h_{i,i}\\&&&&h_{i+1,i}\end{bmatrix}}={\begin{bmatrix}{\boldsymbol {H}}_{i}\\h_{i+1,i}{\boldsymbol {e}}_{i}^{\mathrm {T} }\end{bmatrix}}\end{aligned}}}
with
h
j
i
=
{
v
j
T
A
v
i
si
j
≤
i
,
‖
w
i
+
1
‖
2
si
j
=
i
+
1
,
0
si
j
>
i
+
1
.
{\displaystyle h_{ji}={\begin{cases}{\boldsymbol {v}}_{j}^{\mathrm {T} }{\boldsymbol {Av}}_{i}&{\text{si }}j\leq i{\text{,}}\\\lVert {\boldsymbol {w}}_{i+1}\rVert _{2}&{\text{si }}j=i+1{\text{,}}\\0&{\text{si }}j>i+1{\text{.}}\end{cases}}}
Cuando se aplica la iteración de Arnoldi a la solución de los sistemas lineals, se comienza con
r
0
=
b
−
A
x
0
{\displaystyle {\boldsymbol {r}}_{0}={\boldsymbol {b}}-{\boldsymbol {Ax}}_{0}}
, el residuo correspondiente a la aproximación inicial
x
0
{\displaystyle {\boldsymbol {x}}_{0}}
. Después de cada paso de la iteración, se computa
y
i
=
H
i
−
1
(
‖
r
0
‖
2
e
1
)
{\displaystyle {\boldsymbol {y}}_{i}={\boldsymbol {H}}_{i}^{-1}(\lVert {\boldsymbol {r}}_{0}\rVert _{2}{\boldsymbol {e}}_{1})}
y la nueva aproximación
x
i
=
x
0
+
V
i
y
i
{\displaystyle {\boldsymbol {x}}_{i}={\boldsymbol {x}}_{0}+{\boldsymbol {V}}_{i}{\boldsymbol {y}}_{i}}
.
El método de Lanczos directo
editar
Para el resto de la discusión, se supone que
A
{\displaystyle {\boldsymbol {A}}}
es simétrica definida positiva. Con la simetría de
A
{\displaystyle {\boldsymbol {A}}}
, la matriz superior de Hessenberg
H
i
=
V
i
T
A
V
i
{\displaystyle {\boldsymbol {H}}_{i}={\boldsymbol {V}}_{i}^{\mathrm {T} }{\boldsymbol {AV}}_{i}}
se hace simétrica y por lo tanto tridiagonal. Entonces se puede representar más claramente por
H
i
=
[
a
1
b
2
b
2
a
2
b
3
⋱
⋱
⋱
b
i
−
1
a
i
−
1
b
i
b
i
a
i
]
.
{\displaystyle {\boldsymbol {H}}_{i}={\begin{bmatrix}a_{1}&b_{2}\\b_{2}&a_{2}&b_{3}\\&\ddots &\ddots &\ddots \\&&b_{i-1}&a_{i-1}&b_{i}\\&&&b_{i}&a_{i}\end{bmatrix}}{\text{.}}}
Esto permite una corta recurrencia de tres términos para
v
i
{\displaystyle {\boldsymbol {v}}_{i}}
en la iteración, y así la iteración de Arnoldi se reduce a la iteración de Lanczos.
Ya que
A
{\displaystyle {\boldsymbol {A}}}
es simétrica definida positiva,
H
i
{\displaystyle {\boldsymbol {H}}_{i}}
también lo es. Por lo tanto,
H
i
{\displaystyle {\boldsymbol {H}}_{i}}
se puede factorizar LU sin pivoteo parcial en
H
i
=
L
i
U
i
=
[
1
c
2
1
⋱
⋱
c
i
−
1
1
c
i
1
]
[
d
1
b
2
d
2
b
3
⋱
⋱
d
i
−
1
b
i
d
i
]
{\displaystyle {\boldsymbol {H}}_{i}={\boldsymbol {L}}_{i}{\boldsymbol {U}}_{i}={\begin{bmatrix}1\\c_{2}&1\\&\ddots &\ddots \\&&c_{i-1}&1\\&&&c_{i}&1\end{bmatrix}}{\begin{bmatrix}d_{1}&b_{2}\\&d_{2}&b_{3}\\&&\ddots &\ddots \\&&&d_{i-1}&b_{i}\\&&&&d_{i}\end{bmatrix}}}
con las recurrencias convenientes para
c
i
{\displaystyle c_{i}}
y
d
i
{\displaystyle d_{i}}
:
c
i
=
b
i
/
d
i
−
1
,
d
i
=
{
a
1
si
i
=
1
,
a
i
−
c
i
b
i
si
i
>
1
.
{\displaystyle {\begin{aligned}c_{i}&=b_{i}/d_{i-1}{\text{,}}\\d_{i}&={\begin{cases}a_{1}&{\text{si }}i=1{\text{,}}\\a_{i}-c_{i}b_{i}&{\text{si }}i>1{\text{.}}\end{cases}}\end{aligned}}}
Se varía
x
i
=
x
0
+
V
i
y
i
{\displaystyle {\boldsymbol {x}}_{i}={\boldsymbol {x}}_{0}+{\boldsymbol {V}}_{i}{\boldsymbol {y}}_{i}}
en
x
i
=
x
0
+
V
i
H
i
−
1
(
‖
r
0
‖
2
e
1
)
=
x
0
+
V
i
U
i
−
1
L
i
−
1
(
‖
r
0
‖
2
e
1
)
=
x
0
+
P
i
z
i
{\displaystyle {\begin{aligned}{\boldsymbol {x}}_{i}&={\boldsymbol {x}}_{0}+{\boldsymbol {V}}_{i}{\boldsymbol {H}}_{i}^{-1}(\lVert {\boldsymbol {r}}_{0}\rVert _{2}{\boldsymbol {e}}_{1})\\&={\boldsymbol {x}}_{0}+{\boldsymbol {V}}_{i}{\boldsymbol {U}}_{i}^{-1}{\boldsymbol {L}}_{i}^{-1}(\lVert {\boldsymbol {r}}_{0}\rVert _{2}{\boldsymbol {e}}_{1})\\&={\boldsymbol {x}}_{0}+{\boldsymbol {P}}_{i}{\boldsymbol {z}}_{i}\end{aligned}}}
con
P
i
=
V
i
U
i
−
1
,
z
i
=
L
i
−
1
(
‖
r
0
‖
2
e
1
)
.
{\displaystyle {\begin{aligned}{\boldsymbol {P}}_{i}&={\boldsymbol {V}}_{i}{\boldsymbol {U}}_{i}^{-1}{\text{,}}\\{\boldsymbol {z}}_{i}&={\boldsymbol {L}}_{i}^{-1}(\lVert {\boldsymbol {r}}_{0}\rVert _{2}{\boldsymbol {e}}_{1}){\text{.}}\end{aligned}}}
Ahora es crucial observar que
P
i
=
[
P
i
−
1
p
i
]
,
z
i
=
[
z
i
−
1
ζ
i
]
.
{\displaystyle {\begin{aligned}{\boldsymbol {P}}_{i}&={\begin{bmatrix}{\boldsymbol {P}}_{i-1}&{\boldsymbol {p}}_{i}\end{bmatrix}}{\text{,}}\\{\boldsymbol {z}}_{i}&={\begin{bmatrix}{\boldsymbol {z}}_{i-1}\\\zeta _{i}\end{bmatrix}}{\text{.}}\end{aligned}}}
De hecho, también existen recurrencias cortas para
p
i
{\displaystyle {\boldsymbol {p}}_{i}}
y
ζ
i
{\displaystyle \zeta _{i}}
:
p
i
=
1
d
i
(
v
i
−
b
i
p
i
−
1
)
,
α
i
=
−
c
i
ζ
i
−
1
.
{\displaystyle {\begin{aligned}{\boldsymbol {p}}_{i}&={\frac {1}{d_{i}}}({\boldsymbol {v}}_{i}-b_{i}{\boldsymbol {p}}_{i-1}){\text{,}}\\\alpha _{i}&=-c_{i}\zeta _{i-1}{\text{.}}\end{aligned}}}
Con esta formulación, llegamos a una recurrencia simple para
x
i
{\displaystyle {\boldsymbol {x}}_{i}}
:
x
i
=
x
0
+
P
i
z
i
=
x
0
+
P
i
−
1
z
i
−
1
+
ζ
i
p
i
=
x
i
−
1
+
ζ
i
p
i
.
{\displaystyle {\begin{aligned}{\boldsymbol {x}}_{i}&={\boldsymbol {x}}_{0}+{\boldsymbol {P}}_{i}{\boldsymbol {z}}_{i}\\&={\boldsymbol {x}}_{0}+{\boldsymbol {P}}_{i-1}{\boldsymbol {z}}_{i-1}+\zeta _{i}{\boldsymbol {p}}_{i}\\&={\boldsymbol {x}}_{i-1}+\zeta _{i}{\boldsymbol {p}}_{i}{\text{.}}\end{aligned}}}
Las anteriores relaciones resultan sencillamente en el método de Lanczos directo, que es un poco más complejo.
El método del gradiente conjugado de imponer la ortogonalidad y la conjugación
editar
Si se permite que
p
i
{\displaystyle {\boldsymbol {p}}_{i}}
se escale y compensa el escalamiento en el factor constante, potencialmente se puede obtener recurrencias más simples de la forma:
x
i
=
x
i
−
1
+
α
i
−
1
p
i
−
1
,
r
i
=
r
i
−
1
−
α
i
−
1
A
p
i
−
1
,
p
i
=
r
i
+
β
i
−
1
p
i
−
1
.
{\displaystyle {\begin{aligned}{\boldsymbol {x}}_{i}&={\boldsymbol {x}}_{i-1}+\alpha _{i-1}{\boldsymbol {p}}_{i-1}{\text{,}}\\{\boldsymbol {r}}_{i}&={\boldsymbol {r}}_{i-1}-\alpha _{i-1}{\boldsymbol {Ap}}_{i-1}{\text{,}}\\{\boldsymbol {p}}_{i}&={\boldsymbol {r}}_{i}+\beta _{i-1}{\boldsymbol {p}}_{i-1}{\text{.}}\end{aligned}}}
Como las premisas de la simplificación, ahora se deriva la ortogonalidad of
r
i
{\displaystyle {\boldsymbol {r}}_{i}}
y la conjugación de
p
i
{\displaystyle {\boldsymbol {p}}_{i}}
, es decir, para
i
≠
j
{\displaystyle i\neq j}
,
r
i
T
r
j
=
0
,
p
i
T
A
p
j
=
0
.
{\displaystyle {\begin{aligned}{\boldsymbol {r}}_{i}^{\mathrm {T} }{\boldsymbol {r}}_{j}&=0{\text{,}}\\{\boldsymbol {p}}_{i}^{\mathrm {T} }{\boldsymbol {Ap}}_{j}&=0{\text{.}}\end{aligned}}}
Los residuos son mutuamente ortogonales porque
r
i
{\displaystyle {\boldsymbol {r}}_{i}}
es esencialmente un múltiplo de
v
i
+
1
{\displaystyle {\boldsymbol {v}}_{i+1}}
, dado que para
i
=
0
{\displaystyle i=0}
,
r
0
=
‖
r
0
‖
2
v
1
{\displaystyle {\boldsymbol {r}}_{0}=\lVert {\boldsymbol {r}}_{0}\rVert _{2}{\boldsymbol {v}}_{1}}
, y para
i
>
0
{\displaystyle i>0}
,
r
i
=
b
−
A
x
i
=
b
−
A
(
x
0
+
V
i
y
i
)
=
r
0
−
A
V
i
y
i
=
r
0
−
V
i
+
1
H
~
i
y
i
=
r
0
−
V
i
H
i
y
i
−
h
i
+
1
,
i
(
e
i
T
y
i
)
v
i
+
1
=
‖
r
0
‖
2
v
1
−
V
i
(
‖
r
0
‖
2
e
1
)
−
h
i
+
1
,
i
(
e
i
T
y
i
)
v
i
+
1
=
−
h
i
+
1
,
i
(
e
i
T
y
i
)
v
i
+
1
.
{\displaystyle {\begin{aligned}{\boldsymbol {r}}_{i}&={\boldsymbol {b}}-{\boldsymbol {Ax}}_{i}\\&={\boldsymbol {b}}-{\boldsymbol {A}}({\boldsymbol {x}}_{0}+{\boldsymbol {V}}_{i}{\boldsymbol {y}}_{i})\\&={\boldsymbol {r}}_{0}-{\boldsymbol {AV}}_{i}{\boldsymbol {y}}_{i}\\&={\boldsymbol {r}}_{0}-{\boldsymbol {V}}_{i+1}{\boldsymbol {\tilde {H}}}_{i}{\boldsymbol {y}}_{i}\\&={\boldsymbol {r}}_{0}-{\boldsymbol {V}}_{i}{\boldsymbol {H}}_{i}{\boldsymbol {y}}_{i}-h_{i+1,i}({\boldsymbol {e}}_{i}^{\mathrm {T} }{\boldsymbol {y}}_{i}){\boldsymbol {v}}_{i+1}\\&=\lVert {\boldsymbol {r}}_{0}\rVert _{2}{\boldsymbol {v}}_{1}-{\boldsymbol {V}}_{i}(\lVert {\boldsymbol {r}}_{0}\rVert _{2}{\boldsymbol {e}}_{1})-h_{i+1,i}({\boldsymbol {e}}_{i}^{\mathrm {T} }{\boldsymbol {y}}_{i}){\boldsymbol {v}}_{i+1}\\&=-h_{i+1,i}({\boldsymbol {e}}_{i}^{\mathrm {T} }{\boldsymbol {y}}_{i}){\boldsymbol {v}}_{i+1}{\text{.}}\end{aligned}}}
Para ver la conjugación de
p
i
{\displaystyle {\boldsymbol {p}}_{i}}
, basta mostrar que
P
i
T
A
P
i
{\displaystyle {\boldsymbol {P}}_{i}^{\mathrm {T} }{\boldsymbol {AP}}_{i}}
es diagonal:
P
i
T
A
P
i
=
U
i
−
T
V
i
T
A
V
i
U
i
−
1
=
U
i
−
T
H
i
U
i
−
1
=
U
i
−
T
L
i
U
i
U
i
−
1
=
U
i
−
T
L
i
{\displaystyle {\begin{aligned}{\boldsymbol {P}}_{i}^{\mathrm {T} }{\boldsymbol {AP}}_{i}&={\boldsymbol {U}}_{i}^{-\mathrm {T} }{\boldsymbol {V}}_{i}^{\mathrm {T} }{\boldsymbol {AV}}_{i}{\boldsymbol {U}}_{i}^{-1}\\&={\boldsymbol {U}}_{i}^{-\mathrm {T} }{\boldsymbol {H}}_{i}{\boldsymbol {U}}_{i}^{-1}\\&={\boldsymbol {U}}_{i}^{-\mathrm {T} }{\boldsymbol {L}}_{i}{\boldsymbol {U}}_{i}{\boldsymbol {U}}_{i}^{-1}\\&={\boldsymbol {U}}_{i}^{-\mathrm {T} }{\boldsymbol {L}}_{i}\end{aligned}}}
es simétria y triangular inferior simultáneamente y por lo tanto debe ser diagonal.
Ahora se puede derivar los factores constantes
α
i
{\displaystyle \alpha _{i}}
and
β
i
{\displaystyle \beta _{i}}
con respecto al escalado
p
i
{\displaystyle {\boldsymbol {p}}_{i}}
mediante imponer solamente la ortogonalidad de
r
i
{\displaystyle {\boldsymbol {r}}_{i}}
y la conjugación de
p
i
{\displaystyle {\boldsymbol {p}}_{i}}
.
Debido a la ortogonalidad de
r
i
{\displaystyle {\boldsymbol {r}}_{i}}
, es necesario que
r
i
+
1
T
r
i
=
(
r
i
−
α
i
A
p
i
)
T
r
i
=
0
{\displaystyle {\boldsymbol {r}}_{i+1}^{\mathrm {T} }{\boldsymbol {r}}_{i}=({\boldsymbol {r}}_{i}-\alpha _{i}{\boldsymbol {Ap}}_{i})^{\mathrm {T} }{\boldsymbol {r}}_{i}=0}
. Como resultante de eso,
α
i
=
r
i
T
r
i
r
i
T
A
p
i
=
r
i
T
r
i
(
p
i
−
β
i
−
1
p
i
−
1
)
T
A
p
i
=
r
i
T
r
i
p
i
T
A
p
i
.
{\displaystyle {\begin{aligned}\alpha _{i}&={\frac {{\boldsymbol {r}}_{i}^{\mathrm {T} }{\boldsymbol {r}}_{i}}{{\boldsymbol {r}}_{i}^{\mathrm {T} }{\boldsymbol {Ap}}_{i}}}\\&={\frac {{\boldsymbol {r}}_{i}^{\mathrm {T} }{\boldsymbol {r}}_{i}}{({\boldsymbol {p}}_{i}-\beta _{i-1}{\boldsymbol {p}}_{i-1})^{\mathrm {T} }{\boldsymbol {Ap}}_{i}}}\\&={\frac {{\boldsymbol {r}}_{i}^{\mathrm {T} }{\boldsymbol {r}}_{i}}{{\boldsymbol {p}}_{i}^{\mathrm {T} }{\boldsymbol {Ap}}_{i}}}{\text{.}}\end{aligned}}}
De manera similar, debido a la conjugación de
p
i
{\displaystyle {\boldsymbol {p}}_{i}}
, es necesario que
p
i
+
1
T
A
p
i
=
(
r
i
+
1
+
β
i
p
i
)
T
A
p
i
=
0
{\displaystyle {\boldsymbol {p}}_{i+1}^{\mathrm {T} }{\boldsymbol {Ap}}_{i}=({\boldsymbol {r}}_{i+1}+\beta _{i}{\boldsymbol {p}}_{i})^{\mathrm {T} }{\boldsymbol {Ap}}_{i}=0}
. Como resultante de eso,
β
i
=
−
r
i
+
1
T
A
p
i
p
i
T
A
p
i
=
−
r
i
+
1
T
(
r
i
−
r
i
+
1
)
α
i
p
i
T
A
p
i
=
r
i
+
1
T
r
i
+
1
r
i
T
r
i
.
{\displaystyle {\begin{aligned}\beta _{i}&=-{\frac {{\boldsymbol {r}}_{i+1}^{\mathrm {T} }{\boldsymbol {Ap}}_{i}}{{\boldsymbol {p}}_{i}^{\mathrm {T} }{\boldsymbol {Ap}}_{i}}}\\&=-{\frac {{\boldsymbol {r}}_{i+1}^{\mathrm {T} }({\boldsymbol {r}}_{i}-{\boldsymbol {r}}_{i+1})}{\alpha _{i}{\boldsymbol {p}}_{i}^{\mathrm {T} }{\boldsymbol {Ap}}_{i}}}\\&={\frac {{\boldsymbol {r}}_{i+1}^{\mathrm {T} }{\boldsymbol {r}}_{i+1}}{{\boldsymbol {r}}_{i}^{\mathrm {T} }{\boldsymbol {r}}_{i}}}{\text{.}}\end{aligned}}}
Esto completa la derivación.