1. I looked into the step-51 of the tutorial. It does illustrate a paradigm of segregating local DOFs and global DOFs. If I utilize this paradigm, the workflow would solve the local DOFs first (virtual node of the bubble function), which is a block matrix since bubble support from adjacent cells is irrelevant. Then I substitute the solution to the system related to global DOFs (vertices of the standard Lagrange shape function), namely, stabilizing the system. However, this would require certain FEM space in the barycenter of the element (like a FE_Center, in the same fashion as FE_Face), which seems not provided in deal.ii.

You can do as you suggest, but you can also do the local elimination as part of the assembly process. For example, assume that there are n regular and m bubble functions, then you would build a (n+m)x(n+m) local matrix. You can then eliminate the m bubble functions from this local system because you know that they do not couple with any other DoF on other cells. You'd do this by adding multiples of these m lines to the first n lines so that you end up with a block structure of the local matrix that looks like this

 [ A_nn   0]
 [ A_mn   X]

You can think of this in the following way: Let's assume you start with the 
matrix

  [ B_nn B_nm ]
  [ B_mn B_mm ]

Then you need to multiply the second block row by -B_{nm}B_{mm}^{-1} and add the result to the first block row. You then have
  A_nn = B_nn - B_{nm}B_{mm}^{-1}B_{mn}

You'd have to do the same thing to the right hand side vectors, of course.

If you do this, then the global matrix with also have this block triangular structure, and you can solve the problem for the "regular" DoFs using

  B_nn U_n = ...

You *could* also solve for the bubble DoFs using

  B_mm U_m = rhs_m - A_mn U_n

but you don't actually have to do that if you don't care about these DoFs.


2. On the other hand, I am more inclined to use element-wise static condensation (I guess this is somewhat not a rational decision). Is there any example of how to eliminate the virtual DOFs of bubbles from the global system once we have eliminated them locally?

Not that I know of, but the method above should work.


3. The bubbles in FE_Q_Bubbles for a quadratic and higher-order element are not the standard bubbles. Are there any specific references to these bubbles? or how hard it is to modify the bubble function in FE_Q_Bubbles for my own choice?

What is "standard"? The implementation uses one way to define bubbles, but I'm sure there are others. None of these would be very difficult to implement once you understand how the FE_Q_Bubbles class is implemented.

Best
 W.

--
------------------------------------------------------------------------
Wolfgang Bangerth          email:                 [email protected]
                           www: http://www.math.colostate.edu/~bangerth/

--
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/69a55252-6d14-272f-707f-62d8e2b7dbbe%40colostate.edu.

Reply via email to