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:
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.