Hi Daniel, thank you very much for your great help! I think your tutorial is very helpful. I think one important part of your tutorial is, that you use SLEPcWrappers::TransformationShiftInvert shift.
When I was new to the topic of eigenvalues calculation in deal.ii a few weaks ago I only built my code out of the tutorial step 36. The Problem here was, that my code was very slow, because here is no spectral transformation applied. It costs me some hours to figure out what to do to solve this issue... My code runs very well with the Arpack solver and a preconditioner built out of Kmm only. I am doing my calculations now and later on I will try using SLEPc. If problems appear I can not solve by myself I am going to ask here. Thank you very much for the informations and your help, Daniel! Best, Andreas Am Mo., 8. Juli 2019 um 12:51 Uhr schrieb Daniel Garcia-Sanchez < [email protected]>: > Hi Andreas, > > On Sunday, July 7, 2019 at 4:26:39 PM UTC+2, Andreas Hegendörfer wrote: >> >> I also tried a spectral transformation with the Arpack solver with the >> same result as without spectral transformation. I am interested in the >> smallest real eigenvalues. I know from previous calculations with the >> Krylov Schur solver form SLEPc that using or not using a spectral >> transformation makes a very big difference here. >> > > Yes, using a spectral transformation makes a huge difference if your > eigenvalues are from the interior of the spectrum, although if you are > interested in the smallest real eigenvalue, the difference might not be > that important. > > The drawback of an spectral transformation is that you have to use a > direct solver. > > You can use an iterative solver with an spectral transformation for very > large problems. However, using an iterative linear solver with an spectral > transformation makes the overall solution process less robust. > > Although the direct solver approach may seem too costly, the factorization > is only carried out at the beginning of the eigenvalue calculation and this > cost is amortized in each subsequent application of the operator. > > I think that the drawback of an iterative solver is that it requires lot > of memory and does not scale very well. This figure can give you an idea of > the scalability of MUMPS (direct parallel solver). > > https://www.researchgate.net/figure/Strong-scalability-of-an-iterative-solver-with-different-preconditioners-versus-MUMPS_fig2_282172435 > > >> I do not want to use SLEPc here because I think handling the PETSc >> Matrices and vectors is too uncomfortable for my application. Am I right at >> this point? What do you think about using SLEPc here? >> > > I'm writing a tutorial about how to calculate the eigenmodes of an > electromagnetic cavity. So far, I've written the code, I'm writing now the > documentation. You can take a look. You can find the code in this pull > request: > > https://github.com/dealii/dealii/pull/8345 > > The tutorial uses MPI, and SLEPc with std::complex. > > The eigenvalues in this tutorial are from the interior of the spectrum, > therefore I have to use an spectral transformation with a direct solver. > > Note that PETSc has to be compiled with MUMPS if you want to run that > tutorial. > > Best, > Daniel > > -- > 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]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/dealii/5399942a-80d6-43b3-a2ea-7236e19e4842%40googlegroups.com > <https://groups.google.com/d/msgid/dealii/5399942a-80d6-43b3-a2ea-7236e19e4842%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- 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]. To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/CAF_nQ7DJfLMuQ42s7_%2BAjs7G%2Bpb6c4_gi_%3DGvqVGkVZzS82riw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
