Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-27 Thread 晓峰 何
Many thanks for your concrete replies. They are very helpful. Best Wishes, Xiaofeng On Sep 27, 2022, at 20:01, Mark Adams mailto:mfad...@lbl.gov>> wrote: Shells can be pretty hard. Start with an easy problem with well-shaped elements and probably best to start with a well-supported structure

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-27 Thread Barry Smith
Composed preconditioners (like field split) have multiple moving parts and you need to "tune" them for each part separately; you cannot just run the entire preconditioner, get slow convergence on the entire problem and then give up. So step one is to get a good preconditioner for

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-27 Thread Mark Adams
Shells can be pretty hard. Start with an easy problem with well-shaped elements and probably best to start with a well-supported structure (eg, not a long cantilever). You should also configure with hypre and try that. I don't know if they deal with shells, but it is a well developed solver.

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-27 Thread 晓峰 何
Hello, A00 comes from shell structures and discretized by FEM. Thanks, Xiaofeng On Sep 27, 2022, at 17:48, Mark Adams mailto:mfad...@lbl.gov>> wrote: what equations and discetizations are in A00? On Tue, Sep 27, 2022 at 1:45 AM 晓峰 何 mailto:tlan...@hotmail.com>> wrote: Hi Barry, A00 is

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-27 Thread Mark Adams
what equations and discetizations are in A00? On Tue, Sep 27, 2022 at 1:45 AM 晓峰 何 wrote: > Hi Barry, > > A00 is formed from elliptic operator. > > I tried GAMG with A00, but it was extremely slow to solve the system with > field-split preconditioner(I’m not sure I did it with the right way). >

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread 晓峰 何
Hi Barry, A00 is formed from elliptic operator. I tried GAMG with A00, but it was extremely slow to solve the system with field-split preconditioner(I’m not sure I did it with the right way). Thanks, Xiaofeng On Sep 26, 2022, at 23:11, Barry Smith mailto:bsm...@petsc.dev>> wrote: What is

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread Barry Smith
What is your A00 operator? ILU is almost never a good choice for large scale problems. If it is an elliptic operator that using a PC of gamg may work well for the A00 preconditioner instead of ILU. Barry For moderate size problems you can use a PC type LU for AOO to help you

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread 晓峰 何
Hello Matt, Many thanks for your suggestion. BR, Xiaofeng On Sep 26, 2022, at 20:29, Matthew Knepley mailto:knep...@gmail.com>> wrote: Another option are the PCPATCH solvers for multigrid, as shown in this paper: https://arxiv.org/abs/1912.08516 which I believe solves incompressible

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread 晓峰 何
Hello Jed, The saddle point is due to Lagrange multipliers, thus the size of A11 is much smaller than A00. Best Regards, Xiaofeng On Sep 26, 2022, at 21:03, Jed Brown mailto:j...@jedbrown.org>> wrote: Lagrange multipliers

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread Jed Brown
Xiaofeng, is your saddle point due to incompressibility or other constraints (like Lagrange multipliers for contact or multi-point constraints)? If incompressibility, are you working on structured or unstructured/non-nested meshes? Matthew Knepley writes: > Another option are the PCPATCH

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread Matthew Knepley
Another option are the PCPATCH solvers for multigrid, as shown in this paper: https://arxiv.org/abs/1912.08516 which I believe solves incompressible elasticity. There is an example in PETSc for Stokes I believe. Thanks, Matt On Mon, Sep 26, 2022 at 5:20 AM 晓峰 何 wrote: > Are there other

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread 晓峰 何
Are there other approaches to solve this kind of systems in PETSc except for field-split methods? Thanks, Xiaofeng On Sep 26, 2022, at 14:13, Jed Brown mailto:j...@jedbrown.org>> wrote: This is the joy of factorization field-split methods. The actual Schur complement is dense, so we

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-26 Thread Jed Brown
This is the joy of factorization field-split methods. The actual Schur complement is dense, so we represent it implicitly. A common strategy is to assemble the mass matrix and drop it in the 11 block of the Pmat. You can check out some examples in the repository for incompressible flow (Stokes

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-25 Thread 晓峰 何
If assigned a preconditioner to A11 with this cmd options: -fieldsplit_0_ksp_type gmres -fieldsplit_0_pc_type ilu -fieldsplit_1_ksp_type gmres -fieldsplit_1_pc_type ilu Then I got this error: "Could not locate a solver type for factorization type ILU and matrix type schurcomplement" How

Re: [petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-25 Thread Jed Brown
The usual issue is that you need a preconditioner for the Schur complement S = A11 - A01 A00^{-1} A10. For incompressible elasticity, this S is spectrally equivalent to a scaled mass matrix. 晓峰 何 writes: > Hi all, > > I have a linear system formed from structural mechanics, and there exists

[petsc-users] Solve Linear System with Field Split Preconditioner

2022-09-25 Thread 晓峰 何
Hi all, I have a linear system formed from structural mechanics, and there exists zero in the diagonal entries: A = (A00 A01 A10 A11), where A00 has inverse and the diagonal entries in A11 are all zero. The GMRES method with ILU preconditioner in PETSc was carried out to solve this