[petsc-users] use Superlu as ilu preconditioner

Hong Zhang hzhang at mcs.anl.gov
Tue Jul 26 21:13:51 CDT 2011


Did you call KSPSetFromOptions(ksp)?
Run your code with '-options_table' to dump list of options inputted
or '-options_left' to dump list of unused options.

I tested with petsc-3.1/src/ksp/ksp/examples/tutorials/ex2.c:
./ex2 -pc_type ilu -pc_factor_mat_solver_package superlu
-mat_superlu_ilu_droptol 0.1 -ksp_view
...
            SuperLU run parameters:
            ...
              ILU_DropTol: 0.1
              ILU_FillTol: 0.01
              ILU_FillFactor: 10
              ILU_DropRule: 9
              ILU_Norm: 2
              ILU_MILU: 2

Hong

On Tue, Jul 26, 2011 at 3:53 PM, Ping Rong <ping.rong at tuhh.de> wrote:
> Dear developers,
>
> I have compiled petsc-3.1-p8 for a while. Now I would like to use superlu as
> an ilu preconditioner, since it offers the drop tolerance option. I have
> read in a thread
> (https://lists.mcs.anl.gov/mailman/htdig/petsc-users/2010-December/007439.html)
> that one can run the code with option
>
> -pc_type ilu -pc_factor_mat_solver_package superlu -mat_superlu_ilu_droptol
> <>
>
> to setup the ilu preconditioner. I also use the option "-help |grep superlu"
> to check the settings. However, no matter how I change the value of
> -mat_superlu_ilu_droptol, I always got the same result
> ...
>  -mat_superlu_lwork <0>: size of work array in bytes used by factorization
> (None)
>  -mat_superlu_ilu_droptol <0.0001>: ILU_DropTol (None)
>  -mat_superlu_ilu_filltol <0.01>: ILU_FillTol (None)
> ...
> I dont know whether I understand it correctly. But it seems to me the value
> of the droptol has never been changed. In that maillist thread, it was also
> mentioned that the dev-version is recommended, because of some bugs in the
> superlu interface. I have then compiled the current dev-version. but the
> problem is my program is based on another library (libMesh) which uses petsc
> as a solver package. Since some of the interfaces have been changed in the
> dev-version, I would not be able to compile the libMesh with petsc anymore.
> Is there anyway I can correct the superlu interface in the 3.1-p8 version
> directly? Any help will be appreciated!!
>
> Best regards
>
> --
> Ping Rong, M.Sc.
> Hamburg University of Technology
> Institut of modelling and computation
> Denickestraße 17 (Room 3031)
> 21073 Hamburg
>
> Tel.: ++49 - (0)40 42878 2749
> Fax:  ++49 - (0)40 42878 43533
> Email: ping.rong at tuhh.de
>
>


More information about the petsc-users mailing list