On Fri, 9 Sep 2011, Hong Zhang wrote: > amrit : > > > > If I run a program with the following runtime option (notice that I have not > > included -pc_type lu ), will the program use mumps to solve the linear > > system of equations directly, or does it? run with default gmres iterative > > solver? Why do we have to specify a preconditioner for a direct solver ? > > > > ?-pc_factor_mat_solver_package mumps > > You must include '-pc_type lu' to use mumps. > There are many preconditioners for solving linear system, lu is one of pcs, > and mumps is one of packages implement lu.
PETSc solver is organized as 2 parts: KSP, PC With this organization - direct solvers are categorized under PC. Sure - you don't need gmres with a direct solver - so you would use: --ksp_type preonly -pc_type lu The reason this organization makes sense for us is - we easily support stuff like: -ksp_type gmres -pc_type bjacobi -sub_pc lu [-sub_ksp preonly] And as Hong mentioned - mumps is one of the direct solvers we provide interface to - other prominant one is superlu_dist. Both are accessiable with '-pc_type lu -pc_factor_mat_solver_package [mumps or superlu_dist]' etc... Satish
