Files
MeanField_SERiF/docs/html/computations_2inverse_8hpp__incl.svg
Emily Boudreaux 6b57738330 docs(docs): built docs
Note for now much of the docs is LLM written. This was done to save time and focus on code development. The docs have been LOOSLEY reviewed. However, the code itself has been either fully written by hand or fully reviewed. Therefore, the docs should at the moment be seen as a loose resource rather than authoratiative (and this is on top of the general ability for docs to drift)
2026-11-09 14:09:44 -05:00

1345 lines
66 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 14.1.2 (20260124.0452)
-->
<!-- Title: src/include/serif/backend/mfem/solver/preconditioner/computations/inverse.hpp Pages: 1 -->
<!--zoomable 483 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/></use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040"><set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/></use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="arrowUp" transform="translate(30 24)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowRight" transform="rotate(90) translate(36 -43)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowDown" transform="rotate(180) translate(-30 -48)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowLeft" transform="rotate(270) translate(-36 17)">
<use xlink:href="#rim"/>
<path pointer-events="none" fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040"><set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/></use>
</g>
</defs>
<script type="application/ecmascript">
var viewWidth = 2204;
var viewHeight = 483;
var sectionId = 'dynsection-0';
</script>
<script type="application/ecmascript" xlink:href="svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>src/include/serif/backend/mfem/solver/preconditioner/computations/inverse.hpp</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="1310.81,-474.5 1174.06,-474.5 1174.06,-432.75 1310.81,-432.75 1310.81,-474.5"/>
<text xml:space="preserve" text-anchor="start" x="1182.06" y="-461" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/serif/backend</text>
<text xml:space="preserve" text-anchor="start" x="1182.06" y="-449.75" font-family="Helvetica,sans-Serif" font-size="10.00">/mfem/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1242.43" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">/computations/inverse.hpp</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="194.31,-24.88 138.56,-24.88 138.56,-5.63 194.31,-5.63 194.31,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="166.43" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">concepts</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1173.94,-450.81C913.78,-443 1.43,-407.14 1.43,-287.88 1.43,-287.88 1.43,-287.88 1.43,-147.25 1.43,-110.38 -4.3,-93.85 20.43,-66.5 47.69,-36.35 93.88,-24.29 127.01,-19.46"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="127.15,-22.97 136.63,-18.23 126.26,-16.03 127.15,-22.97"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="errors_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="679.81,-224.38 555.06,-224.38 555.06,-205.12 679.81,-205.12 679.81,-224.38"/>
<text xml:space="preserve" text-anchor="middle" x="617.43" y="-210.88" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/error/errors.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge2_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge2_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1173.92,-448.06C1072.92,-440.53 889.54,-423.63 829.43,-396.75 741.84,-357.57 662.75,-270.5 631.54,-233.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="634.38,-231.16 625.32,-225.67 628.97,-235.61 634.38,-231.16"/>
</a>
</g>
</g>
<!-- Node25 -->
<g id="Node000025" class="node">
<title>Node25</title>
<g id="a_Node000025"><a xlink:href="block_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="966.31,-385.5 838.56,-385.5 838.56,-355 966.31,-355 966.31,-385.5"/>
<text xml:space="preserve" text-anchor="start" x="846.56" y="-372" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="902.43" y="-360.75" font-family="Helvetica,sans-Serif" font-size="10.00">/recipes/block.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node25 -->
<g id="edge32_Node000001_Node000025" class="edge">
<title>Node1&#45;&gt;Node25</title>
<g id="a_edge32_Node000001_Node000025"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1173.63,-436.16C1115.93,-422.35 1033.79,-402.69 975.05,-388.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="976.01,-385.26 965.47,-386.34 974.38,-392.07 976.01,-385.26"/>
</a>
</g>
</g>
<!-- Node47 -->
<g id="Node000047" class="node">
<title>Node47</title>
<g id="a_Node000047"><a xlink:href="solver_2preconditioner_2computations_2physical__blocks_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1146.68,-396.75 1030.18,-396.75 1030.18,-343.75 1146.68,-343.75 1146.68,-396.75"/>
<text xml:space="preserve" text-anchor="start" x="1038.18" y="-383.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="1038.18" y="-372" font-family="Helvetica,sans-Serif" font-size="10.00">/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="start" x="1038.18" y="-360.75" font-family="Helvetica,sans-Serif" font-size="10.00">/computations/physical</text>
<text xml:space="preserve" text-anchor="middle" x="1088.43" y="-349.5" font-family="Helvetica,sans-Serif" font-size="10.00">_blocks.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node47 -->
<g id="edge37_Node000001_Node000047" class="edge">
<title>Node1&#45;&gt;Node47</title>
<g id="a_edge37_Node000001_Node000047"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1203.97,-432.3C1186.9,-423.28 1166.43,-412.47 1147.49,-402.46"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1149.28,-399.44 1138.8,-397.86 1146.01,-405.63 1149.28,-399.44"/>
</a>
</g>
</g>
<!-- Node55 -->
<g id="Node000055" class="node">
<title>Node55</title>
<g id="a_Node000055"><a xlink:href="backend_2mfem_2solver_2preconditioner_2inverse_2diagonal_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1296.93,-391.12 1187.93,-391.12 1187.93,-349.38 1296.93,-349.38 1296.93,-391.12"/>
<text xml:space="preserve" text-anchor="start" x="1195.93" y="-377.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="1195.93" y="-366.38" font-family="Helvetica,sans-Serif" font-size="10.00">/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1242.43" y="-355.12" font-family="Helvetica,sans-Serif" font-size="10.00">/inverse/diagonal.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node55 -->
<g id="edge56_Node000001_Node000055" class="edge">
<title>Node1&#45;&gt;Node55</title>
<g id="a_edge56_Node000001_Node000055"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1242.43,-432.51C1242.43,-423.51 1242.43,-412.69 1242.43,-402.66"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1245.93,-402.93 1242.43,-392.93 1238.93,-402.93 1245.93,-402.93"/>
</a>
</g>
</g>
<!-- Node58 -->
<g id="Node000058" class="node">
<title>Node58</title>
<g id="a_Node000058"><a xlink:href="backend_2mfem_2solver_2preconditioner_2inverse_2dense_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1699.93,-391.12 1590.93,-391.12 1590.93,-349.38 1699.93,-349.38 1699.93,-391.12"/>
<text xml:space="preserve" text-anchor="start" x="1598.93" y="-377.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="1598.93" y="-366.38" font-family="Helvetica,sans-Serif" font-size="10.00">/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1645.43" y="-355.12" font-family="Helvetica,sans-Serif" font-size="10.00">/inverse/dense.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node58 -->
<g id="edge64_Node000001_Node000058" class="edge">
<title>Node1&#45;&gt;Node58</title>
<g id="a_edge64_Node000001_Node000058"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1311.14,-445.86C1380.51,-437.98 1490.28,-422.62 1582.43,-396.75 1584.23,-396.25 1586.04,-395.71 1587.87,-395.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1588.55,-398.6 1596.92,-392.1 1586.32,-391.96 1588.55,-398.6"/>
</a>
</g>
</g>
<!-- Node61 -->
<g id="Node000061" class="node">
<title>Node61</title>
<g id="a_Node000061"><a xlink:href="amg_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1572.93,-391.12 1463.93,-391.12 1463.93,-349.38 1572.93,-349.38 1572.93,-391.12"/>
<text xml:space="preserve" text-anchor="start" x="1471.93" y="-377.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="1471.93" y="-366.38" font-family="Helvetica,sans-Serif" font-size="10.00">/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1518.43" y="-355.12" font-family="Helvetica,sans-Serif" font-size="10.00">/inverse/amg.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node61 -->
<g id="edge70_Node000001_Node000061" class="edge">
<title>Node1&#45;&gt;Node61</title>
<g id="a_edge70_Node000001_Node000061"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1310.84,-436.84C1352.67,-426.63 1407.08,-412.36 1454.43,-396.75 1455.77,-396.31 1457.13,-395.85 1458.49,-395.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1459.37,-398.79 1467.61,-392.13 1457.02,-392.19 1459.37,-398.79"/>
</a>
</g>
</g>
<!-- Node63 -->
<g id="Node000063" class="node">
<title>Node63</title>
<g id="a_Node000063"><a xlink:href="backend_2mfem_2solver_2preconditioner_2inverse_2sparse__direct_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1445.81,-391.12 1315.06,-391.12 1315.06,-349.38 1445.81,-349.38 1445.81,-391.12"/>
<text xml:space="preserve" text-anchor="start" x="1323.06" y="-377.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="1323.06" y="-366.38" font-family="Helvetica,sans-Serif" font-size="10.00">/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1380.43" y="-355.12" font-family="Helvetica,sans-Serif" font-size="10.00">/inverse/sparse_direct.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node63 -->
<g id="edge76_Node000001_Node000063" class="edge">
<title>Node1&#45;&gt;Node63</title>
<g id="a_edge76_Node000001_Node000063"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1276.9,-432.3C1294.85,-421.72 1316.99,-408.66 1336.19,-397.34"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1337.79,-400.46 1344.62,-392.37 1334.23,-394.43 1337.79,-400.46"/>
</a>
</g>
</g>
<!-- Node65 -->
<g id="Node000065" class="node">
<title>Node65</title>
<g id="a_Node000065"><a xlink:href="solver_2preconditioner_2strategies_2inverse_2diagonal_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="2076.43,-385.5 1922.43,-385.5 1922.43,-355 2076.43,-355 2076.43,-385.5"/>
<text xml:space="preserve" text-anchor="start" x="1930.43" y="-372" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1999.43" y="-360.75" font-family="Helvetica,sans-Serif" font-size="10.00">/strategies/inverse/diagonal.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node65 -->
<g id="edge84_Node000001_Node000065" class="edge">
<title>Node1&#45;&gt;Node65</title>
<g id="a_edge84_Node000001_Node000065"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1311.28,-445.22C1449.07,-430.41 1758.54,-397.14 1911.06,-380.75"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1911.13,-384.26 1920.7,-379.71 1910.38,-377.3 1911.13,-384.26"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="495.18,-91.38 429.68,-91.38 429.68,-72.12 495.18,-72.12 495.18,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="462.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">string_view</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M554.8,-207.24C525.38,-200.85 492.46,-188.25 472.43,-163.5 458.78,-146.62 457.91,-120.9 459.4,-103.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="462.87,-103.51 460.58,-93.17 455.92,-102.69 462.87,-103.51"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="525.31,-157.88 481.56,-157.88 481.56,-138.62 525.31,-138.62 525.31,-157.88"/>
<text xml:space="preserve" text-anchor="middle" x="503.43" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">format</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M601.58,-204.78C582.88,-194.2 551.54,-176.47 529.31,-163.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="531.26,-160.97 520.83,-159.1 527.81,-167.07 531.26,-160.97"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="739.56,-91.38 697.31,-91.38 697.31,-72.12 739.56,-72.12 739.56,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="718.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">cstdio</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge5_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M671.01,-204.71C694.96,-197.7 721,-185.33 735.43,-163.5 747.8,-144.79 738.69,-118.78 729.74,-101.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="733.06,-100.15 725.12,-93.13 726.95,-103.56 733.06,-100.15"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="898.43,-157.88 858.43,-157.88 858.43,-138.62 898.43,-138.62 898.43,-157.88"/>
<text xml:space="preserve" text-anchor="middle" x="878.43" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M654.27,-204.65C705.81,-191.91 798.53,-169 846.99,-157.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="847.69,-160.45 856.56,-154.66 846.01,-153.66 847.69,-160.45"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="860.06,-91.38 814.81,-91.38 814.81,-72.12 860.06,-72.12 860.06,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="837.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">cstdint</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node8 -->
<g id="edge7_Node000003_Node000008" class="edge">
<title>Node3&#45;&gt;Node8</title>
<g id="a_edge7_Node000003_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M653.34,-204.68C681.63,-196.55 721.35,-182.9 752.43,-163.5 780.52,-145.97 807.23,-118.12 822.97,-100.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="825.33,-102.77 829.17,-92.89 820.01,-98.22 825.33,-102.77"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="339.31,-91.38 283.56,-91.38 283.56,-72.12 339.31,-72.12 339.31,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="311.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">algorithm</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node9 -->
<g id="edge8_Node000003_Node000009" class="edge">
<title>Node3&#45;&gt;Node9</title>
<g id="a_edge8_Node000003_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M554.72,-209.75C453.79,-202.67 264.51,-186.47 244.43,-163.5 224.66,-140.88 258.17,-113.89 284.52,-97.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="286.03,-100.73 292.84,-92.61 282.45,-94.71 286.03,-100.73"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="591.18,-157.88 543.68,-157.88 543.68,-138.62 591.18,-138.62 591.18,-157.88"/>
<text xml:space="preserve" text-anchor="middle" x="567.43" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">version</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node10 -->
<g id="edge9_Node000003_Node000010" class="edge">
<title>Node3&#45;&gt;Node10</title>
<g id="a_edge9_Node000003_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M610.48,-204.78C602.94,-195.06 590.72,-179.29 581.22,-167.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="584.15,-165.1 575.25,-159.34 578.61,-169.39 584.15,-165.1"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="colors_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="726.06,-163.5 608.81,-163.5 608.81,-133 726.06,-133 726.06,-163.5"/>
<text xml:space="preserve" text-anchor="start" x="616.81" y="-150" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/terminal</text>
<text xml:space="preserve" text-anchor="middle" x="667.43" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">/colors.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node11 -->
<g id="edge10_Node000003_Node000011" class="edge">
<title>Node3&#45;&gt;Node11</title>
<g id="a_edge10_Node000003_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M624.38,-204.78C630.84,-196.45 640.74,-183.69 649.41,-172.49"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="652.02,-174.84 655.39,-164.79 646.49,-170.55 652.02,-174.84"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="utils_2misc_2concepts_2exceptions_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="197.68,-163.5 75.18,-163.5 75.18,-133 197.68,-133 197.68,-163.5"/>
<text xml:space="preserve" text-anchor="start" x="83.18" y="-150" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/concepts</text>
<text xml:space="preserve" text-anchor="middle" x="136.43" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">/exceptions.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node15 -->
<g id="edge16_Node000003_Node000015" class="edge">
<title>Node3&#45;&gt;Node15</title>
<g id="a_edge16_Node000003_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M554.66,-207.25C474.73,-198.69 332.47,-182.47 211.43,-163.5 210.76,-163.39 210.08,-163.29 209.4,-163.18"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="210.11,-159.75 199.67,-161.56 208.96,-166.65 210.11,-159.75"/>
</a>
</g>
</g>
<!-- Node19 -->
<g id="Node000019" class="node">
<title>Node19</title>
<g id="a_Node000019"><a xlink:href="codes_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1080.56,-157.88 954.31,-157.88 954.31,-138.62 1080.56,-138.62 1080.56,-157.88"/>
<text xml:space="preserve" text-anchor="middle" x="1017.43" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/error/codes.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node19 -->
<g id="edge22_Node000003_Node000019" class="edge">
<title>Node3&#45;&gt;Node19</title>
<g id="a_edge22_Node000003_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M673.89,-204.65C746.45,-192.95 872.28,-172.66 949.85,-160.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="950.13,-163.65 959.44,-158.6 949.01,-156.74 950.13,-163.65"/>
</a>
</g>
</g>
<!-- Node23 -->
<g id="Node000023" class="node">
<title>Node23</title>
<g id="a_Node000023"><a xlink:href="types_2strings_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="387.31,-157.88 253.56,-157.88 253.56,-138.62 387.31,-138.62 387.31,-157.88"/>
<text xml:space="preserve" text-anchor="middle" x="320.43" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/types/strings.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node23 -->
<g id="edge28_Node000003_Node000023" class="edge">
<title>Node3&#45;&gt;Node23</title>
<g id="a_edge28_Node000003_Node000023"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M575.51,-204.65C522.44,-193.12 431,-173.26 373.23,-160.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="374.14,-157.33 363.62,-158.63 372.65,-164.17 374.14,-157.33"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node4 -->
<g id="edge11_Node000011_Node000004" class="edge">
<title>Node11&#45;&gt;Node4</title>
<g id="a_edge11_Node000011_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M620.66,-132.53C584.88,-121.28 536.08,-105.92 502.18,-95.26"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="503.33,-91.95 492.74,-92.28 501.23,-98.62 503.33,-91.95"/>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node6 -->
<g id="edge12_Node000011_Node000006" class="edge">
<title>Node11&#45;&gt;Node6</title>
<g id="a_edge12_Node000011_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M679.01,-132.61C686.58,-123.04 696.51,-110.47 704.52,-100.35"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="707.06,-102.77 710.52,-92.76 701.57,-98.43 707.06,-102.77"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="610.68,-91.38 566.18,-91.38 566.18,-72.12 610.68,-72.12 610.68,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="588.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">cstdlib</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node12 -->
<g id="edge13_Node000011_Node000012" class="edge">
<title>Node11&#45;&gt;Node12</title>
<g id="a_edge13_Node000011_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M649.51,-132.61C637.17,-122.54 620.79,-109.17 608.1,-98.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="610.37,-96.14 600.41,-92.53 605.94,-101.57 610.37,-96.14"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="797.06,-91.38 757.81,-91.38 757.81,-72.12 797.06,-72.12 797.06,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="777.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">utility</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node13 -->
<g id="edge14_Node000011_Node000013" class="edge">
<title>Node11&#45;&gt;Node13</title>
<g id="a_edge14_Node000011_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M692.39,-132.61C710.3,-122.11 734.34,-108.02 752.29,-97.49"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="753.91,-100.6 760.76,-92.53 750.36,-94.56 753.91,-100.6"/>
</a>
</g>
</g>
<!-- Node14 -->
<g id="Node000014" class="node">
<title>Node14</title>
<g id="a_Node000014"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="679.68,-91.38 629.18,-91.38 629.18,-72.12 679.68,-72.12 679.68,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="654.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">unistd.h</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node14 -->
<g id="edge15_Node000011_Node000014" class="edge">
<title>Node11&#45;&gt;Node14</title>
<g id="a_edge15_Node000011_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M664.48,-132.61C662.69,-123.73 660.38,-112.27 658.43,-102.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="661.92,-102.17 656.51,-93.06 655.05,-103.55 661.92,-102.17"/>
</a>
</g>
</g>
<!-- Node16 -->
<g id="Node000016" class="node">
<title>Node16</title>
<g id="a_Node000016"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="87.43,-91.38 29.43,-91.38 29.43,-72.12 87.43,-72.12 87.43,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="58.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">exception</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node16 -->
<g id="edge17_Node000015_Node000016" class="edge">
<title>Node15&#45;&gt;Node16</title>
<g id="a_edge17_Node000015_Node000016"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M118.73,-132.61C106.55,-122.54 90.38,-109.17 77.85,-98.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="80.2,-96.21 70.27,-92.54 75.74,-101.61 80.2,-96.21"/>
</a>
</g>
</g>
<!-- Node17 -->
<g id="Node000017" class="node">
<title>Node17</title>
<g id="a_Node000017"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="976.31,-24.88 914.56,-24.88 914.56,-5.63 976.31,-5.63 976.31,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="945.43" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">type_traits</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node17 -->
<g id="edge18_Node000015_Node000017" class="edge">
<title>Node15&#45;&gt;Node17</title>
<g id="a_edge18_Node000015_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M169.82,-132.64C189.73,-123.4 215.18,-110.65 236.43,-97 254.65,-85.3 254.29,-74.44 274.43,-66.5 389.57,-21.11 773.78,-16.43 902.78,-16.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="902.59,-19.67 912.59,-16.16 902.58,-12.67 902.59,-19.67"/>
</a>
</g>
</g>
<!-- Node18 -->
<g id="Node000018" class="node">
<title>Node18</title>
<g id="a_Node000018"><a xlink:href="numeric_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="227.68,-97 105.18,-97 105.18,-66.5 227.68,-66.5 227.68,-97"/>
<text xml:space="preserve" text-anchor="start" x="113.18" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/concepts</text>
<text xml:space="preserve" text-anchor="middle" x="166.43" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">/numeric.hpp</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node18 -->
<g id="edge19_Node000015_Node000018" class="edge">
<title>Node15&#45;&gt;Node18</title>
<g id="a_edge19_Node000015_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M143.24,-132.61C146.69,-125.19 150.98,-115.97 154.92,-107.49"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="157.97,-109.24 159.01,-98.7 151.62,-106.29 157.97,-109.24"/>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node2 -->
<g id="edge20_Node000018_Node000002" class="edge">
<title>Node18&#45;&gt;Node2</title>
<g id="a_edge20_Node000018_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M166.43,-66.11C166.43,-57.33 166.43,-46.02 166.43,-36.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="169.93,-36.59 166.43,-26.59 162.93,-36.59 169.93,-36.59"/>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node17 -->
<g id="edge21_Node000018_Node000017" class="edge">
<title>Node18&#45;&gt;Node17</title>
<g id="a_edge21_Node000018_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M228.14,-68.44C232.63,-67.72 237.1,-67.06 241.43,-66.5 490.85,-34.02 792.92,-21.32 902.84,-17.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="902.69,-21.07 912.56,-17.24 902.45,-14.07 902.69,-21.07"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node8 -->
<g id="edge23_Node000019_Node000008" class="edge">
<title>Node19&#45;&gt;Node8</title>
<g id="a_edge23_Node000019_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M990.73,-138.13C961.94,-128.24 914.81,-111.86 874.43,-97 873.3,-96.58 872.15,-96.16 870.99,-95.73"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="872.49,-92.55 861.9,-92.29 870.02,-99.1 872.49,-92.55"/>
</a>
</g>
</g>
<!-- Node20 -->
<g id="Node000020" class="node">
<title>Node20</title>
<g id="a_Node000020"><a xlink:href="enums_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1239.68,-91.38 1129.18,-91.38 1129.18,-72.12 1239.68,-72.12 1239.68,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="1184.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">serif/meta/enums.hpp</text>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node20 -->
<g id="edge24_Node000019_Node000020" class="edge">
<title>Node19&#45;&gt;Node20</title>
<g id="a_edge24_Node000019_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1041.01,-138.15C1069.6,-127.1 1118.01,-108.4 1150.59,-95.82"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1151.5,-99.22 1159.57,-92.35 1148.98,-92.69 1151.5,-99.22"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node17 -->
<g id="edge26_Node000020_Node000017" class="edge">
<title>Node20&#45;&gt;Node17</title>
<g id="a_edge26_Node000020_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1150.7,-71.65C1107.9,-60.1 1034.1,-40.18 987.62,-27.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="988.74,-24.31 978.18,-25.09 986.92,-31.07 988.74,-24.31"/>
</a>
</g>
</g>
<!-- Node21 -->
<g id="Node000021" class="node">
<title>Node21</title>
<g id="a_Node000021"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1163.81,-24.88 1081.06,-24.88 1081.06,-5.63 1163.81,-5.63 1163.81,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="1122.43" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">unordered_map</text>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node21 -->
<g id="edge25_Node000020_Node000021" class="edge">
<title>Node20&#45;&gt;Node21</title>
<g id="a_edge25_Node000020_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1175.81,-71.78C1166.28,-61.87 1150.7,-45.66 1138.83,-33.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1141.48,-31.02 1132.03,-26.23 1136.44,-35.87 1141.48,-31.02"/>
</a>
</g>
</g>
<!-- Node22 -->
<g id="Node000022" class="node">
<title>Node22</title>
<g id="a_Node000022"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1311.43,-30.5 1181.43,-30.5 1181.43,0 1311.43,0 1311.43,-30.5"/>
<text xml:space="preserve" text-anchor="start" x="1189.43" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">magic_enum/magic_enum</text>
<text xml:space="preserve" text-anchor="middle" x="1246.43" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">_all.hpp</text>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node22 -->
<g id="edge27_Node000020_Node000022" class="edge">
<title>Node20&#45;&gt;Node22</title>
<g id="a_edge27_Node000020_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1193.05,-71.78C1201.22,-63.29 1213.82,-50.17 1224.73,-38.82"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1227.19,-41.32 1231.59,-31.69 1222.14,-36.47 1227.19,-41.32"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node4 -->
<g id="edge31_Node000023_Node000004" class="edge">
<title>Node23&#45;&gt;Node4</title>
<g id="a_edge31_Node000023_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M340.48,-138.15C364.37,-127.29 404.53,-109.05 432.2,-96.48"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="433.46,-99.76 441.11,-92.43 430.56,-93.38 433.46,-99.76"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node9 -->
<g id="edge29_Node000023_Node000009" class="edge">
<title>Node23&#45;&gt;Node9</title>
<g id="a_edge29_Node000023_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M319.18,-138.28C317.9,-129.14 315.88,-114.64 314.22,-102.75"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="317.73,-102.56 312.88,-93.14 310.8,-103.53 317.73,-102.56"/>
</a>
</g>
</g>
<!-- Node24 -->
<g id="Node000024" class="node">
<title>Node24</title>
<g id="a_Node000024"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="411.18,-91.38 357.68,-91.38 357.68,-72.12 411.18,-72.12 411.18,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="384.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">iostream</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node24 -->
<g id="edge30_Node000023_Node000024" class="edge">
<title>Node23&#45;&gt;Node24</title>
<g id="a_edge30_Node000023_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M329.33,-138.28C339.17,-128.37 355.25,-112.16 367.5,-99.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="369.98,-102.28 374.54,-92.72 365.01,-97.35 369.98,-102.28"/>
</a>
</g>
</g>
<!-- Node25&#45;&gt;Node13 -->
<g id="edge33_Node000025_Node000013" class="edge">
<title>Node25&#45;&gt;Node13</title>
<g id="a_edge33_Node000025_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M877.81,-354.53C861.65,-343.61 841.36,-327.26 829.43,-307.75 788.47,-240.78 779.75,-144.62 777.91,-103.11"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="781.41,-103.05 777.58,-93.17 774.42,-103.28 781.41,-103.05"/>
</a>
</g>
</g>
<!-- Node26 -->
<g id="Node000026" class="node">
<title>Node26</title>
<g id="a_Node000026"><a xlink:href="solver_2preconditioner_2keys_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="966.31,-302.12 838.56,-302.12 838.56,-271.62 966.31,-271.62 966.31,-302.12"/>
<text xml:space="preserve" text-anchor="start" x="846.56" y="-288.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="902.43" y="-277.38" font-family="Helvetica,sans-Serif" font-size="10.00">/keys.hpp</text>
</a>
</g>
</g>
<!-- Node25&#45;&gt;Node26 -->
<g id="edge34_Node000025_Node000026" class="edge">
<title>Node25&#45;&gt;Node26</title>
<g id="a_edge34_Node000025_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M902.43,-354.7C902.43,-343.43 902.43,-327.52 902.43,-314.05"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="905.93,-314.09 902.43,-304.09 898.93,-314.09 905.93,-314.09"/>
</a>
</g>
</g>
<!-- Node27 -->
<g id="Node000027" class="node">
<title>Node27</title>
<g id="a_Node000027"><a xlink:href="linearized__system__view_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="#fff0f0" stroke="red" points="960.68,-230 838.18,-230 838.18,-199.5 960.68,-199.5 960.68,-230"/>
<text xml:space="preserve" text-anchor="start" x="846.18" y="-216.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/operators/linearized</text>
<text xml:space="preserve" text-anchor="middle" x="899.43" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">_system_view.hpp</text>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node27 -->
<g id="edge35_Node000026_Node000027" class="edge">
<title>Node26&#45;&gt;Node27</title>
<g id="a_edge35_Node000026_Node000027"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M901.81,-271.35C901.44,-262.79 900.97,-251.71 900.54,-241.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="904.04,-241.61 900.12,-231.77 897.05,-241.91 904.04,-241.61"/>
</a>
</g>
</g>
<!-- Node27&#45;&gt;Node17 -->
<g id="edge36_Node000027_Node000017" class="edge">
<title>Node27&#45;&gt;Node17</title>
<g id="a_edge36_Node000027_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M902.81,-199.23C910.94,-164.34 931.57,-75.77 940.82,-36.05"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="944.19,-37.01 943.05,-26.48 937.37,-35.42 944.19,-37.01"/>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node26 -->
<g id="edge48_Node000047_Node000026" class="edge">
<title>Node47&#45;&gt;Node26</title>
<g id="a_edge48_Node000047_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1029.84,-343.61C1002.82,-331.79 971.28,-318 946.35,-307.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="948.05,-304.01 937.49,-303.21 945.25,-310.43 948.05,-304.01"/>
</a>
</g>
</g>
<!-- Node48 -->
<g id="Node000048" class="node">
<title>Node48</title>
<g id="a_Node000048"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1332.31,-296.5 1276.56,-296.5 1276.56,-277.25 1332.31,-277.25 1332.31,-296.5"/>
<text xml:space="preserve" text-anchor="middle" x="1304.43" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">expected</text>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node48 -->
<g id="edge38_Node000047_Node000048" class="edge">
<title>Node47&#45;&gt;Node48</title>
<g id="a_edge38_Node000047_Node000048"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1146.98,-351.78C1182.39,-340.57 1228.14,-324.92 1267.43,-307.75 1271.15,-306.12 1275.01,-304.27 1278.76,-302.35"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1280.35,-305.47 1287.53,-297.67 1277.06,-299.29 1280.35,-305.47"/>
</a>
</g>
</g>
<!-- Node49 -->
<g id="Node000049" class="node">
<title>Node49</title>
<g id="a_Node000049"><a xlink:href="backend_2mfem_2operators_2linearized__block_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1258.31,-307.75 1154.56,-307.75 1154.56,-266 1258.31,-266 1258.31,-307.75"/>
<text xml:space="preserve" text-anchor="start" x="1162.56" y="-294.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="1162.56" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">/operators/linearized</text>
<text xml:space="preserve" text-anchor="middle" x="1206.43" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">_block.hpp</text>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node49 -->
<g id="edge39_Node000047_Node000049" class="edge">
<title>Node47&#45;&gt;Node49</title>
<g id="a_edge39_Node000047_Node000049"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1126.09,-343.28C1139.34,-334.15 1154.24,-323.87 1167.58,-314.67"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1169.48,-317.61 1175.72,-309.05 1165.5,-311.85 1169.48,-317.61"/>
</a>
</g>
</g>
<!-- Node53 -->
<g id="Node000053" class="node">
<title>Node53</title>
<g id="a_Node000053"><a xlink:href="solver_2preconditioner_2failure_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1106.31,-230 978.56,-230 978.56,-199.5 1106.31,-199.5 1106.31,-230"/>
<text xml:space="preserve" text-anchor="start" x="986.56" y="-216.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1042.43" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">/failure.hpp</text>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node53 -->
<g id="edge45_Node000047_Node000053" class="edge">
<title>Node47&#45;&gt;Node53</title>
<g id="a_edge45_Node000047_Node000053"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1047.72,-343.49C1036.04,-333.83 1024.77,-321.75 1018.43,-307.75 1008.54,-285.9 1017.61,-259.22 1027.3,-240.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1030.29,-242.06 1032.06,-231.61 1024.16,-238.68 1030.29,-242.06"/>
</a>
</g>
</g>
<!-- Node54 -->
<g id="Node000054" class="node">
<title>Node54</title>
<g id="a_Node000054"><a xlink:href="computation_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1217.81,-163.5 1099.06,-163.5 1099.06,-133 1217.81,-133 1217.81,-163.5"/>
<text xml:space="preserve" text-anchor="start" x="1107.06" y="-150" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/dependencies</text>
<text xml:space="preserve" text-anchor="middle" x="1158.43" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">/computation.hpp</text>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node54 -->
<g id="edge49_Node000047_Node000054" class="edge">
<title>Node47&#45;&gt;Node54</title>
<g id="a_edge49_Node000047_Node000054"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1067.68,-343.47C1052.96,-321.84 1038.14,-290.63 1052.43,-266 1068.62,-238.11 1092.97,-253.14 1115.43,-230 1130.86,-214.11 1142.24,-191.57 1149.4,-174.34"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1152.55,-175.9 1152.95,-165.32 1146.03,-173.34 1152.55,-175.9"/>
</a>
</g>
</g>
<!-- Node43 -->
<g id="Node000043" class="node">
<title>Node43</title>
<g id="a_Node000043"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1315.43,-91.38 1257.43,-91.38 1257.43,-72.12 1315.43,-72.12 1315.43,-91.38"/>
<text xml:space="preserve" text-anchor="middle" x="1286.43" y="-77.88" font-family="Helvetica,sans-Serif" font-size="10.00">functional</text>
</a>
</g>
</g>
<!-- Node49&#45;&gt;Node43 -->
<g id="edge40_Node000049_Node000043" class="edge">
<title>Node49&#45;&gt;Node43</title>
<g id="a_edge40_Node000049_Node000043"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1214.4,-265.66C1229.83,-226.45 1263.65,-140.59 1278.81,-102.1"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1281.99,-103.57 1282.4,-92.98 1275.48,-101.01 1281.99,-103.57"/>
</a>
</g>
</g>
<!-- Node45 -->
<g id="Node000045" class="node">
<title>Node45</title>
<g id="a_Node000045"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1465.06,-224.38 1413.81,-224.38 1413.81,-205.12 1465.06,-205.12 1465.06,-224.38"/>
<text xml:space="preserve" text-anchor="middle" x="1439.43" y="-210.88" font-family="Helvetica,sans-Serif" font-size="10.00">memory</text>
</a>
</g>
</g>
<!-- Node49&#45;&gt;Node45 -->
<g id="edge41_Node000049_Node000045" class="edge">
<title>Node49&#45;&gt;Node45</title>
<g id="a_edge41_Node000049_Node000045"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1258.61,-268.65C1261.59,-267.74 1264.55,-266.85 1267.43,-266 1327.83,-248.24 1344.71,-249.91 1404.43,-230 1405.58,-229.62 1406.75,-229.21 1407.93,-228.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1408.97,-232.14 1417.08,-225.32 1406.49,-225.6 1408.97,-232.14"/>
</a>
</g>
</g>
<!-- Node50 -->
<g id="Node000050" class="node">
<title>Node50</title>
<g id="a_Node000050"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1216.93,-224.38 1173.93,-224.38 1173.93,-205.12 1216.93,-205.12 1216.93,-224.38"/>
<text xml:space="preserve" text-anchor="middle" x="1195.43" y="-210.88" font-family="Helvetica,sans-Serif" font-size="10.00">vector</text>
</a>
</g>
</g>
<!-- Node49&#45;&gt;Node50 -->
<g id="edge42_Node000049_Node000050" class="edge">
<title>Node49&#45;&gt;Node50</title>
<g id="a_edge42_Node000049_Node000050"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1203.25,-265.59C1201.78,-256.25 1200.05,-245.19 1198.59,-235.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1202.06,-235.38 1197.05,-226.05 1195.14,-236.47 1202.06,-235.38"/>
</a>
</g>
</g>
<!-- Node51 -->
<g id="Node000051" class="node">
<title>Node51</title>
<g id="a_Node000051"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1395.68,-224.38 1273.18,-224.38 1273.18,-205.12 1395.68,-205.12 1395.68,-224.38"/>
<text xml:space="preserve" text-anchor="middle" x="1334.43" y="-210.88" font-family="Helvetica,sans-Serif" font-size="10.00">mfem/linalg/operator.hpp</text>
</a>
</g>
</g>
<!-- Node49&#45;&gt;Node51 -->
<g id="edge43_Node000049_Node000051" class="edge">
<title>Node49&#45;&gt;Node51</title>
<g id="a_edge43_Node000049_Node000051"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1243.46,-265.59C1264.17,-254.25 1289.49,-240.37 1308.16,-230.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1309.62,-233.34 1316.7,-225.46 1306.25,-227.2 1309.62,-233.34"/>
</a>
</g>
</g>
<!-- Node52 -->
<g id="Node000052" class="node">
<title>Node52</title>
<g id="a_Node000052"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1617.31,-224.38 1483.56,-224.38 1483.56,-205.12 1617.31,-205.12 1617.31,-224.38"/>
<text xml:space="preserve" text-anchor="middle" x="1550.43" y="-210.88" font-family="Helvetica,sans-Serif" font-size="10.00">mfem/linalg/sparsemat.hpp</text>
</a>
</g>
</g>
<!-- Node49&#45;&gt;Node52 -->
<g id="edge44_Node000049_Node000052" class="edge">
<title>Node49&#45;&gt;Node52</title>
<g id="a_edge44_Node000049_Node000052"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1258.53,-268.36C1261.53,-267.52 1264.51,-266.73 1267.43,-266 1358.06,-243.48 1382.54,-246.6 1474.43,-230 1479.99,-229 1485.77,-227.94 1491.55,-226.87"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1491.93,-230.36 1501.12,-225.09 1490.65,-223.48 1491.93,-230.36"/>
</a>
</g>
</g>
<!-- Node53&#45;&gt;Node7 -->
<g id="edge46_Node000053_Node000007" class="edge">
<title>Node53&#45;&gt;Node7</title>
<g id="a_edge46_Node000053_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1005.22,-199.11C976.15,-187.68 936.24,-171.99 909.01,-161.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="910.54,-158.12 899.95,-157.71 907.98,-164.63 910.54,-158.12"/>
</a>
</g>
</g>
<!-- Node53&#45;&gt;Node19 -->
<g id="edge47_Node000053_Node000019" class="edge">
<title>Node53&#45;&gt;Node19</title>
<g id="a_edge47_Node000053_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1036.76,-199.11C1033.28,-190.13 1028.78,-178.51 1024.99,-168.76"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1028.28,-167.54 1021.4,-159.48 1021.75,-170.07 1028.28,-167.54"/>
</a>
</g>
</g>
<!-- Node54&#45;&gt;Node2 -->
<g id="edge50_Node000054_Node000002" class="edge">
<title>Node54&#45;&gt;Node2</title>
<g id="a_edge50_Node000054_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1098.69,-133.78C1058.51,-124.36 1004.49,-111.01 957.43,-97 917.76,-85.19 909.98,-74.82 869.43,-66.5 740.85,-40.1 334.01,-22.66 205.64,-17.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="206.09,-14.21 195.96,-17.33 205.82,-21.21 206.09,-14.21"/>
</a>
</g>
</g>
<!-- Node54&#45;&gt;Node13 -->
<g id="edge53_Node000054_Node000013" class="edge">
<title>Node54&#45;&gt;Node13</title>
<g id="a_edge53_Node000054_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1098.65,-134.61C1095.53,-134.04 1092.45,-133.5 1089.43,-133 963.93,-112.12 927.04,-134.41 805.43,-97 804.63,-96.75 803.82,-96.49 803.02,-96.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="804.68,-93.11 794.12,-92.33 801.89,-99.53 804.68,-93.11"/>
</a>
</g>
</g>
<!-- Node54&#45;&gt;Node17 -->
<g id="edge52_Node000054_Node000017" class="edge">
<title>Node54&#45;&gt;Node17</title>
<g id="a_edge52_Node000054_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1098.85,-132.73C1051.77,-120.83 992.52,-104.74 983.43,-97 965.03,-81.33 954.94,-54.77 949.87,-36.42"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="953.27,-35.59 947.48,-26.72 946.48,-37.27 953.27,-35.59"/>
</a>
</g>
</g>
<!-- Node54&#45;&gt;Node43 -->
<g id="edge51_Node000054_Node000043" class="edge">
<title>Node54&#45;&gt;Node43</title>
<g id="a_edge51_Node000054_Node000043"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1187.48,-132.61C1208.71,-121.92 1237.34,-107.49 1258.34,-96.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1259.85,-100.07 1267.2,-92.44 1256.7,-93.82 1259.85,-100.07"/>
</a>
</g>
</g>
<!-- Node35 -->
<g id="Node000035" class="node">
<title>Node35</title>
<g id="a_Node000035"><a xlink:href="key__list_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="#fff0f0" stroke="red" points="1110.81,-97 992.06,-97 992.06,-66.5 1110.81,-66.5 1110.81,-97"/>
<text xml:space="preserve" text-anchor="start" x="1000.06" y="-83.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/dependencies</text>
<text xml:space="preserve" text-anchor="middle" x="1051.43" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">/key_list.hpp</text>
</a>
</g>
</g>
<!-- Node54&#45;&gt;Node35 -->
<g id="edge54_Node000054_Node000035" class="edge">
<title>Node54&#45;&gt;Node35</title>
<g id="a_edge54_Node000054_Node000035"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1134.15,-132.61C1119.65,-123.87 1101.02,-112.64 1085.11,-103.05"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1087.28,-100.27 1076.91,-98.11 1083.67,-106.27 1087.28,-100.27"/>
</a>
</g>
</g>
<!-- Node35&#45;&gt;Node17 -->
<g id="edge55_Node000035_Node000017" class="edge">
<title>Node35&#45;&gt;Node17</title>
<g id="a_edge55_Node000035_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1027.38,-66.11C1010.12,-55.61 986.95,-41.52 969.66,-30.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="971.89,-28.25 961.53,-26.05 968.26,-34.23 971.89,-28.25"/>
</a>
</g>
</g>
<!-- Node55&#45;&gt;Node48 -->
<g id="edge57_Node000055_Node000048" class="edge">
<title>Node55&#45;&gt;Node48</title>
<g id="a_edge57_Node000055_Node000048"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1257.76,-349.13C1267.93,-335.78 1281.16,-318.42 1290.94,-305.59"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1293.44,-308.08 1296.71,-298.01 1287.87,-303.84 1293.44,-308.08"/>
</a>
</g>
</g>
<!-- Node31 -->
<g id="Node000031" class="node">
<title>Node31</title>
<g id="a_Node000031"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1097.93,-296.5 1060.93,-296.5 1060.93,-277.25 1097.93,-277.25 1097.93,-296.5"/>
<text xml:space="preserve" text-anchor="middle" x="1079.43" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">span</text>
</a>
</g>
</g>
<!-- Node55&#45;&gt;Node31 -->
<g id="edge58_Node000055_Node000031" class="edge">
<title>Node55&#45;&gt;Node31</title>
<g id="a_edge58_Node000055_Node000031"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1196.76,-349C1171.58,-337.5 1139.94,-322.49 1112.43,-307.75 1109.5,-306.18 1106.47,-304.47 1103.48,-302.74"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1105.39,-299.8 1095.01,-297.68 1101.8,-305.81 1105.39,-299.8"/>
</a>
</g>
</g>
<!-- Node56 -->
<g id="Node000056" class="node">
<title>Node56</title>
<g id="a_Node000056"><a xlink:href="inverse_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1458.93,-307.75 1349.93,-307.75 1349.93,-266 1458.93,-266 1458.93,-307.75"/>
<text xml:space="preserve" text-anchor="start" x="1357.93" y="-294.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="1357.93" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1404.43" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">/inverse.hpp</text>
</a>
</g>
</g>
<!-- Node55&#45;&gt;Node56 -->
<g id="edge59_Node000055_Node000056" class="edge">
<title>Node55&#45;&gt;Node56</title>
<g id="a_edge59_Node000055_Node000056"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1282.89,-348.93C1304.35,-338.15 1330.92,-324.8 1353.74,-313.34"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1355.21,-316.52 1362.57,-308.9 1352.07,-310.26 1355.21,-316.52"/>
</a>
</g>
</g>
<!-- Node56&#45;&gt;Node45 -->
<g id="edge60_Node000056_Node000045" class="edge">
<title>Node56&#45;&gt;Node45</title>
<g id="a_edge60_Node000056_Node000045"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1414.56,-265.59C1419.43,-255.82 1425.24,-244.18 1430.02,-234.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1433.03,-236.42 1434.36,-225.91 1426.77,-233.29 1433.03,-236.42"/>
</a>
</g>
</g>
<!-- Node56&#45;&gt;Node51 -->
<g id="edge61_Node000056_Node000051" class="edge">
<title>Node56&#45;&gt;Node51</title>
<g id="a_edge61_Node000056_Node000051"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1384.19,-265.59C1373.69,-255.08 1361.03,-242.4 1351.11,-232.46"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1353.83,-230.23 1344.29,-225.62 1348.88,-235.17 1353.83,-230.23"/>
</a>
</g>
</g>
<!-- Node56&#45;&gt;Node53 -->
<g id="edge63_Node000056_Node000053" class="edge">
<title>Node56&#45;&gt;Node53</title>
<g id="a_edge63_Node000056_Node000053"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1349.58,-268.08C1346.84,-267.34 1344.11,-266.64 1341.43,-266 1266.03,-247.86 1178.39,-233.96 1117.56,-225.42"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1118.41,-222.01 1108.03,-224.1 1117.45,-228.94 1118.41,-222.01"/>
</a>
</g>
</g>
<!-- Node57 -->
<g id="Node000057" class="node">
<title>Node57</title>
<g id="a_Node000057"><a xlink:href="contract_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1865.31,-230 1737.56,-230 1737.56,-199.5 1865.31,-199.5 1865.31,-230"/>
<text xml:space="preserve" text-anchor="start" x="1745.56" y="-216.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="1801.43" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">/contract.hpp</text>
</a>
</g>
</g>
<!-- Node56&#45;&gt;Node57 -->
<g id="edge62_Node000056_Node000057" class="edge">
<title>Node56&#45;&gt;Node57</title>
<g id="a_edge62_Node000056_Node000057"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1459.22,-276.2C1528.55,-263.95 1648.31,-242.8 1726.19,-229.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1726.63,-232.52 1735.87,-227.33 1725.42,-225.62 1726.63,-232.52"/>
</a>
</g>
</g>
<!-- Node58&#45;&gt;Node48 -->
<g id="edge65_Node000058_Node000048" class="edge">
<title>Node58&#45;&gt;Node48</title>
<g id="a_edge65_Node000058_Node000048"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1598.72,-348.93C1593.29,-346.99 1587.78,-345.21 1582.43,-343.75 1477.95,-315.23 1444.21,-341.88 1341.43,-307.75 1337.04,-306.29 1332.56,-304.34 1328.29,-302.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1330.11,-299.23 1319.65,-297.54 1326.78,-305.38 1330.11,-299.23"/>
</a>
</g>
</g>
<!-- Node58&#45;&gt;Node56 -->
<g id="edge67_Node000058_Node000056" class="edge">
<title>Node58&#45;&gt;Node56</title>
<g id="a_edge67_Node000058_Node000056"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1596.4,-348.96C1591.7,-347.15 1586.99,-345.38 1582.43,-343.75 1545.57,-330.53 1503.82,-317.33 1470.02,-307.08"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1471.38,-303.84 1460.79,-304.3 1469.36,-310.54 1471.38,-303.84"/>
</a>
</g>
</g>
<!-- Node59 -->
<g id="Node000059" class="node">
<title>Node59</title>
<g id="a_Node000059"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="2013.81,-296.5 1883.06,-296.5 1883.06,-277.25 2013.81,-277.25 2013.81,-296.5"/>
<text xml:space="preserve" text-anchor="middle" x="1948.43" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">mfem/linalg/densemat.hpp</text>
</a>
</g>
</g>
<!-- Node58&#45;&gt;Node59 -->
<g id="edge66_Node000058_Node000059" class="edge">
<title>Node58&#45;&gt;Node59</title>
<g id="a_edge66_Node000058_Node000059"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1700.3,-354.51C1758.58,-338.86 1849.58,-314.42 1903.68,-299.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1904.42,-303.32 1913.17,-297.34 1902.61,-296.56 1904.42,-303.32"/>
</a>
</g>
</g>
<!-- Node60 -->
<g id="Node000060" class="node">
<title>Node60</title>
<g id="a_Node000060"><a xlink:href="solver_2preconditioner_2strategies_2inverse_2dense_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="2176.56,-302.12 2032.31,-302.12 2032.31,-271.62 2176.56,-271.62 2176.56,-302.12"/>
<text xml:space="preserve" text-anchor="start" x="2040.31" y="-288.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="2104.43" y="-277.38" font-family="Helvetica,sans-Serif" font-size="10.00">/strategies/inverse/dense.hpp</text>
</a>
</g>
</g>
<!-- Node58&#45;&gt;Node60 -->
<g id="edge68_Node000058_Node000060" class="edge">
<title>Node58&#45;&gt;Node60</title>
<g id="a_edge68_Node000058_Node000060"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1700.3,-361.64C1773.9,-351.12 1908.52,-330.81 2022.43,-307.75 2026.67,-306.89 2031.02,-305.97 2035.41,-305"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="2035.86,-308.49 2044.84,-302.87 2034.32,-301.66 2035.86,-308.49"/>
</a>
</g>
</g>
<!-- Node60&#45;&gt;Node57 -->
<g id="edge69_Node000060_Node000057" class="edge">
<title>Node60&#45;&gt;Node57</title>
<g id="a_edge69_Node000060_Node000057"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2044.45,-271.23C2037.04,-269.45 2029.56,-267.67 2022.43,-266 1974.08,-254.64 1919.69,-242.27 1876.96,-232.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1877.8,-229.25 1867.27,-230.46 1876.26,-236.07 1877.8,-229.25"/>
</a>
</g>
</g>
<!-- Node61&#45;&gt;Node48 -->
<g id="edge71_Node000061_Node000048" class="edge">
<title>Node61&#45;&gt;Node48</title>
<g id="a_edge71_Node000061_Node000048"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1468.6,-349C1463.83,-347.18 1459.05,-345.4 1454.43,-343.75 1404.81,-325.98 1389.97,-328.31 1341.43,-307.75 1337.51,-306.09 1333.45,-304.15 1329.52,-302.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1331.41,-299.19 1320.94,-297.56 1328.1,-305.36 1331.41,-299.19"/>
</a>
</g>
</g>
<!-- Node61&#45;&gt;Node52 -->
<g id="edge72_Node000061_Node000052" class="edge">
<title>Node61&#45;&gt;Node52</title>
<g id="a_edge72_Node000061_Node000052"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1568.64,-348.93C1573.29,-347.14 1577.94,-345.39 1582.43,-343.75 1629.95,-326.38 1660.85,-348.8 1690.43,-307.75 1701.28,-292.7 1701.11,-281.18 1690.43,-266 1676,-245.49 1652.37,-233.31 1628.59,-226.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1629.72,-222.77 1619.15,-223.51 1627.88,-229.52 1629.72,-222.77"/>
</a>
</g>
</g>
<!-- Node61&#45;&gt;Node56 -->
<g id="edge73_Node000061_Node000056" class="edge">
<title>Node61&#45;&gt;Node56</title>
<g id="a_edge73_Node000061_Node000056"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1489.96,-348.93C1475.54,-338.63 1457.84,-326 1442.29,-314.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1444.34,-312.06 1434.17,-309.1 1440.28,-317.76 1444.34,-312.06"/>
</a>
</g>
</g>
<!-- Node62 -->
<g id="Node000062" class="node">
<title>Node62</title>
<g id="a_Node000062"><a xlink:href="fixed__amg_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1865.31,-307.75 1737.56,-307.75 1737.56,-266 1865.31,-266 1865.31,-307.75"/>
<text xml:space="preserve" text-anchor="start" x="1745.56" y="-294.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="start" x="1745.56" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">/strategies/inverse/fixed</text>
<text xml:space="preserve" text-anchor="middle" x="1801.43" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">_amg.hpp</text>
</a>
</g>
</g>
<!-- Node61&#45;&gt;Node62 -->
<g id="edge74_Node000061_Node000062" class="edge">
<title>Node61&#45;&gt;Node62</title>
<g id="a_edge74_Node000061_Node000062"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1567.46,-348.97C1572.49,-347.12 1577.54,-345.34 1582.43,-343.75 1583.33,-343.46 1663.13,-323.11 1726.13,-307.06"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1726.99,-310.45 1735.81,-304.59 1725.26,-303.67 1726.99,-310.45"/>
</a>
</g>
</g>
<!-- Node62&#45;&gt;Node57 -->
<g id="edge75_Node000062_Node000057" class="edge">
<title>Node62&#45;&gt;Node57</title>
<g id="a_edge75_Node000062_Node000057"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1801.43,-265.59C1801.43,-258.07 1801.43,-249.44 1801.43,-241.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1804.93,-241.71 1801.43,-231.71 1797.93,-241.71 1804.93,-241.71"/>
</a>
</g>
</g>
<!-- Node63&#45;&gt;Node4 -->
<g id="edge79_Node000063_Node000004" class="edge">
<title>Node63&#45;&gt;Node4</title>
<g id="a_edge79_Node000063_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1323.67,-348.97C1317.88,-347.12 1312.05,-345.34 1306.43,-343.75 1235.88,-323.77 1208.84,-344.58 1145.43,-307.75 1123.74,-295.15 1130.04,-276.87 1107.43,-266 994.85,-211.86 663.77,-272.86 546.43,-230 499.72,-212.94 478.83,-207.9 456.43,-163.5 446.85,-144.51 450.69,-119.77 455.43,-102.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="458.74,-103.85 458.41,-93.26 452.06,-101.75 458.74,-103.85"/>
</a>
</g>
</g>
<!-- Node63&#45;&gt;Node48 -->
<g id="edge77_Node000063_Node000048" class="edge">
<title>Node63&#45;&gt;Node48</title>
<g id="a_edge77_Node000063_Node000048"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1361.65,-349.13C1349.05,-335.65 1332.64,-318.08 1320.63,-305.21"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1323.19,-302.83 1313.8,-297.91 1318.07,-307.61 1323.19,-302.83"/>
</a>
</g>
</g>
<!-- Node63&#45;&gt;Node45 -->
<g id="edge78_Node000063_Node000045" class="edge">
<title>Node63&#45;&gt;Node45</title>
<g id="a_edge78_Node000063_Node000045"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1425.8,-348.97C1442.33,-339.08 1459.22,-325.44 1468.43,-307.75 1480.97,-283.69 1466.03,-253.24 1453.36,-234.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1456.26,-232.15 1447.62,-226.01 1450.54,-236.2 1456.26,-232.15"/>
</a>
</g>
</g>
<!-- Node63&#45;&gt;Node52 -->
<g id="edge80_Node000063_Node000052" class="edge">
<title>Node63&#45;&gt;Node52</title>
<g id="a_edge80_Node000063_Node000052"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1423.62,-348.93C1443.45,-338.35 1466.48,-324.18 1484.43,-307.75 1508.06,-286.12 1528.34,-254.76 1539.97,-234.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1543.02,-236.54 1544.9,-226.11 1536.93,-233.09 1543.02,-236.54"/>
</a>
</g>
</g>
<!-- Node63&#45;&gt;Node56 -->
<g id="edge81_Node000063_Node000056" class="edge">
<title>Node63&#45;&gt;Node56</title>
<g id="a_edge81_Node000063_Node000056"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1386.36,-349.13C1389.05,-340.04 1392.28,-329.08 1395.26,-318.96"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1398.58,-320.07 1398.06,-309.49 1391.87,-318.09 1398.58,-320.07"/>
</a>
</g>
</g>
<!-- Node64 -->
<g id="Node000064" class="node">
<title>Node64</title>
<g id="a_Node000064"><a xlink:href="solver_2preconditioner_2strategies_2inverse_2sparse__direct_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1681.68,-307.75 1553.18,-307.75 1553.18,-266 1681.68,-266 1681.68,-307.75"/>
<text xml:space="preserve" text-anchor="start" x="1561.18" y="-294.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="start" x="1561.18" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">/strategies/inverse/sparse</text>
<text xml:space="preserve" text-anchor="middle" x="1617.43" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">_direct.hpp</text>
</a>
</g>
</g>
<!-- Node63&#45;&gt;Node64 -->
<g id="edge82_Node000063_Node000064" class="edge">
<title>Node63&#45;&gt;Node64</title>
<g id="a_edge82_Node000063_Node000064"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1439.63,-348.93C1472.29,-337.71 1513.05,-323.72 1547.3,-311.96"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1548.42,-315.27 1556.74,-308.71 1546.15,-308.65 1548.42,-315.27"/>
</a>
</g>
</g>
<!-- Node64&#45;&gt;Node57 -->
<g id="edge83_Node000064_Node000057" class="edge">
<title>Node64&#45;&gt;Node57</title>
<g id="a_edge83_Node000064_Node000057"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1670.65,-265.59C1696.47,-255.75 1727.28,-244.01 1752.5,-234.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1753.43,-237.79 1761.53,-230.96 1750.94,-231.25 1753.43,-237.79"/>
</a>
</g>
</g>
<!-- Node65&#45;&gt;Node57 -->
<g id="edge85_Node000065_Node000057" class="edge">
<title>Node65&#45;&gt;Node57</title>
<g id="a_edge85_Node000065_Node000057"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2076.62,-354.87C2143.55,-339.09 2224.05,-310 2185.43,-266 2165.43,-243.21 1982.88,-227.58 1876.84,-220.34"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1877.29,-216.87 1867.08,-219.69 1876.82,-223.85 1877.29,-216.87"/>
</a>
</g>
</g>
</g>
</svg>
<g id="navigator" transform="translate(0 0)" fill="#404254">
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
<use id="arrowup" xlink:href="#arrowUp" x="0" y="0" onmousedown="handlePan(0,-1)"/>
<use id="arrowright" xlink:href="#arrowRight" x="0" y="0" onmousedown="handlePan(1,0)"/>
<use id="arrowdown" xlink:href="#arrowDown" x="0" y="0" onmousedown="handlePan(0,1)"/>
<use id="arrowleft" xlink:href="#arrowLeft" x="0" y="0" onmousedown="handlePan(-1,0)"/>
</g>
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
<g id="arrow_out" transform="scale(0.3 0.3)">
<a xlink:href="computations_2inverse_8hpp__incl_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
<style type='text/css'>
<![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type="application/ecmascript"><![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>