Hi Jed, Do I need to create two separate MattNullSpace objects if I want to use both MatSetNullSpace() and MatSetNearNullSpace()?
Thanks, On Thu, Oct 31, 2024 at 8:18 AM Jed Brown <j...@jedbrown.org> wrote: > Pierre Jolivet <pie...@joliv.et> writes: > > >> On 31 Oct 2024, at 2:47 PM, Mark Adams <mfad...@lbl.gov> wrote: > >> > >> Interesting. I have seen hypre do fine on elasticity, but do you know > if boomeramg (classical) uses these vectors or is there a smoothed > aggregation solver in hypre? > > > > I’m not sure it is precisely “standard” smoothed aggregation, see bottom > paragraph of > https://urldefense.us/v3/__https://hypre.readthedocs.io/en/latest/solvers-boomeramg.html*amg-for-systems-of-pdes__;Iw!!G_uCfscf7eWS!fdj4AzKhAcDmM1x_ZQ8gxqWeX6BAKY9urnvATMpT7hC8lw77ak7tqxqXGIX3PMg2wYA5PGu7EzyCW0yzixutBg$ > > I’ve never made it to work, but I know some do. > > A while back, Stefano gave me this pointer as well: > https://urldefense.us/v3/__https://github.com/mfem/mfem/blob/17955e114020af340e9a06a66ebef43e05012d9c/linalg/hypre.cpp*L5245__;Iw!!G_uCfscf7eWS!fdj4AzKhAcDmM1x_ZQ8gxqWeX6BAKY9urnvATMpT7hC8lw77ak7tqxqXGIX3PMg2wYA5PGu7EzyCW0wVEi33Pw$ > > It's still classical AMG, and in my experience, struggles on very thin > structures (e.g., aspect ratio 1000 cantilever beams) when compared to SA. > However, it can be quite competitive for many structures. I found that the > "MFEM elasticity suite", which is based on Baker et al 2010, gave rather > poor results. This is a configuration that works on GPUs and gives good > convergence and performance for elasticity: > > > https://urldefense.us/v3/__https://github.com/hypre-space/hypre/issues/601*issuecomment-1069426997__;Iw!!G_uCfscf7eWS!arUVBVKKcYs1M5OhNqqRZl2b2o0NIUkG7fV_22qBbg-ssHhhHazhkpMbYNjCOTN66Sfbk-VZilfox9bxDf0$ > > In the above issue, I was only using BoomerAMG as a coarse level for p-MG > so all the options have a `-mg_coarse_` prefix; here are those options > without the prefix: > > -pc_hypre_boomeramg_coarsen_type pmis > -pc_hypre_boomeramg_interp_type ext+i > -pc_hypre_boomeramg_no_CF > -pc_hypre_boomeramg_P_max 6 > -pc_hypre_boomeramg_print_statistics 1 > -pc_hypre_boomeramg_relax_type_down Chebyshev > -pc_hypre_boomeramg_relax_type_up Chebyshev > -pc_hypre_boomeramg_strong_threshold 0.5 > -pc_type hypre > -- --Amneet