<h3>The basic functioning of finite elements</h3>
This is the first example where we actually use finite elements to compute
-something. We
+something. We
will solve a simple version of Poisson's equation with zero boundary
values, but a nonzero right hand side:
@f{align*}
of multiplying the equation from the left rather than from the right (as is
often done in the mathematical literature) avoids a common class of errors as
the matrix is automatically correct and does not need to be transposed when
-comparing theory and implementation.
+comparing theory and implementation. See step-9 for the first example in this
+tutorial where we have a non-symmetric bilinear form for which it makes a
+difference whether we multiply from the right or from the left.
Now we know what we need (namely objects that hold the matrix and
vectors, as well as ways to compute $A_{ij},F_i$), and we can look at what it
A^K_{ij} &=
\int_K \nabla\varphi_i \cdot \nabla \varphi_j
\approx
- \sum_q \nabla\varphi_i(\mathbf x^K_q) \cdot \nabla
+ \sum_q \nabla\varphi_i(\mathbf x^K_q) \cdot \nabla
\varphi_j(\mathbf x^K_q) w_q^K,
\\
F^K_i &=
@f[
{\mathbf u}^T A = {\mathbf f}^T,
@f]
-where ${\mathbf u}=(u_i)$, i.e. we have to solve the transpose problem of
-what we might have expected naively. In order to obtain the usual form
-of the linear system, it is therefore best to rewrite the weak
+where ${\mathbf u}=(u_i)$, i.e., we have to solve the transpose problem of
+what we might have expected naively.
+
+This is a point we made in the introduction of step-3. There, we argued that
+to avoid this very kind of problem, one should get in the habit of always
+multiplying with test functions <i>from the left</i> instead of from the right
+to obtain the correct matrix right away. In order to obtain the form
+of the linear system that we need, it is therefore best to rewrite the weak
formulation to
@f[
(v_h + \delta \beta\cdot\nabla v_h, \beta \cdot \nabla u_h)_\Omega
as system matrix. We will assemble this matrix in the program.
There remains the solution of this linear system of equations. As the
-resulting matrix is no more symmetric positive definite, we can't
+resulting matrix is no longer symmetric positive definite, we can't
employ the usual CG method any more. Suitable for the solution of
systems as the one at hand is the BiCGStab (bi-conjugate gradients
stabilized) method, which is also available in deal.II, so we will use