{
  "aliases": null,
  "backlinks": null,
  "body": "\n## Definition\n\nLet $I = \\set{1, \\dots, n}$ be an index set.\nA *cluster tree* on $I$ is a rooted [[tree|062D9KXJB1]] whose nodes are nonempty subsets of $I$.\nIts root is $I$, and the children of each node partition that node.\nLet $\\mathcal{P}$ be a partition of $I \\times I$ into blocks $\\tau \\times \\sigma$ with $\\tau$ and $\\sigma$ nodes of the cluster tree.\nLet $\\mathcal{P} = \\mathcal{P}^{+} \\cup \\mathcal{P}^{-}$ be a split into *admissible* blocks $\\mathcal{P}^{+}$ and the remaining blocks $\\mathcal{P}^{-}$.\nLet $k \\ge 0$ be an integer.\nLet $M$ be a real [[matrix|0VD9ZSWWJG]] with rows and columns indexed by $I$.\nIt is a *hierarchical matrix* ($\\mathcal{H}$-matrix) of local rank $k$ for $\\mathcal{P}$ if each admissible block has small rank.\nThat is, $M|_{\\tau \\times \\sigma}$ has [[rank|0ZC9YTXZRY]] at most $k$ for every $\\tau \\times \\sigma \\in \\mathcal{P}^{+}$.\n\n## Remarks\n\nEach admissible block is stored as a product $X Y^T$ with $X$ of size $\\abs{\\tau} \\times k$ and $Y$ of size $\\abs{\\sigma} \\times k$.\nThe blocks in $\\mathcal{P}^{-}$ are stored in full; the partition is built so that they are small.\nIn applications each index $i$ carries a point $x_i \\in \\R^d$, and $\\Omega_\\tau$ is the set of points of a cluster $\\tau$.\nThe standard admissibility condition is $\\min(\\operatorname{diam} \\Omega_\\tau, \\operatorname{diam} \\Omega_\\sigma) \\le \\eta \\operatorname{dist}(\\Omega_\\tau, \\Omega_\\sigma)$ for a fixed $\\eta \u003e 0$.\nWith this condition, the matrices of asymptotically smooth kernels such as $1 / \\abs{x - y}$ are well approximated by $\\mathcal{H}$-matrices of small rank.\nExample: let $n = 2m$, split $I$ into halves $\\tau_1$ and $\\tau_2$, and call the two off-diagonal blocks admissible.\nA block diagonal matrix has zero off-diagonal blocks, of rank $0$, so it is an $\\mathcal{H}$-matrix of every local rank $k$.\nNon-example: the exchange matrix, with ones on the antidiagonal, has off-diagonal blocks of rank $m$.\nSo it is not an $\\mathcal{H}$-matrix of local rank $k \u003c m$ for this partition.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "defines": "5P5EMYHXE5",
    "kind": "definition",
    "msc": [
      "65F55",
      "65F05",
      "65N38"
    ],
    "name": "Hierarchical matrix",
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Hierarchical_matrix"
      }
    ],
    "tag": "F92JJR2NZE",
    "uses": [
      "0VD9ZSWWJG",
      "0ZC9YTXZRY",
      "062D9KXJB1"
    ]
  },
  "kind": "definition",
  "link": "https://tamnd.github.io/math2/node/F92JJR2NZE/",
  "links": [
    {
      "field": "defines",
      "target": "5P5EMYHXE5"
    },
    {
      "field": "uses",
      "target": "0VD9ZSWWJG"
    },
    {
      "field": "uses",
      "target": "0ZC9YTXZRY"
    },
    {
      "field": "uses",
      "target": "062D9KXJB1"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/F92JJR2NZE.md",
  "msc": [
    "65F55",
    "65F05",
    "65N38"
  ],
  "name": "Hierarchical matrix",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/F92/F92JJR2NZE.md",
  "status": null,
  "tag": "F92JJR2NZE",
  "uri": "m2://F92JJR2NZE",
  "url": "https://tamnd.github.io/math2/wiki/hierarchical-matrix-definition/",
  "writing": {
    "tag": "F92JJR2NZE",
    "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
      }
    ]
  }
}
