[deal.II] PETScWrappers::SparseDirectMUMPS use in parallel version of step-22
Dear All, I have modified step-22 to solve system of Maxwell's equations, and then used step-40(and 55) to parallelize the code. In the serial version I used template struct InnerPreconditioner; template<> struct InnerPreconditioner<0> { typedef SparseDirectUMFPACK type; }; template<> struct InnerPreconditioner<1> { // type of preconditioner for an iterative solver }; Which defined the type of preconditioner I need for CG solver, in order to obtain yet another preconditioner for FGMRES solution of my system. Now with parallel implementation I would like to use PETScWrappers::SparseDirectMUMPS instead of SparseDirectUMFPACK. However I am getting the following error: error: ‘SparseDirectMUMPS’ in namespace ‘LA’ does not name a type typedef LA::SparseDirectMUMPS type; Here LA is defined as namespace LA { #if defined(DEAL_II_WITH_PETSC) && !(defined(DEAL_II_WITH_TRILINOS) && defined(FORCE_USE_OF_TRILINOS)) using namespace dealii::LinearAlgebraPETSc; # define USE_PETSC_LA #elif defined(DEAL_II_WITH_TRILINOS) using namespace dealii::LinearAlgebraTrilinos; #else # error DEAL_II_WITH_PETSC or DEAL_II_WITH_TRILINOS required #endif } Is it possible to do something similar to step-22 with SparseDirectMUMPS, or I have to rewrite the code and remove the struct InnerPreconditioner ? Thank you very much in advance for all your help. 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 dealii+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [deal.II] Parallel implementation
Dear Wolfgang, thank you very much for the link. I have followed their approach, but before I can check the result, I have to substitute the solver I used for a parallel solver. 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 dealii+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [deal.II] PETScWrappers::SparseDirectMUMPS use in parallel version of step-22
Anna, > Now with parallel implementation I would like to use > PETScWrappers::SparseDirectMUMPS instead of SparseDirectUMFPACK. > > However I am getting the following error: > > error: ‘SparseDirectMUMPS’ in namespace ‘LA’ does not name a type > typedef LA::SparseDirectMUMPS type; You have to use PETScWrappers::SparseDirectMUMPS here -- Timo Heister http://www.math.clemson.edu/~heister/ -- 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.
[deal.II] Re: Linking error when compiling with Trilinos
Hi, You have several problems. On Wednesday, September 13, 2017 at 4:58:10 AM UTC-4, Maxi Miller wrote: > > ~/local_opt/trilinos/lib/libmuelu-adapters.so: error: undefined reference > to 'dmumps_c' > You have compile deal or trilinos with MUMPS support but the linker does not find it /petsc/lib/libsuperlu_dist.so ~/local_opt/parmetis/lib/libparmetis.a ~ > /local_opt/metis/lib/libmetis.a /usr/lib64/liblapack.so /usr/lib64/libblas > .so /usr/lib64/libhwloc.so /usr/lib64/libX11.so /usr/lib64/libssl.so /usr/ > lib64/libcrypto.so ~/local_opt/openmpi/lib/libmpi_usempif08.so ~ > /local_opt/openmpi/lib/libmpi_usempi_ignore_tkr.so ~/local_opt/openmpi/lib > /libmpi_mpifh.so -ldl -lrt ~/local_opt/p4est/lib/libp4est.so ~/local_opt/ > p4est/lib/libsc.so /usr/lib64/libopenblas.so -lmpi_usempif08 > -lmpi_usempi_ignore_tkr > -lmpi_mpifh -lmpi -lgfortran -lquadmath -lm -lpthread -lc -lgcc_s -lgcc ~ > /local_opt/openmpi/lib/libmpi.so > ~/local_opt/intel/mkl/lib/intel64/libmkl_rt.so: error: undefined > reference to 'printf' > ~/local_opt/intel/mkl/lib/intel64/libmkl_rt.so: error: undefined > reference to 'strchr' > The error is from MKL which implements Lapack BUT in you are also using openblas which implements Lapack and Lapack. So you are mixing three different implementation of Lapack (MKL, Openblas, and lapack). That's a recipe for disaster make sure all the libraries that you are compiling are using the same implementation of Lapack. Best, Bruno -- 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.
[deal.II] what is the material id after coarsening
Hi guys, I encountered a problem recently when I refine and coarse mesh. I know the material id is inherited from mother to child cell upon mesh refinement. But what is the rules when coarsening the mesh? For example, in 2D, I have four neighbored cells which have different material ids, then what is the material id when these four cells are combined into one cell? what I should do if I want to coarsening the cells with the same material id? -- 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.
Re: [deal.II] what is the material id after coarsening
On 09/13/2017 09:12 AM, Zhibo Luo wrote: I encountered a problem recently when I refine and coarse mesh. I know the material id is inherited from mother to child cell upon mesh refinement. But what is the rules when coarsening the mesh? For example, in 2D, I have four neighbored cells which have different material ids, then what is the material id when these four cells are combined into one cell? what I should do if I want to coarsening the cells with the same material id? It's just the same value as you set before you refined the cell originally. When you refine cells, the children are new and we need a rule what their material_ids should be. But when you coarsen these children again, then the mother cell you get has been there all along -- so we need no rule what material_id it should get, it just retains the material_id it has always had. Best W. -- Wolfgang Bangerth email: bange...@colostate.edu 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. For more options, visit https://groups.google.com/d/optout.
Re: [deal.II] what is the material id after coarsening
Thank you Prof. Wolfgan. I just realize that. So if I want to coarsen the neighbored cells with the same material id, I should find their parent cell and set the same material id. Is this right? Best regards, Zhibo 在 2017年9月13日星期三 UTC-4上午11:49:38,Wolfgang Bangerth写道: > > On 09/13/2017 09:12 AM, Zhibo Luo wrote: > > > > I encountered a problem recently when I refine and coarse mesh. I know > > the material id is inherited from mother to child cell upon mesh > > refinement. But what is the rules when coarsening the mesh? For example, > > in 2D, I have four neighbored cells which have different material ids, > > then what is the material id when these four cells are combined into one > > cell? what I should do if I want to coarsening the cells with the same > > material id? > > It's just the same value as you set before you refined the cell > originally. > > When you refine cells, the children are new and we need a rule what > their material_ids should be. But when you coarsen these children again, > then the mother cell you get has been there all along -- so we need no > rule what material_id it should get, it just retains the material_id it > has always had. > > Best > W. > > -- > > Wolfgang Bangerth email: bang...@colostate.edu > > 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. For more options, visit https://groups.google.com/d/optout.
Re: [deal.II] what is the material id after coarsening
On 09/13/2017 09:59 AM, Zhibo Luo wrote: Thank you Prof. Wolfgan. I just realize that. So if I want to coarsen the neighbored cells with the same material id, I should find their parent cell and set the same material id. Is this right? You can. What I'm saying is that if you had set the material_id of a cell (say, to a value of 42) before it was refined and replaced by its children, then after coarsening these children the parent cell will still have the value 42. Best W. -- Wolfgang Bangerth email: bange...@colostate.edu 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. For more options, visit https://groups.google.com/d/optout.