Michael, Adding to Wolfgang's response:
Am Dienstag, 26. September 2017 17:42:41 UTC+2 schrieb Michał Wichrowski: > > Dear all, > I'm dealing with Stokes problem that I want to solve using matrix-free > methods. In tests I've alredy found implementation of Stokes operator that > uses block vectors. I'm goning to use multigrid method for saddle point > problems similar to the one presented in: > An efficient smoother for the Stokes problem D Braess, R Sarazin - Applied > Numerical Mathematics, 1997 - Elsevier > > Let the Stokes matrix be: > (A B^T > B 0) > > 1) The method requires several multiplication by blocks A and B at each > level. Is there any recommended way to implement it? () > Have a look at tests/matrix_free/matrix_vector_stokes_base.cc for a MatrixFree approach for a block system using BlockVectors. If you want the individual blocks A and B it might be best to write them to implement them individually as derived classes from MatrixFreeOperators::Base<dim, BlockVectorType> in a similar way as this is done in the test mentioned above. > 2) I've found MGTransferBlockMatrixFree class in developer version of > deal.ii, however it assumes that each block have the same dof_hander (and > thats for me is obviously not true). Is there existing MGTrasfrer for my > problem? > BTW, why MGTrasfrer does work with several dof handres like MatrixFree? > No, this is currently not implemented but definitely on my TODO-list. This would basically be combining MGTransferMatrixFree with the current MGTransferBlockMatrixFree. > > 3) Is there a way to use multigrid on one block? For example I would like > to compute approximation of A^-1 using multigrid. > Sure, you would just follow step-37 and apply just one block of the vector. Best, Daniel -- 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. For more options, visit https://groups.google.com/d/optout.