step-7 remarks on superconvergence and quadrature

58 views
Skip to first unread message

Praveen C

unread,
Jul 5, 2020, 12:41:55 AM7/5/20
to Deal. II Googlegroup
Dear all

In step-7


under section on "Verification of correctness”, there is this statement

(e.g., for linear elements, do not use the QGauss(2) quadrature formula)

because solution may exhibit superconvergence at the QGauss(2) points.

If we solve

-u’’ = 16*pi^2*sin(4*pi*x) in (0,1)
u(0) = 0, u(1) = 1

using 8 linear elements and QGauss(2) for quadrature.

The error is very small at the vertices of the mesh, not at the QGauss(2) points.

Can you look into this issue, is the comment in the documentation wrong, perhaps it should say do not use QGaussLobatto(2) ? Or is there some issue I am missing here ?

Thanks
praveen

Wolfgang Bangerth

unread,
Jul 6, 2020, 11:23:56 PM7/6/20
to dea...@googlegroups.com

> In step-7
>
> https://www.dealii.org/current/doxygen/deal.II/step_7.html
> <https://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.dealii.org%2Fcurrent%2Fdoxygen%2Fdeal.II%2Fstep_7.html&data=02%7C01%7CWolfgang.Bangerth%40colostate.edu%7C95a7523f571844a4dbc308d8209dbf1a%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C0%7C637295209184273315&sdata=PbscIaF1YgoA6TOFydENsrn79iERjXLdAeV9g7b5u94%3D&reserved=0>
>
> under section on "Verification of correctness”, there is this statement
>
> *(e.g., for linear elements, do not use the QGauss(2) quadrature formula)*
>
> because solution may exhibit superconvergence at the QGauss(2) points.
>
> If we solve
>
> -u’’ = 16*pi^2*sin(4*pi*x) in (0,1)
> u(0) = 0, u(1) = 1
>
> using 8 linear elements and QGauss(2) for quadrature.
>
> The error is very small at the vertices of the mesh, not at the QGauss(2) points.
>
> Can you look into this issue, is the comment in the documentation wrong,
> perhaps it should say *do not use QGaussLobatto(2)* ? Or is there some issue I
> am missing here ?

Ah, very interesting question! You're right that in some situations -- the
Laplace equation in 1d specifically -- the superconvergence points are in fact
the vertices of the cells.

But that's not true in 2d/3d. There, at least the recollection I have from
when I learned about this many years ago, the superconvergence points are
indeed the Gauss points. Want to try that out as well in a small experiment?
Say take a 16x16 mesh, and plot both solution and discrete solution in a part
of the domain well away from the boundary, and see where the two seem to
intersect.

(As always, we're always happy to improve the documentation. Clearly, what I
said in step-7 is not the complete truth and ought to be improved, but I'd
rather we check what we say before coming up with a better description :-) )

Cheers
W.

--
------------------------------------------------------------------------
Wolfgang Bangerth email: bang...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/

Praveen C

unread,
Jul 7, 2020, 12:40:57 AM7/7/20
to Deal. II Googlegroup
I did this quick test in 2d for a Poisson problem

https://github.com/cpraveen/fembook/blob/master/deal.II/ex04/demo.cc
(Change quadrature rules in this code as indicated below)

degree=1
assembly using QGauss(2)
error computed using QGauss(2)

cells   dofs        L2         H1seminorm       
  1024   1089 1.606e-03    - 2.517e-01    - 
  4096   4225 4.015e-04 2.00 1.259e-01 1.00 
 16384  16641 1.004e-04 2.00 6.295e-02 1.00 
 65536  66049 2.510e-05 2.00 3.148e-02 1.00 
262144 263169 6.275e-06 2.00 1.574e-02 1.00 


We just observe the standard convergence rates, does not indicate superconvergence.

The following two also yield standard convergence rates

degree=1
assembly using QGauss(2)
error computed using QGaussLobatto(2)

degree=1
assembly using QGaussLobatto(2)
error computed using QGaussLobatto(2)

This indicates there is no superconvergence at the mesh vertices.

(In all cases above, the matrix is exactly assembled.)

Best
praveen

--
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+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/d07ed649-dc11-53e4-7e48-3f348f97caf2%40colostate.edu.

Wolfgang Bangerth

unread,
Jul 10, 2020, 12:11:09 PM7/10/20
to dea...@googlegroups.com, Praveen C

Praveen,

> https://github.com/cpraveen/fembook/blob/master/deal.II/ex04/demo.cc
> <https://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcpraveen%2Ffembook%2Fblob%2Fmaster%2Fdeal.II%2Fex04%2Fdemo.cc&data=02%7C01%7CWolfgang.Bangerth%40colostate.edu%7C64e1553a3ee443da7b0c08d8222ff1ad%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C0%7C637296936604213536&sdata=2KnxkD9r19uV5h41HYbakCAmD2PzuPddCZN0tv%2B%2BAE4%3D&reserved=0>
> (Change quadrature rules in this code as indicated below)
>
> degree=1
> assembly using QGauss(2)
> error computed using QGauss(2)
>
> cells   dofs        L2         H1seminorm
>   1024   1089 1.606e-03    - 2.517e-01    -
>   4096   4225 4.015e-04 2.00 1.259e-01 1.00
>  16384  16641 1.004e-04 2.00 6.295e-02 1.00
>  65536  66049 2.510e-05 2.00 3.148e-02 1.00
> 262144 263169 6.275e-06 2.00 1.574e-02 1.00
>
> We just observe the standard convergence rates, does not indicate
> superconvergence.
>
> The following two also yield standard convergence rates
>
> degree=1
> assembly using QGauss(2)
> error computed using QGaussLobatto(2)
>
> degree=1
> assembly using QGaussLobatto(2)
> error computed using QGaussLobatto(2)
>
> This indicates there is no superconvergence at the mesh vertices.
>
> (In all cases above, the matrix is exactly assembled.)

Interesting.

But then, was I completely wrong that something like superconvergence points
exist? Or does the concept only apply when we solve the Laplace equation (the
Poisson equation with f=0)? What is your recollection of superconvergence?

Best

Praveen C

unread,
Jul 13, 2020, 9:39:11 AM7/13/20
to Wolfgang Bangerth, Deal. II Googlegroup
You were right, this happens for degree >= 2

See the discussion in Section 1.2 here


PastedGraphic-1.pdf

Wolfgang Bangerth

unread,
Jul 13, 2020, 3:05:32 PM7/13/20
to Praveen C, Bangerth,Wolfgang, Deal. II Googlegroup
> <https://nam01.safelinks.protection.outlook.com/?url=https:%2F%2Fwww.math.purdue.edu%2F~zhan1966%2Fresearch%2Fpaper%2Fsuperconvergence.pdf&data=02%7C01%7CWolfgang.Bangerth%40colostate.edu%7C48c31868f9844d7e6e5c08d827321e75%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C1%7C637302443507240168&sdata=VqrErQTBylXc7ceblfcvciT2FQOKFRoFOkHIIJGGXLA%3D&reserved=0>
>
>
> and it gives many references.
>
> Nice, I didnt know this.

Neither did I know the requirement k>=2. Thanks a lot for figuring this out --
I've extended the discussion in step-7 here
https://github.com/dealii/dealii/pull/10703
and in particular added the reference you found!

Thanks for following this question and helping us improve the documentation!
Thanks also for allowing me to learn something new!
Reply all
Reply to author
Forward
0 new messages