Would that work together with the GMG-preconditioner? Will test it there as 
soon as my problem in my second question could be solved.
There I have the following code:
    
SolverControl        coarse_solver_control(1000, 1e-10, false, false);
    SolverGMRES<vector_t>   coarse_solver(coarse_solver_control);
    PreconditionIdentity id;
    MGCoarseGridIterativeSolver<vector_t,
            SolverGMRES<vector_t>,
            matrix_t,
            PreconditionIdentity>
            coarse_grid_solver(coarse_solver, coarse_matrix, id);

    using Smoother = LA::MPI::PreconditionJacobi;
    MGSmootherPrecondition<matrix_t, Smoother, vector_t> mg_smoother;
    mg_smoother.initialize(mg_matrices, Smoother::AdditionalData(0.5));
    mg_smoother.set_steps(2);

    mg::Matrix<vector_t> mg_matrix(mg_matrices);
    mg::Matrix<vector_t> mg_interface_up(mg_interface_matrices);
    mg::Matrix<vector_t> mg_interface_down(mg_interface_matrices);

    Multigrid<vector_t> mg(mg_matrix, coarse_grid_solver, mg_transfer, 
mg_smoother, mg_smoother);
    mg.set_edge_matrices(mg_interface_down, mg_interface_up);

    PreconditionMG<dim, vector_t, MGTransferPrebuilt<vector_t>> 
preconditioner(dof_handler,
                                                                            
   mg,
                                                                            
   mg_transfer);

and here I intent to replace all occurences of matrix_t with my custom 
LinearOperator (if that makes sense).

Am Freitag, 19. Juli 2019 17:51:10 UTC+2 schrieb Wolfgang Bangerth:
>
> On 7/19/19 9:47 AM, 'Maxi Miller' via deal.II User Group wrote: 
> > What I did was the replacement of system_matrix with a function, 
> providing a 
> > vmult()-function. Now I would like to add a preconditioner based on that 
> > function to reduce the necessary GMRES-iterations. But until now most of 
> the 
> > preconditioners require a matrix for initialization. Thus I wanted to 
> replace 
> > that matrix with my LinearOperator, if that is possible? 
>
> Yes, as I already said, this is possible. Have you tried? 
>
> I think you should also be able to look at step-20 (and maybe 22) for 
> examples. 
>
> Best 
>   W. 
>
> -- 
> ------------------------------------------------------------------------ 
> Wolfgang Bangerth          email:                 bang...@colostate.edu 
> <javascript:> 
>                             www: http://www.math.colostate.edu/~bangerth/ 
>
>

-- 
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/0c8f71f7-8d29-4a4f-abb1-65afbcc72669%40googlegroups.com.

Reply via email to