> El 19 sept 2017, a las 18:02, Appel, Thibaut <[email protected]> > escribió: > > Good afternoon, > > I am using SLEPc in shift-and-invert mode to solve linear generalized EVPs. I > am also using MUMPS for solving the linear systems that stem from the > problem. After browsing a lot of pages, I am quite surprised by the lack of > documentation available regarding the MUMPS interface with SLEPc/PETSc. > > - I would like, in my code, to set and print MUMPS control and output > parameters (CNTL,ICNTL,INFO) to monitor the process but it seems like a > tedious task in Fortran. I found this discussion > https://lists.mcs.anl.gov/pipermail/petsc-users/2012-May/013437.html that > suggests hard-coded statements in c++ to set MUMPS parameters. Is there a > clean solution in Fortran?
An easy way to set MUMPS options is by inserting options in the PETSc options database with PetscOptionsInsertString(), see ex25.c http://slepc.upv.es/documentation/current/src/eps/examples/tutorials/ex25.c.html PetscOptionsInsertString() should work also in Fortran. > > - When using MUMPS together with SLEPc, can you perform iterative refinement? > I tried to set ICNTL(10) to do so but nothing happens. Can I trust SLEPc for > automatically setting MUMPS parameters that will ensure best scalability? If > you have further advice for using optimally SLEPc together with MUMPS I would > really appreciate it and enjoy discussing it with you. With -eps_view you can check the actual options (including MUMPS options) that are being used. You can activate iterative refinement if you want, but I don't think it is necessary for shift-and-invert computations. Regarding scalability, you can try changing between sequential and parallel symbolic factorization, but I think the default is usually the best setting. SLEPc does not set any MUMPS options other than the default. Jose > > Thank you in advance, > > > Thibaut
