I am trying to make a matrix free solver like in step-37; however, my equations involve variables that are solved with a DG DoFHandler. So for solving I changed within LaplaceProblem<dim>::setup_system() the following functions to account for multiple DoFHandler's: system_mf_storage->reinit() mg_mf_storage_level->reinit() which led to me having to edit mg_matrices[level <https://www.dealii.org/current/doxygen/deal.II/grid__out_8cc.html#a9082f945c1d289684d0bcd51ee08e11e>].initialize() to account for multiple mg_constrained_dofs.
All of that was fine until I got to LaplaceProblem<dim>::solve(). I cant edit either of the following functions because they don't allow for multiple DoFHandler's: MGTransferMatrixFree<dim, float> <https://www.dealii.org/current/doxygen/deal.II/classMGTransferMatrixFree.html> mg_transfer(mg_constrained_dofs); mg_transfer.build(dof_handler); I am unsure if that will cause problems but the line that for sure does cause an error and for the code not to finish is initializing the mg_smoother: mg_smoother.initialize(mg_matrices, smoother_data); This always gives me the error: An error occurred in line <2684> of file </home/sjohnson/AE_beginnings/dealii/include/deal.II/lac/precondition.h> in function void dealii::internal::PreconditionChebyshevImplementation::initialize_preconditioner(const MatrixType&, std::shared_ptr<dealii::DiagonalMatrix<VectorType> >&) [with MatrixType = Brill_Evolution::alpha_Operator<2, 4, float>; VectorType = dealii::LinearAlgebra::distributed::Vector<float>] The violated condition was: preconditioner->m() == 0 Additional information: Preconditioner appears to be initialized but not sized correctly I believe this is because the mg_matrices has been initialized with multiple dof_handlers but I am unsure how to address this problem and have not been able to find a matrixfree example with multiple dof_handlers. Thanks, Sean Johnson -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en --- You received this message because you are subscribed to the Google Groups "deal.II User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to dealii+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/f62af0a2-c770-4804-8191-df9c1f437607n%40googlegroups.com.