From: kronbichler Date: Fri, 9 Jan 2009 18:40:46 +0000 (+0000) Subject: Need to change the settings in AMG setup once again. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=25ec05a9d38b06253493eb354a084a641405d476;p=dealii-svn.git Need to change the settings in AMG setup once again. git-svn-id: https://svn.dealii.org/trunk@18156 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/lac/source/trilinos_precondition.cc b/deal.II/lac/source/trilinos_precondition.cc index 54ed93661d..a665e95c4d 100755 --- a/deal.II/lac/source/trilinos_precondition.cc +++ b/deal.II/lac/source/trilinos_precondition.cc @@ -567,8 +567,29 @@ namespace TrilinosWrappers { ML_Epetra::SetDefaults("SA",parameter_list); parameter_list.set("smoother: type", "Chebyshev"); + + // uncoupled mode gives a lot of warnings + // when there are too many entries per + // row and aggreggation gets complicated, + // but MIS does not work if too few + // elements are located on one + // processor. work around these warnings + // by choosing the different strategies + // in different situations: for low + // order, always use the standard choice + // uncoupled. if higher order, use + // Uncoupled with few dofs and MIS + // with many dofs per processor + // + // TODO: Maybe there are some better + // options? if (additional_data.higher_order_elements) - parameter_list.set("aggregation: type", "Uncoupled-MIS"); + { + if (matrix.local_size() < 5000) + parameter_list.set("aggregation: type", "Uncoupled"); + else + parameter_list.set("aggregation: type", "MIS"); + } } else {