From 3237ab1e42b4a05c8f1a8c71ad75cc22038f1749 Mon Sep 17 00:00:00 2001 From: Timo Heister Date: Sat, 21 Feb 2015 21:01:33 -0500 Subject: [PATCH] improve TrilinosWrappers::PreconditionILU documentation --- include/deal.II/lac/trilinos_precondition.h | 84 +++++++++++---------- source/lac/trilinos_precondition.cc | 6 +- 2 files changed, 46 insertions(+), 44 deletions(-) diff --git a/include/deal.II/lac/trilinos_precondition.h b/include/deal.II/lac/trilinos_precondition.h index d85946107c..08359d77fe 100644 --- a/include/deal.II/lac/trilinos_precondition.h +++ b/include/deal.II/lac/trilinos_precondition.h @@ -886,7 +886,7 @@ namespace TrilinosWrappers /** - * A wrapper class for an incomplete LU factorization (ILU) preconditioner + * A wrapper class for an incomplete LU factorization (ILU(k)) preconditioner * for Trilinos matrices. This preconditioner works both in serial and in * parallel, depending on the matrix it is based on. In general, an * incomplete factorization does not take all fill-in elements that would @@ -900,14 +900,9 @@ namespace TrilinosWrappers * required fill-in elements require this parameter to be set to a higher * integer value). * - * The AdditionalData data structure allows to set preconditioner options. - * Besides the fill-in argument, these options are some options for - * perturbations (see the documentation of the AdditionalData structure for - * details), and a parameter overlap that determines if and how - * much overlap there should be between the matrix partitions on the various - * MPI processes. The default settings are 0 for the additional fill-in, 0 - * for the absolute augmentation tolerance, 1 for the relative augmentation - * tolerance, 0 for the overlap. + * The AdditionalData data structure allows to set preconditioner + * options. See the documentation of the AdditionalData structure for + * details. * * Note that a parallel application of the ILU preconditioner is actually a * block-Jacobi preconditioner with block size equal to the local matrix @@ -925,29 +920,43 @@ namespace TrilinosWrappers public: /** * Standardized data struct to pipe additional parameters to the - * preconditioner. The Trilinos ILU decomposition allows for some fill-in, - * so it actually is a threshold incomplete LU factorization. The amount - * of fill-in, and hence, the amount of memory used by this - * preconditioner, is controlled by the parameter ilu_fill, which - * specifies this as a double. When forming the preconditioner, for - * certain problems bad conditioning (or just bad luck) can cause the - * preconditioner to be very poorly conditioned. Hence it can help to add - * diagonal perturbations to the original matrix and form the - * preconditioner for this slightly better matrix. ilu_atol is an - * absolute perturbation that is added to the diagonal before forming the - * prec, and ilu_rtol is a scaling factor $rtol \geq 1$. The last - * parameter specifies the overlap of the partitions when the - * preconditioner runs in parallel. + * preconditioner: + *