{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Definition\n\nLet $\\Omega \\subset \\R^d$ be a bounded polygonal domain and let $F \\colon \\R \\to \\R^d$ be a $C^1$ flux.\nConsider the scalar [[conservation law|8RA7AMWSAF]] $u_t + \\nabla \\cdot F(u) = 0$ on $\\Omega$.\nLet $\\mathcal{T}_h$ be a mesh of $\\Omega$ and $k \\ge 0$ an integer.\nLet $V_h$ be the functions that are [[polynomials|07GNX8GCYP]] of degree at most $k$ on each element $K$, with no continuity condition between elements.\nLet $\\hat H(a, b, n)$ be a numerical flux, such as a [[Riemann solver|ZY4GY93C4B]], with $\\hat H(a, a, n) = F(a) \\cdot n$ and $\\hat H(a, b, n) = -\\hat H(b, a, -n)$.\nThe *discontinuous Galerkin method* seeks $u_h(t) \\in V_h$ such that, for every $K \\in \\mathcal{T}_h$ and every polynomial $v$ of degree at most $k$ on $K$,\n$$\\int_K \\partial_t u_h \\, v \\, dx - \\int_K F(u_h) \\cdot \\nabla v \\, dx + \\int_{\\partial K} \\hat H(u_h^-, u_h^+, n_K) \\, v \\, ds = 0.$$\nHere $n_K$ is the outward unit normal of $K$, and $u_h^-$ and $u_h^+$ are the traces of $u_h$ from inside and outside $K$.\n\n## Remarks\n\nThe equation is the weak form on one element, obtained by multiplying by $v$ and integrating by parts once.\nThe boundary flux $F(u) \\cdot n_K$ is replaced by $\\hat H$, because $u_h$ has two values on $\\partial K$.\nSince the test functions live on one element, the mass matrix is block diagonal and explicit time stepping is cheap.\nTaking $v = 1$ on $K$ shows that the integral of $u_h$ over $K$ changes only through the fluxes on $\\partial K$.\n\nExample: for $k = 0$ and $d = 1$, with cells $K_i$ of width $\\Delta x$, $u_h = u_i$ on $K_i$.\nHere $\\nabla v = 0$, and the conservation property of $\\hat H$ turns the flux on the left face into $-\\hat H(u_{i-1}, u_i)$, with $\\hat H(a, b)$ short for $\\hat H(a, b, +1)$.\nThe equation reads $\\Delta x \\, u_i' + \\hat H(u_i, u_{i+1}) - \\hat H(u_{i-1}, u_i) = 0$, a [[finite volume|HGKN8E09RS]] scheme.\n\nNon-example: the continuous [[Galerkin method|Y5B0PEBKE8]] with continuous piecewise polynomials uses a space with continuity across elements and no numerical flux.\nIt does not have the element-by-element form above.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "defines": "6P5MCRDD9Q",
    "kind": "definition",
    "msc": [
      "65M60",
      "65N30",
      "35L65"
    ],
    "name": "Discontinuous Galerkin method",
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Discontinuous_Galerkin_method"
      }
    ],
    "tag": "J332CQ8SPB",
    "uses": [
      "8RA7AMWSAF",
      "Y5B0PEBKE8",
      "ZY4GY93C4B",
      "07GNX8GCYP"
    ]
  },
  "kind": "definition",
  "link": "https://tamnd.github.io/math2/node/J332CQ8SPB/",
  "links": [
    {
      "field": "defines",
      "target": "6P5MCRDD9Q"
    },
    {
      "field": "uses",
      "target": "8RA7AMWSAF"
    },
    {
      "field": "uses",
      "target": "Y5B0PEBKE8"
    },
    {
      "field": "uses",
      "target": "ZY4GY93C4B"
    },
    {
      "field": "uses",
      "target": "07GNX8GCYP"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/J332CQ8SPB.md",
  "msc": [
    "65M60",
    "65N30",
    "35L65"
  ],
  "name": "Discontinuous Galerkin method",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/J33/J332CQ8SPB.md",
  "status": null,
  "tag": "J332CQ8SPB",
  "uri": "m2://J332CQ8SPB",
  "url": "https://tamnd.github.io/math2/wiki/discontinuous-galerkin-method-definition/",
  "writing": {
    "tag": "J332CQ8SPB",
    "kind": "definition",
    "level": "W0",
    "next": [
      {
        "what": "an inventory row",
        "note": "the row of the inventory that the node accounts for",
        "have": 0,
        "want": 1
      },
      {
        "what": "a source with a locator",
        "have": 0,
        "want": 1
      }
    ]
  }
}
