Hello Abbas, okay, I see, previously there was just a sign error in your stack overflow post, but the sign is very important in this case. So let's sum it up:
The problem you previously stated in your stack overflow post, i.e. curl ( curl ( E ) ) + k^2 E = 0 is sometimes called the well-posed Maxwell's equations or the definite Maxwell's equations. As the name suggests this leads to a positive definite system and is therefore easier to solve. For example, the definite Maxwell's equations can be solved efficiently via an iterative solver (e.g. GMRES) together with the block-preconditioner given in the in the "Large scale 3D geomag... <https://library.seg.org/doi/10.1190/geo2015-0013.1>" paper. Also AMS is only a solver for the definite Maxwell's equations. The problem you are considering, i.e. curl ( curl ( E ) ) - k^2 E = 0 is respectively sometimes called the ill-posed Maxwell's equations or the indefinite Maxwell's equations. When you are considering only the 2D case a direct solver should be enough. But for the 3D case you will need more advanced methods. The most common approach to solve these equations is via domain decomposition method (ddm). The basic idea of the ddm is to divide the the domain into smaller subdomains, where each subdomain becomes small enough so it can be handled by a direct solver. The ddm for Maxwell is explained in greater detail in this paper: A quasi-optimal domain decomposition algorithm for the time-harmonic Maxwell's equations <https://www.sciencedirect.com/science/article/pii/S0021999115001965>. But it is not easy to build a Maxwell solver based on ddm in deal.II (I know this, since I am currently working on such a solver by myself). I am sorry, there is no easy way to do this. Best, Sebastian Abbas schrieb am Donnerstag, 20. Mai 2021 um 23:33:22 UTC+2: > Thank you Sebestian, > > In case someone comes across this thread in the future > It seems that the problem that is being solved in the "Large scale 3D > geomag... <https://library.seg.org/doi/10.1190/geo2015-0013.1>" paper is > different than mine. > The paper's: curl x curl x E + sigma E = J , sigma > 0 > Mine is : curl x curl x E - k^2 E = 0 > and because of that it looks Hypre's AMS > <https://hypre.readthedocs.io/en/latest/solvers-ams.html> solver can only > work with problems as given in the paper > Am I correct here? > > best, > Abbas > > On Wednesday, May 19, 2021 at 12:29:13 PM UTC-4 sebastian...@gmail.com > wrote: > >> >> Hi Abbas, >> >> as you already noticed, standard preconditioners do not yield very good >> convergence for Maxwell's equations, for more details see Why it is >> Difficult to Solve Helmholtz Problems with Classical Iterative Methods >> <https://link.springer.com/chapter/10.1007/978-3-642-22061-6_10>. Since >> the scalar Helmholtz problem is closely related to the Maxwell's equations, >> the same arguments from the Helmholtz problem also hold true for the >> Maxwell's equations. So not even your plan B would work (see Geometric >> Multigrid Methods for Maxwell’s Equations >> <https://julianroth.org/res/bachelorarbeit.pdf>, Chapter 6.2). >> >> Therefore you need to apply specially suited preconditioners for the >> Maxwell's equations. For the problem you are considering, I would recommend >> the block-preconditioner, which is presented in this paper: Large-scale >> 3D geoelectromagnetic modeling using parallel adaptive high-order finite >> element method <https://library.seg.org/doi/10.1190/geo2015-0013.1>. As >> a starting point for your implementation of that block-preconditioner you >> can use step-22 >> <https://www.dealii.org/current/doxygen/deal.II/step_22.html>. >> >> An other approach to solve the Maxwell's equations is via domain >> decomposition method (for example see: A quasi-optimal domain >> decomposition algorithm for the time-harmonic Maxwell's equations >> <https://www.sciencedirect.com/science/article/pii/S0021999115001965>). >> >> I hope this helps you, best regards >> Sebastian >> >> Abbas schrieb am Mittwoch, 19. Mai 2021 um 15:45:35 UTC+2: >> >>> This isn't a dealii problem and I am sorry if this isn't the right place >>> to post to, but if there is someone who could give me some hints on how I >>> would approach this then it would be you guys. >>> >>> I have been trying to solve the time harmonic maxwell equation >>> discritized with the use of Nedelec elements. Details are in This stack >>> overflow post >>> <https://scicomp.stackexchange.com/questions/37447/how-to-create-a-good-preconditioner-for-a-system-of-linear-equations-that-is-cre> >>> . >>> >>> I have an issue with the linear system, since using any black box >>> Trilinos preconditioner yields no convergence or worse convergence than a >>> simple Jaccobi or an identity preconditioner and even in that case the >>> restarted GMRES solver needs more than 400 >>> vectors to converge and it gets worse with a refined mesh. My system is >>> broken into 2x2 block matrices much like step-29 by the way. >>> >>> Creating a multigrid solver like step-16 might solve this issue but I >>> would rather use that as plan B. >>> >>> Any hint is appreciated. >>> >>> Thanx :3 >>> Abbas >>> >>> -- 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. To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/135ef78b-fa22-4f54-9b85-ec0355bcffd6n%40googlegroups.com.