xref: /petsc/src/binding/petsc4py/demo/legacy/kspsolve/petsc-cg.tex (revision 5a48edb989d3ea10d6aff6c0e26d581c18691deb)
1\begin{equation*}
2\begin{split}
3& cg(A,x,b,i_{max},\epsilon): \\
4& \quad i \Leftarrow 0 \\
5& \quad r \Leftarrow b - A x \\
6& \quad d \Leftarrow r \\
7& \quad \delta_{0} \Leftarrow r^T r \\
8& \quad \delta_{   } \Leftarrow \delta_{0} \\
9& \quad \text{while}\;\; i < i_{max} \text{ and } \\
10& \quad\quad\qquad  \delta_{   } > \delta_{0} \epsilon^2 \text{ do} :\\
11& \quad\quad\quad  q \Leftarrow Ad \\
12& \quad\quad\quad  \alpha \Leftarrow \frac{\delta_{   }}{d^T q} \\
13& \quad\quad\quad  x \Leftarrow x + \alpha d\\
14& \quad\quad\quad  r \Leftarrow r - \alpha q\\
15& \quad\quad\quad  \delta_{old} \Leftarrow \delta_{   } \\
16& \quad\quad\quad  \delta_{   } \Leftarrow r^T r \\
17& \quad\quad\quad  \beta \Leftarrow \frac{\delta_{   }}{\delta_{old}} \\
18& \quad\quad\quad  d \Leftarrow r + \beta d\\
19& \quad\quad\quad  i \Leftarrow i + 1
20\end{split}
21\end{equation*}
22