Why do many people use FDM method to solve Stokes equations, i.e., saddle point matrix?

For numerical methods of the Stokes equations, with appropriate boundary:

$$-\nabla^{2} \vec{u}+\nabla p=\overrightarrow{0}$$

$$\nabla \cdot \vec{u}=0$$

one may use FDM (finite difference method) or FEM (finite element method) to discretize it, which can both be tranformed into a saddle points system as follows:

$$\left[\begin{array}{ll}{A} & {B^{T}} \\ {B} & {O}\end{array}\right]\left[\begin{array}{l}{\mathbf{u}} \\ {\mathbf{p}}\end{array}\right]=\left[\begin{array}{l}{\mathbf{f}} \\ {\mathbf{g}}\end{array}\right]$$

Where $$A$$ is vector laplacian, and $$B$$ is full row rank.

1, If we use FEM, then for the large saddle points system, we can use Krylov methods, such as MINRES with block-diagonal preconditioner M = blkdiag(A,S), where $$A$$ can be approximated by AMG, and the Schur complement S can be approximated by pressure mass matrix (because the pressure mass matrix has been proved that it is spectrally equivalent to Schur complement S), which will result an optimal iteration results, i.e., iteration number independent of mesh size. So in this case, I think there is no other better preconditioner than this block-diagonal preconditioner. Anyone know is there some other better choice?

2, If we use FDM method, then there will be no such a concept of mass matrix, so we can not use some preconditioner with the Schur complement form S, and in this case, only the matrix A can be approximated by AMG, so we cannot get an optimal iteration results (independent of mesh size).

My question is: In my opinion, for the stokes equations, the best method at the present(though I should know that there is no best) is FEM with block-diagonal preconditioner, right? But I still find many preconditioners such as HSS(Hermitian and skew-Hermitian splitting), and some variants: AHSS, PHSS, RHSS, and shift-splitting, generalized shift-splitting and so on in the literature. If one preconditioner (denoted by M1) performs poorer than the FEM with block-diagonal preconditioner, what sense does that M1 have? (because I have seen that in many publications, the new methods presented by the author does not perform better than the FEM with block-diagonal preconditioner, e.g., they use Cholesky to approximate stiffness matrix $$A$$ which is so expensive) I am really confused by the so many methods in the literature. Because I think those are meanless unless they can perform better than the FEM method with block-diagonal preconditioner.

Can you give me some suggestions about my doubts or give your opinions about the saddle system?

The preconditioner for the FDM method that corresponds to the one you outline for the FEM (i.e., the Sylvester-Wathen approach) will still contain the Schur complement of the FDM matrix. The Schur complement of the FDM matrix will, in general, have the same kind of structure it has for the FEM, i.e., it will be spectrally equivalent to the identity operator on the discrete function space.

For the FEM, a convenient matrix that represents the identity operator is the mass matrix, and consequently that is what is used to build the preconditioner. For the FDM, the matrix that corresponds to the identity operator is, of course, the identity matrix, and so that would be what is used in building the preconditioner.

All of this is motivated by the understand that, at their core, FEM and FDM are really not all that different. Many FDM methods can be obtained by using the FEM with particular quadrature formulas, for example.

• thanks. I see, in FDM case, we still can use block diagonal matrix M=blkdiag(A,S) preconditioner and S still can be approximated by identity matrix. In addition, I want to ask, other than the block diagonal matrix preconditioner, is there better choice preconditioner? As far as I am concerned, there is no better preconditioner than it for saddle points problem. though still many methods in publications, but I find they donot perform better than block diagonal preconditioner. Am I right? – sunshine Sep 6 '19 at 0:35
• There are certainly better choices -- the Schur complement is not identical to the identity operator, it's just spectrally equivalent. So if you can come up with something that's closer to the Schur complement, you have a better preconditioner. You should look into the BDBT (or is it BTDB) type of preconditioners for the FEM and think how it should be adapted to the FDM context. – Wolfgang Bangerth Sep 7 '19 at 5:25