Dear Timo,
The main reason I do this is that I do not understand how to reuse this
decomposition in deal.ii.
I am relatively new to deal.ii and C++, and I have never used MUMPS before.
The way I set it up with SparseDirectUMFPACK was to use InnerPreconditioner
structure:
template<int inner_solver_id>
struct InnerPreconditioner;
template<>
struct InnerPreconditioner<0>{
typedef SparseDirectUMFPACK<double> type;
};
and defined inner preconditioner as :
matrix_B_preconditioner= std_cxx11::shared_ptr<typename
LinearSolvers::InnerPreconditioner<inner_solver_id>::type >(new typename
LinearSolvers::InnerPreconditioner<inner_solver_id>::type());
matrix_B_preconditioner->initialize(matrix_B.block(0, 0), typename
LinearSolvers::InnerPreconditioner<inner_solver_id>::type::AdditionalData());
I can not simply substitute
typedef SparseDirectUMFPACK<double> type; with typedef
PETScWrappers::SparseDirectMUMPS type;
since PETScWrappers::SparseDirectMUMPS does not have member function vmult.
I am having trouble to understand where I need to add this function vmult.
I would appreciate any advice on this. Maybe there is some example in
deal.ii that use MUMPS to construct a preconditioner.
Thank you very much in advance,
Anna
--
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 [email protected].
For more options, visit https://groups.google.com/d/optout.