diff --git a/dune/solvers/iterationsteps/lineariterationstep.hh b/dune/solvers/iterationsteps/lineariterationstep.hh
index f24443a462b16a8cdc072063fd7c74af2a6ae5e3..55a4fab7a0e5616e9d63f3d42b71bbc0983e7107 100644
--- a/dune/solvers/iterationsteps/lineariterationstep.hh
+++ b/dune/solvers/iterationsteps/lineariterationstep.hh
@@ -18,7 +18,17 @@ namespace Dune {
 
 namespace Solvers {
 
-//! Base class for iteration steps being called by an iterative linear solver
+/** \brief Base class for iteration steps being called by an iterative solver for linear problems
+ *
+ * This class is called Linear, because all iteration step implementations that derive from it
+ * are supposed to solve linear problems.  In particular, this means that the LinearIterationStep
+ * class knows about matrix data types, and it has the setProblem and setMatrix methods that
+ * allow to specify the matrix of the linear system to solve.
+ *
+ * The 'Linear' in the name is not about the type of algorithm.  For example, one step of a
+ * CG solver would qualify as a LinearIterationStep: CG is not a linear algorithm, but it is
+ * a solver for solving linear problems.
+ */
 template<class MatrixType, class VectorType, class BitVectorType = Dune::Solvers::DefaultBitVector_t<VectorType> >
 class LinearIterationStep : public IterationStep<VectorType, BitVectorType>,
                             public Dune::Solvers::Preconditioner<MatrixType,