Logo
  • Keyword list
  • Most recent changes
  • Other versions
  • Overview

    • An Overview of this Document

    Teasers

    • Main Gallery
      • Discontinuous Galerkin Methods
        • Advection-Diffusion: Discontinuous Galerkin Method with Upwinding
        • A linear transport problem
      • Linear Elasticity: a deformed beam
      • Time Dependent Reaction Diffuison: spiral wave
      • Wave Equation: double slit domain (using mass lumping)
      • Saddle point solver for the stationary Stokes problem
        • Monolithic solver (Lagrange and DG formulation)
          • Taylor-Hood formulation
            • Bercovier-Engelmann Testcase
          • DG formulation
            • Bercovier-Engelmann Testcase
          • Convergence rate check
        • Stokes problem with fieldsplit preconditioner (PETSc)
        • (Quasi) Stokes equations (Scipy based Uzawa scheme)
      • Navier-Stokes: flow around a cylinder
      • Mixed method for the Poisson equation
      • Eigenvalue problems
        • Eigenvalues of the Neumann Laplacian
        • Dirichlet Eigenvalue problem
      • Biharmonic problem
        • Implementation
        • Simply supported boundary conditions
      • Adaptive phase field: crystal growth model
      • Moving surface grid: flow under mean curvature
      • Dual Weighted Residual Estimate
    • Extension Modules
      • Discontinuous Galerkin Methods with DUNE-FEM-DG
        • Euler System of Gas Dynamics
        • An Advection-Diffusion-Reaction System: Chemical Reaction Problem
      • Virtual Element Methods with DUNE-VEM
        • Elliptic Problems
        • Nonlinear Elliptic Problem
        • Linear Elasticity
        • Fourth order problem
        • Cahn-Hilliard

    Installation

    • From PyPi
      • Additional external packages
      • Testing the installation
      • Hints for Windows
    • From Source
      • Requirements
      • Building the Required Dune Modules
    • Troubleshooting

    Getting Started

    • Introduction
      • A Laplace problem
      • Laplace equation with Dirichlet boundary conditions
      • A non-linear elliptic problem
      • Using Constant parameters and grid functions in PDEs
    • General Concepts (with a time dependent problem)
      • Setting up the Grid
      • Grid Functions
      • Discrete Spaces
      • Discrete Functions
      • Operators and Schemes
      • A Nonlinear Time Dependent Problem
      • Listing Available Dune Components

    Next Steps

    • More General Boundary Conditions
      • Dirichlet boundary conditions
      • Accessing the Dirichlet degrees of freedom
      • Neumann and Robin boundary conditions
      • Using boundary ids (and some more complex examples)
        • Cartesian boundary ids
        • Mixing different types of boundary conditions
    • Tweaking the (non-) linear solvers
      • Python sided Newton solver
      • Handling Dirichlet boundary conditions
      • Other internal solvers (petsc)
      • Other internal solvers (istl)
      • Parameters for fine-tuning the internal solvers
      • Available solvers and parameters
    • Alternative Solvers (e.g. Scipy, Petsc)
      • Accessing underlying data structures
      • Defining discrete function with given external dof vector
      • Using Scipy
      • Using scikit-umfpack
      • Using PETSc4Py
    • Examples of grid construction
      • Example using the Dune Grid Format (DGF)
      • 3D example (using PyGmsh)
      • Converting gmsh to DGF
        • Attaching boundary ids to a grid constructed with gmsh using DGF
        • Visualizing Boundary Ids
      • Using meshio to read a gmsh file
      • 1D example
    • Parallelization
      • OpenMP
      • MPI
        • Load balancing
    • Backup and restore (pickling)
      • Pickling
      • A Chekpointer class
    • Using the Full Grid Interface
      • Overview
      • Dense Vectors and the Geometry Classes
      • Grid Construction and Basic Interface
        • Structured grids
        • Unstructured grids
        • Local grid adaptivity
          • Basic information and iterators
      • Using grid functions
      • Importing user defined C++ code
      • Attaching Data to the Grid
      • Output of Grid and Visualization of Data
        • Matplotlib
        • Paraview (vtu/vtk files)
        • Mayavi
        • Low level output

    Further Topics

    • Grid views and adaptivity
      • Overview and some basic grid views (level and filtered)
        • LevelGridView examples
        • FilteredGridView examples
      • Dynamic Local Grid Refinement and Coarsening
        • Re-entrant Corner Problem
        • Adaptive phase field: crystal growth model
      • Overview on adaptivity for spaces (p-adaptation)
        • HP adaptive DG scheme for twophase flow problem
          • Problem Description
          • Defining the model
          • Time discretization
          • Stabilization (Limiter)
          • Iterative schemes (iterative or impes-iterative)
          • HP Adpativity
          • Marker for grid adaptivity (h).
          • Marker for space adaptivity (p)
          • Main program
      • Evolving Domains
        • Moving surface grid: flow under mean curvature
        • Linear Elasticity: a deformed beam
    • Using C++ Code Snippets
      • C++ Based Grid Functions
      • Sampling the Solution over a Line
      • Mean Curvature Flow (revisited)
      • Dual Weighted Residual Estimate (revisited)
    • API for schemes and operators
      • Abstract concepts
      • Operator without DBC:
      • Operator with DBC:
      • Scheme without DBC:
      • Scheme with DBC:
      • Additional
      • Unclear

    Other Projects using Dune-Fem

    • HP adaptive DG scheme for twophase flow problem
      • Problem Description
      • Defining the model
      • Time discretization
      • Stabilization (Limiter)
      • Iterative schemes (iterative or impes-iterative)
      • HP Adpativity
      • Marker for grid adaptivity (h).
      • Marker for space adaptivity (p)
      • Main program
    • Mixed-dimensional PDEs: the Dune-MMesh module
      • Dune-MMesh: Solving a Mixed-dimensional PDE
    • Components for the Landlab software package
      • Linear Advection
        • Advection of a Gaussian “bump” in 2d
          • Raster grid with advection to the east
            • Instantiate component
          • Raster grid with advection to the north
          • Raster grid with advection to the southwest
          • Raster grid with a non-uniform advection field
          • Case of divergent velocity
        • A rotating cone
      • A Linear Diffusion Overland Flow Model
        • Overview
          • Model
            • Flow direction, depth, and velocity
          • Numerical Methods
          • The component
        • Example 2: overland flow on a DEM
        • References
    • DDFEM: Diffuse Domain Python package

    Information and Resources

    • Citing this project
    • Information for C++ Developers
      • Remove and rebuild existing modules
      • Using a debugger
      • List of build specific environment variables
    • Contributing to this tutorial
    • How to showcase your own work
    • Additional Scripts
    • Changelog
      • Since 2.9 release
        • General changes
          • Updating to newer version of UFL
          • New clone method on spaces
          • Dirichlet BCs for operators with different range/domain space
          • Changes to solver parameter keys
          • Added a solve method to the linearization of schemes
          • Updated dune.fem.scheme.linearized
          • Add operator __len__ to spaces.
          • Add DirichletIndices method to operators and schemes
          • Extension of the jacobian method on schemes and operators
          • Set non default quadratures in quadrature rules
          • Assembly function
          • Improved Pickling support
          • Paraview Reader
          • Sampler along Boundary
          • Point sampler returning (entity,local coordinate) for given global coordinate
          • Improved Boundary Indexing in UFL Forms (for boundary integrals and Dirichlet conditions)
          • Eisenstatwalker in Newton method
          • Storage setup in scheme
          • Methods on space to return local mapper and for evaluating basis functions
          • Logging of parameter values
          • Deprecation of the rhs argument for scheme.solve
          • Deprecation of dune.fem.function.integrate
          • Deprecation of dune.fem.function.uflFunction and dune.fem.function.cppFunction
          • Deprecation of dune.ufl.expression2GF
          • Deprecation of dune.fem.operator.linear
          • Deprecation of dune.fem.space.combinedSpace
        • DUNE-VEM
          • Dirichlet constraints for conforming $C^1$ space
          • Intersection integrals now use the edge projections
      • Since 2.10 release
        • Breaking changes
        • General changes
        • Bugfixes
          • Pickling of discrete functions
    • DUNE-FEM Tutorial Versions
    • Keyword index

    Additional pages

    • Converting gmsh to DGF
    • Slurm batch script
    • API for schemes and operators
      • Abstract concepts
      • Operator without DBC:
      • Operator with DBC:
      • Scheme without DBC:
      • Scheme with DBC:
      • Additional
      • Unclear
    • List of things that need doing…
    DUNE-FEM Tutorial
    • Main Gallery
    • Saddle point solver for the stationary Stokes problem
    Previous Next

    Saddle point solver for the stationary Stokes problem

    • Monolithic solver (Lagrange and DG formulation)
    • Stokes problem with fieldsplit preconditioner (PETSc)
    • (Quasi) Stokes equations (Scipy based Uzawa scheme)
    https://zenodo.org/badge/DOI/10.5281/zenodo.3706994.svg
    Previous Next

    © Copyright 2018-2026, Andreas Dedner and Robert Klöfkorn. Last updated on Feb 15, 2026.

    Built with Sphinx using a theme provided by Read the Docs.