step9
Display Error Decay for Sequence of Adaptive Meshes


step9, a FENICS code which uses the Discontinuous Petrov Galerkin (DPG) method to solve a Poisson problem, and repeatedly refines the mesh, guided by DPG error indicators. On each refinement step, the top fifty percent of the cells are refined, as ordered by size of local error estimates. It then plots the decay of the estimated error as a function of the number of mesh elements.

The program relies heavily on the ideas and implementation embodied in Jay Gopalakrishnan's dpg_laplace code.

Note that I have installed FENICS using Docker, and so to run this script I issue the commands:

  1. cd $HOME/fenicsproject/step9
  2. fenicsproject run
  3. python3 step9.py
  4. exit

Licensing:

The GNU LGPL license.

Related Data and Programs:

dpg_bvp, a FENICS script which uses the Discontinuous Petrov Galerkin (DPG) method to solve a boundary value problem over an interval, by Jay Gopalakrishnan.

dpg_laplace, a FENICS script which uses the Discontinuous Petrov Galerkin (DPG) method to solve a Poisson problem over the unit square, by Jay Gopalakrishnan.

dpg_laplace_adapt, a FENICS script which uses the Discontinuous Petrov Galerkin (DPG) method to solve a Poisson problem over the unit square, with adaptivity, by Jay Gopalakrishnan.

Reference:

  1. Jay Gopalakrishnan,
    Five lectures on DPG Methods,
    Spring 2013, Portland State University,
    arXiv:1306.0557v2 [math.NA] 28 Aug 2014.

Source Code:


Last revised on 05 November 2018.