Files
MeanField_SERiF/docs/html/factor__computations_8hpp__incl.svg

1629 lines
82 KiB
XML
Raw Permalink Normal View History

<?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/solver/normalization/detail/factor_computations.hpp Pages: 1 -->
<!--zoomable 704 -->
<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 = 2482;
var viewHeight = 704;
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/solver/normalization/detail/factor_computations.hpp</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="1897.38,-695.5 1766.62,-695.5 1766.62,-653.75 1897.38,-653.75 1897.38,-695.5"/>
<text xml:space="preserve" text-anchor="start" x="1774.62" y="-682" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/serif/solver</text>
<text xml:space="preserve" text-anchor="start" x="1774.62" y="-670.75" font-family="Helvetica,sans-Serif" font-size="10.00">/normalization/detail/factor</text>
<text xml:space="preserve" text-anchor="middle" x="1832" y="-659.5" font-family="Helvetica,sans-Serif" font-size="10.00">_computations.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="1971.88,-80.12 1916.12,-80.12 1916.12,-60.88 1971.88,-60.88 1971.88,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="1944" y="-66.62" 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="M1897.58,-664.12C2007.25,-646.36 2216,-603.78 2216,-537 2216,-537 2216,-537 2216,-202.5 2216,-100.63 2059.23,-77.93 1983.72,-72.91"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1984.04,-69.42 1973.85,-72.33 1983.63,-76.41 1984.04,-69.42"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="271.12,-80.12 222.88,-80.12 222.88,-60.88 271.12,-60.88 271.12,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="247" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">cstddef</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="M1766.22,-672.81C1482.87,-669.08 374.02,-652.4 222,-617.75 134.93,-597.9 38,-626.31 38,-537 38,-537 38,-537 38,-335.5 38,-218.01 166.83,-122.27 222.2,-86.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="223.77,-89.7 230.35,-81.4 220.03,-83.78 223.77,-89.7"/>
</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="1851.88,-479.12 1796.12,-479.12 1796.12,-459.88 1851.88,-459.88 1851.88,-479.12"/>
<text xml:space="preserve" text-anchor="middle" x="1824" y="-465.62" font-family="Helvetica,sans-Serif" font-size="10.00">expected</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge3_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge3_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1834.38,-653.26C1837.39,-623.88 1841.56,-567.95 1836,-520.75 1834.8,-510.58 1832.29,-499.5 1829.87,-490.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1833.25,-489.42 1827.17,-480.74 1826.51,-491.31 1833.25,-489.42"/>
</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="1910,-479.12 1870,-479.12 1870,-459.88 1910,-459.88 1910,-479.12"/>
<text xml:space="preserve" text-anchor="middle" x="1890" y="-465.62" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge4_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge4_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1839.76,-653.34C1843.67,-642.8 1848.34,-629.67 1852,-617.75 1865.85,-572.68 1878.87,-518.84 1885.48,-490.39"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1888.8,-491.55 1887.63,-481.02 1881.98,-489.98 1888.8,-491.55"/>
</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="1375.88,-19.25 1314.12,-19.25 1314.12,0 1375.88,0 1375.88,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="1345" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">type_traits</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node6 -->
<g id="edge5_Node000001_Node000006" class="edge">
<title>Node1&#45;&gt;Node6</title>
<g id="a_edge5_Node000001_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1897.78,-671.16C1963.81,-666.62 2067.18,-653.8 2149,-617.75 2202.87,-594.01 2254,-595.87 2254,-537 2254,-537 2254,-537 2254,-269 2254,-198.98 2251.11,-167.38 2198,-121.75 2074.5,-15.63 1542.45,-9.67 1387.5,-10.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1387.66,-6.73 1377.68,-10.28 1387.7,-13.73 1387.66,-6.73"/>
</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="1739.5,-479.12 1696.5,-479.12 1696.5,-459.88 1739.5,-459.88 1739.5,-479.12"/>
<text xml:space="preserve" text-anchor="middle" x="1718" y="-465.62" font-family="Helvetica,sans-Serif" font-size="10.00">vector</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node7 -->
<g id="edge6_Node000001_Node000007" class="edge">
<title>Node1&#45;&gt;Node7</title>
<g id="a_edge6_Node000001_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1795.3,-653.45C1761.85,-632.74 1714.62,-597.1 1694,-551.25 1684.75,-530.68 1695.35,-505.59 1705.25,-488.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1708.16,-490.84 1710.61,-480.53 1702.27,-487.05 1708.16,-490.84"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="solver_2normalization_2keys_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="502.38,-617.75 377.62,-617.75 377.62,-587.25 502.38,-587.25 502.38,-617.75"/>
<text xml:space="preserve" text-anchor="start" x="385.62" y="-604.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="440" y="-593" font-family="Helvetica,sans-Serif" font-size="10.00">/keys.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node8 -->
<g id="edge7_Node000001_Node000008" class="edge">
<title>Node1&#45;&gt;Node8</title>
<g id="a_edge7_Node000001_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1766.26,-670.31C1534.71,-658.65 757.73,-619.51 513.87,-607.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="514.34,-603.74 504.18,-606.73 513.99,-610.73 514.34,-603.74"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="layout_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="355.38,-617.75 230.62,-617.75 230.62,-587.25 355.38,-587.25 355.38,-617.75"/>
<text xml:space="preserve" text-anchor="start" x="238.62" y="-604.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="293" y="-593" font-family="Helvetica,sans-Serif" font-size="10.00">/layout.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node11 -->
<g id="edge10_Node000001_Node000011" class="edge">
<title>Node1&#45;&gt;Node11</title>
<g id="a_edge10_Node000001_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1766.48,-672.41C1519.61,-667.61 645.59,-648.79 369,-617.75 368.17,-617.66 367.34,-617.56 366.51,-617.46"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="367.39,-614.05 357.02,-616.18 366.46,-620.99 367.39,-614.05"/>
</a>
</g>
</g>
<!-- Node22 -->
<g id="Node000022" class="node">
<title>Node22</title>
<g id="a_Node000022"><a xlink:href="solver_2normalization_2plan_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1357.38,-617.75 1232.62,-617.75 1232.62,-587.25 1357.38,-587.25 1357.38,-617.75"/>
<text xml:space="preserve" text-anchor="start" x="1240.62" y="-604.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="1295" y="-593" font-family="Helvetica,sans-Serif" font-size="10.00">/plan.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node22 -->
<g id="edge35_Node000001_Node000022" class="edge">
<title>Node1&#45;&gt;Node22</title>
<g id="a_edge35_Node000001_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1766.15,-665.03C1665.5,-651.88 1473.99,-626.87 1368.78,-613.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1369.51,-609.7 1359.14,-611.88 1368.6,-616.64 1369.51,-609.7"/>
</a>
</g>
</g>
<!-- Node45 -->
<g id="Node000045" class="node">
<title>Node45</title>
<g id="a_Node000045"><a xlink:href="solver_2normalization_2diagonal_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1504.38,-551.25 1379.62,-551.25 1379.62,-520.75 1504.38,-520.75 1504.38,-551.25"/>
<text xml:space="preserve" text-anchor="start" x="1387.62" y="-537.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="1442" y="-526.5" font-family="Helvetica,sans-Serif" font-size="10.00">/diagonal.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node45 -->
<g id="edge89_Node000001_Node000045" class="edge">
<title>Node1&#45;&gt;Node45</title>
<g id="a_edge89_Node000001_Node000045"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1768.06,-653.36C1735.86,-642.99 1696.25,-630 1661,-617.75 1602.42,-597.39 1535.62,-572.52 1491.36,-555.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1492.62,-552.53 1482.03,-552.27 1490.14,-559.08 1492.62,-552.53"/>
</a>
</g>
</g>
<!-- Node46 -->
<g id="Node000046" class="node">
<title>Node46</title>
<g id="a_Node000046"><a xlink:href="solver_2normalization_2detail_2validation_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="2188.38,-551.25 2063.62,-551.25 2063.62,-520.75 2188.38,-520.75 2188.38,-551.25"/>
<text xml:space="preserve" text-anchor="start" x="2071.62" y="-537.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="2126" y="-526.5" font-family="Helvetica,sans-Serif" font-size="10.00">/detail/validation.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node46 -->
<g id="edge96_Node000001_Node000046" class="edge">
<title>Node1&#45;&gt;Node46</title>
<g id="a_edge96_Node000001_Node000046"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1875.7,-653.32C1931.9,-627.2 2028.84,-582.15 2084.14,-556.45"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="2085.32,-559.76 2092.92,-552.37 2082.37,-553.41 2085.32,-559.76"/>
</a>
</g>
</g>
<!-- Node47 -->
<g id="Node000047" class="node">
<title>Node47</title>
<g id="a_Node000047"><a xlink:href="point__rows_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1827.38,-551.25 1702.62,-551.25 1702.62,-520.75 1827.38,-520.75 1827.38,-551.25"/>
<text xml:space="preserve" text-anchor="start" x="1710.62" y="-537.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="1765" y="-526.5" font-family="Helvetica,sans-Serif" font-size="10.00">/point_rows.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node47 -->
<g id="edge101_Node000001_Node000047" class="edge">
<title>Node1&#45;&gt;Node47</title>
<g id="a_edge101_Node000001_Node000047"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1822.11,-653.47C1810.14,-629.04 1789.97,-587.92 1777.08,-561.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1780.26,-560.18 1772.72,-552.74 1773.98,-563.26 1780.26,-560.18"/>
</a>
</g>
</g>
<!-- Node48 -->
<g id="Node000048" class="node">
<title>Node48</title>
<g id="a_Node000048"><a xlink:href="scales_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="2045.38,-551.25 1920.62,-551.25 1920.62,-520.75 2045.38,-520.75 2045.38,-551.25"/>
<text xml:space="preserve" text-anchor="start" x="1928.62" y="-537.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="1983" y="-526.5" font-family="Helvetica,sans-Serif" font-size="10.00">/scales.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node48 -->
<g id="edge106_Node000001_Node000048" class="edge">
<title>Node1&#45;&gt;Node48</title>
<g id="a_edge106_Node000001_Node000048"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1861.78,-653.27C1875.93,-643.15 1892.82,-630.39 1907,-617.75 1927.25,-599.7 1948.23,-577.06 1963.01,-560.34"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1965.59,-562.71 1969.54,-552.88 1960.32,-558.1 1965.59,-562.71"/>
</a>
</g>
</g>
<!-- Node50 -->
<g id="Node000050" class="node">
<title>Node50</title>
<g id="a_Node000050"><a xlink:href="computation_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="2400.38,-351.75 2281.62,-351.75 2281.62,-321.25 2400.38,-321.25 2400.38,-351.75"/>
<text xml:space="preserve" text-anchor="start" x="2289.62" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/dependencies</text>
<text xml:space="preserve" text-anchor="middle" x="2341" y="-327" font-family="Helvetica,sans-Serif" font-size="10.00">/computation.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node50 -->
<g id="edge112_Node000001_Node000050" class="edge">
<title>Node1&#45;&gt;Node50</title>
<g id="a_edge112_Node000001_Node000050"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1897.8,-672.14C2004.3,-668.61 2208.51,-656.81 2268,-617.75 2302.9,-594.84 2316,-578.75 2316,-537 2316,-537 2316,-537 2316,-468.5 2316,-431.15 2325.92,-388.86 2333.27,-362.69"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="2336.56,-363.9 2335.99,-353.32 2329.84,-361.95 2336.56,-363.9"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="base_8hpp.html" target="_top" xlink:title="This file provides the base classes for residual and value blocks in the discretization framework.">
<polygon fill="white" stroke="#666666" points="563.75,-285.25 468.25,-285.25 468.25,-254.75 563.75,-254.75 563.75,-285.25"/>
<text xml:space="preserve" text-anchor="start" x="476.25" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="516" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">/blocks/base.hpp</text>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node9 -->
<g id="edge8_Node000008_Node000009" class="edge">
<title>Node8&#45;&gt;Node9</title>
<g id="a_edge8_Node000008_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M440,-586.96C440,-562.79 440,-512.8 440,-470.5 440,-470.5 440,-470.5 440,-402 440,-359.38 470.47,-318.21 492.82,-293.74"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="495.24,-296.28 499.58,-286.61 490.16,-291.47 495.24,-296.28"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="discretization_2blocks_2keys_8hpp.html" target="_top" xlink:title="Keys for the shared layout of a discretized state and residual in a block&#45;structured system.">
<polygon fill="white" stroke="#666666" points="411.75,-551.25 316.25,-551.25 316.25,-520.75 411.75,-520.75 411.75,-551.25"/>
<text xml:space="preserve" text-anchor="start" x="324.25" y="-537.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="364" y="-526.5" font-family="Helvetica,sans-Serif" font-size="10.00">/blocks/keys.hpp</text>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node10 -->
<g id="edge9_Node000008_Node000010" class="edge">
<title>Node8&#45;&gt;Node10</title>
<g id="a_edge9_Node000008_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M422.75,-586.86C413.04,-578.62 400.71,-568.15 389.86,-558.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="392.22,-556.36 382.33,-552.56 387.69,-561.7 392.22,-556.36"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="system__layout_8hpp.html" target="_top" xlink:title="Describe the independently ordered physical state and residual coordinates of a discrete system....">
<polygon fill="white" stroke="#666666" points="354.5,-484.75 221.5,-484.75 221.5,-454.25 354.5,-454.25 354.5,-484.75"/>
<text xml:space="preserve" text-anchor="start" x="229.5" y="-471.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="288" y="-460" font-family="Helvetica,sans-Serif" font-size="10.00">/blocks/system_layout.hpp</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node12 -->
<g id="edge11_Node000011_Node000012" class="edge">
<title>Node11&#45;&gt;Node12</title>
<g id="a_edge11_Node000011_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M292.45,-586.98C291.61,-565.14 290.02,-523.52 288.99,-496.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="292.49,-496.46 288.61,-486.6 285.5,-496.72 292.49,-496.46"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node3 -->
<g id="edge13_Node000012_Node000003" class="edge">
<title>Node12&#45;&gt;Node3</title>
<g id="a_edge13_Node000012_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M250.5,-453.87C234.22,-445.71 216.32,-433.97 205,-418.25 183.64,-388.59 177.16,-240.8 176,-218.75 173.69,-174.7 174.16,-159.48 197,-121.75 204.81,-108.85 216.59,-96.79 226.76,-87.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="228.99,-90.42 234.33,-81.27 224.45,-85.09 228.99,-90.42"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node6 -->
<g id="edge15_Node000012_Node000006" class="edge">
<title>Node12&#45;&gt;Node6</title>
<g id="a_edge15_Node000012_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M248.26,-453.82C169.25,-421.78 0,-337.61 0,-204.5 0,-204.5 0,-204.5 0,-136 0,-58.32 79.91,-75.14 155,-55.25 267.49,-25.46 1102.59,-13.55 1302.22,-11.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1302.18,-14.62 1312.14,-11 1302.1,-7.62 1302.18,-14.62"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node9 -->
<g id="edge16_Node000012_Node000009" class="edge">
<title>Node12&#45;&gt;Node9</title>
<g id="a_edge16_Node000012_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M306.1,-453.77C317.63,-444.09 332.67,-430.92 345,-418.25 384.18,-378.01 382.76,-357.09 426,-321.25 440.24,-309.45 457.65,-298.98 473.35,-290.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="474.71,-293.94 482.03,-286.27 471.53,-287.7 474.71,-293.94"/>
</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="655.88,-80.12 618.12,-80.12 618.12,-60.88 655.88,-60.88 655.88,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="637" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">array</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node13 -->
<g id="edge12_Node000012_Node000013" class="edge">
<title>Node12&#45;&gt;Node13</title>
<g id="a_edge12_Node000012_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M311.13,-453.77C323.11,-444.92 336.89,-432.61 345,-418.25 410.88,-301.63 305.62,-217.78 399,-121.75 427.52,-92.43 549.16,-78.71 606.66,-73.77"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="606.71,-77.28 616.39,-72.97 606.14,-70.3 606.71,-77.28"/>
</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="2009.5,-146.62 1972.5,-146.62 1972.5,-127.38 2009.5,-127.38 2009.5,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1991" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">span</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node14 -->
<g id="edge14_Node000012_Node000014" class="edge">
<title>Node12&#45;&gt;Node14</title>
<g id="a_edge14_Node000012_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M354.94,-466.91C530.08,-462.39 998.79,-447.82 1151,-418.25 1332.43,-383.01 1370.16,-345.15 1545,-285.25 1669.19,-242.7 1699.12,-228.73 1824,-188.25 1871.79,-172.76 1927.79,-156.24 1961.28,-146.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1962.05,-149.95 1970.68,-143.81 1960.1,-143.23 1962.05,-149.95"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="key__list__operations_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="335.88,-418.25 214.12,-418.25 214.12,-387.75 335.88,-387.75 335.88,-418.25"/>
<text xml:space="preserve" text-anchor="start" x="222.12" y="-404.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/dependencies</text>
<text xml:space="preserve" text-anchor="middle" x="275" y="-393.5" font-family="Helvetica,sans-Serif" font-size="10.00">/key_list_operations.hpp</text>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node15 -->
<g id="edge17_Node000012_Node000015" class="edge">
<title>Node12&#45;&gt;Node15</title>
<g id="a_edge17_Node000012_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M285.05,-453.86C283.6,-446.69 281.82,-437.84 280.16,-429.59"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="283.64,-429.17 278.24,-420.06 276.78,-430.56 283.64,-429.17"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node3 -->
<g id="edge18_Node000015_Node000003" class="edge">
<title>Node15&#45;&gt;Node3</title>
<g id="a_edge18_Node000015_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M247.87,-387.44C234.25,-378.79 218.64,-366.61 209,-351.75 188.93,-320.82 190,-307.87 190,-271 190,-271 190,-271 190,-202.5 190,-159.1 216.64,-113.82 233.49,-89.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="236.13,-91.83 239.13,-81.67 230.45,-87.75 236.13,-91.83"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node6 -->
<g id="edge19_Node000015_Node000006" class="edge">
<title>Node15&#45;&gt;Node6</title>
<g id="a_edge19_Node000015_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M233.19,-387.31C216.91,-379.38 199.83,-367.84 190,-351.75 121.29,-239.29 89.1,-144.58 186,-55.25 227.8,-16.71 1098.12,-11.44 1302.37,-10.73"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1302.27,-14.23 1312.25,-10.7 1302.24,-7.23 1302.27,-14.23"/>
</a>
</g>
</g>
<!-- Node16 -->
<g id="Node000016" class="node">
<title>Node16</title>
<g id="a_Node000016"><a xlink:href="type__lists_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="336.38,-351.75 217.62,-351.75 217.62,-321.25 336.38,-321.25 336.38,-351.75"/>
<text xml:space="preserve" text-anchor="start" x="225.62" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/dependencies</text>
<text xml:space="preserve" text-anchor="middle" x="277" y="-327" font-family="Helvetica,sans-Serif" font-size="10.00">/detail/type_lists.hpp</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node16 -->
<g id="edge20_Node000015_Node000016" class="edge">
<title>Node15&#45;&gt;Node16</title>
<g id="a_edge20_Node000015_Node000016"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M275.45,-387.36C275.67,-380.27 275.94,-371.54 276.2,-363.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="279.69,-363.69 276.5,-353.59 272.69,-363.48 279.69,-363.69"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node3 -->
<g id="edge22_Node000016_Node000003" class="edge">
<title>Node16&#45;&gt;Node3</title>
<g id="a_edge22_Node000016_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M274.62,-320.82C269.68,-289.78 258.23,-215.2 252,-152.25 249.97,-131.74 248.62,-108.2 247.84,-91.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="251.35,-91.83 247.41,-81.99 244.35,-92.14 251.35,-91.83"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node6 -->
<g id="edge23_Node000016_Node000006" class="edge">
<title>Node16&#45;&gt;Node6</title>
<g id="a_edge23_Node000016_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M265.77,-320.76C230.79,-273.1 131.02,-122.35 214,-55.25 257.05,-20.44 1101.04,-12.33 1302.22,-10.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1302.24,-14.39 1312.22,-10.82 1302.19,-7.39 1302.24,-14.39"/>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node13 -->
<g id="edge21_Node000016_Node000013" class="edge">
<title>Node16&#45;&gt;Node13</title>
<g id="a_edge21_Node000016_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M278.41,-320.86C282.92,-277.2 298.45,-149.22 328,-121.75 368.09,-84.49 536.36,-74.75 606.31,-72.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="606.4,-75.8 616.28,-71.98 606.17,-68.8 606.4,-75.8"/>
</a>
</g>
</g>
<!-- Node17 -->
<g id="Node000017" class="node">
<title>Node17</title>
<g id="a_Node000017"><a xlink:href="key__list_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="861.38,-285.25 742.62,-285.25 742.62,-254.75 861.38,-254.75 861.38,-285.25"/>
<text xml:space="preserve" text-anchor="start" x="750.62" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/dependencies</text>
<text xml:space="preserve" text-anchor="middle" x="802" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">/key_list.hpp</text>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node17 -->
<g id="edge24_Node000016_Node000017" class="edge">
<title>Node16&#45;&gt;Node17</title>
<g id="a_edge24_Node000016_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M336.71,-328.16C434.11,-316.2 626.75,-292.53 731,-279.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="731.34,-283.21 740.84,-278.51 730.49,-276.26 731.34,-283.21"/>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node6 -->
<g id="edge25_Node000017_Node000006" class="edge">
<title>Node17&#45;&gt;Node6</title>
<g id="a_edge25_Node000017_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M861.81,-264.96C1022.86,-254 1453.94,-224.21 1459,-218.75 1465.01,-212.26 1474.39,-88.28 1451,-55.25 1436.29,-34.48 1409.95,-23.33 1387.21,-17.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1388.07,-13.98 1377.54,-15.11 1386.48,-20.79 1388.07,-13.98"/>
</a>
</g>
</g>
<!-- Node18 -->
<g id="Node000018" class="node">
<title>Node18</title>
<g id="a_Node000018"><a xlink:href="utils_2dependencies_2binding_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="764.38,-218.75 645.62,-218.75 645.62,-188.25 764.38,-188.25 764.38,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="653.62" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/dependencies</text>
<text xml:space="preserve" text-anchor="middle" x="705" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/binding.hpp</text>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node18 -->
<g id="edge26_Node000017_Node000018" class="edge">
<title>Node17&#45;&gt;Node18</title>
<g id="a_edge26_Node000017_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M779.99,-254.36C767.09,-245.79 750.59,-234.81 736.35,-225.34"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="738.45,-222.54 728.18,-219.92 734.57,-228.37 738.45,-222.54"/>
</a>
</g>
</g>
<!-- Node19 -->
<g id="Node000019" class="node">
<title>Node19</title>
<g id="a_Node000019"><a xlink:href="traits_2type__uniqueness_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="833.62,-152.25 722.38,-152.25 722.38,-121.75 833.62,-121.75 833.62,-152.25"/>
<text xml:space="preserve" text-anchor="start" x="730.38" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/traits</text>
<text xml:space="preserve" text-anchor="middle" x="778" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">/type_uniqueness.hpp</text>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node19 -->
<g id="edge33_Node000017_Node000019" class="edge">
<title>Node17&#45;&gt;Node19</title>
<g id="a_edge33_Node000017_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M799.34,-254.48C795.34,-232.64 787.71,-191.02 782.75,-163.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="786.19,-163.28 780.94,-154.07 779.3,-164.54 786.19,-163.28"/>
</a>
</g>
</g>
<!-- Node21 -->
<g id="Node000021" class="node">
<title>Node21</title>
<g id="a_Node000021"><a xlink:href="type__list_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="924.25,-218.75 819.75,-218.75 819.75,-188.25 924.25,-188.25 924.25,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="827.75" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/types/type</text>
<text xml:space="preserve" text-anchor="middle" x="872" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">_list.hpp</text>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node21 -->
<g id="edge34_Node000017_Node000021" class="edge">
<title>Node17&#45;&gt;Node21</title>
<g id="a_edge34_Node000017_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M817.88,-254.36C826.74,-246.2 837.96,-235.86 847.88,-226.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="850.08,-229.45 855.07,-220.1 845.34,-224.31 850.08,-229.45"/>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node6 -->
<g id="edge28_Node000018_Node000006" class="edge">
<title>Node18&#45;&gt;Node6</title>
<g id="a_edge28_Node000018_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M701.88,-188.03C698.95,-170.2 697.09,-140.03 713,-121.75 790.57,-32.62 1173.53,-14.9 1302.51,-11.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1302.41,-14.95 1312.32,-11.2 1302.23,-7.95 1302.41,-14.95"/>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node13 -->
<g id="edge27_Node000018_Node000013" class="edge">
<title>Node18&#45;&gt;Node13</title>
<g id="a_edge27_Node000018_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M697.46,-187.98C685.12,-164.2 660.59,-116.95 646.87,-90.52"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="650.14,-89.21 642.42,-81.94 643.92,-92.43 650.14,-89.21"/>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node19 -->
<g id="edge29_Node000018_Node000019" class="edge">
<title>Node18&#45;&gt;Node19</title>
<g id="a_edge29_Node000018_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M721.56,-187.86C730.9,-179.62 742.74,-169.15 753.16,-159.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="755.19,-162.82 760.37,-153.58 750.56,-157.58 755.19,-162.82"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node13 -->
<g id="edge30_Node000019_Node000013" class="edge">
<title>Node19&#45;&gt;Node13</title>
<g id="a_edge30_Node000019_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M746,-121.36C722.16,-110.45 689.83,-95.67 666.58,-85.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="668.21,-81.93 657.66,-80.95 665.3,-88.3 668.21,-81.93"/>
</a>
</g>
</g>
<!-- Node20 -->
<g id="Node000020" class="node">
<title>Node20</title>
<g id="a_Node000020"><a xlink:href="cleaning_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1102.62,-85.75 997.38,-85.75 997.38,-55.25 1102.62,-55.25 1102.62,-85.75"/>
<text xml:space="preserve" text-anchor="start" x="1005.38" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/std</text>
<text xml:space="preserve" text-anchor="middle" x="1050" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">_helper/cleaning.hpp</text>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node20 -->
<g id="edge31_Node000019_Node000020" class="edge">
<title>Node19&#45;&gt;Node20</title>
<g id="a_edge31_Node000019_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M834.03,-122.71C878.28,-112.22 940.05,-97.57 986.2,-86.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="986.88,-90.06 995.8,-84.35 985.27,-83.25 986.88,-90.06"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node6 -->
<g id="edge32_Node000020_Node000006" class="edge">
<title>Node20&#45;&gt;Node6</title>
<g id="a_edge32_Node000020_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1102.93,-57.97C1107.35,-57.04 1111.75,-56.12 1116,-55.25 1181.11,-41.88 1256.84,-27.31 1302.82,-18.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1303.19,-22.07 1312.36,-16.77 1301.88,-15.2 1303.19,-22.07"/>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node2 -->
<g id="edge36_Node000022_Node000002" class="edge">
<title>Node22&#45;&gt;Node2</title>
<g id="a_edge36_Node000022_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1304.78,-586.95C1317.78,-568.75 1342.45,-537.9 1371,-520.75 1423.13,-489.44 1445.45,-504.4 1503,-484.75 1576.27,-459.74 1601.55,-464.01 1664,-418.25 1796.24,-321.35 1901.38,-147.33 1933.7,-90.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1936.62,-92.17 1938.44,-81.73 1930.51,-88.75 1936.62,-92.17"/>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node6 -->
<g id="edge37_Node000022_Node000006" class="edge">
<title>Node22&#45;&gt;Node6</title>
<g id="a_edge37_Node000022_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1299.08,-586.92C1304.39,-569.79 1314.94,-541.12 1331,-520.75 1497.53,-309.56 1692.08,-393.48 1811,-152.25 1840.12,-93.19 1761.29,-76.63 1699,-55.25 1591.22,-18.26 1455.55,-11.39 1387.72,-10.45"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1387.81,-6.95 1377.77,-10.35 1387.74,-13.95 1387.81,-6.95"/>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node9 -->
<g id="edge47_Node000022_Node000009" class="edge">
<title>Node22&#45;&gt;Node9</title>
<g id="a_edge47_Node000022_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1232.28,-600.44C1073.75,-597.26 666.01,-585.77 616,-551.25 531.04,-492.6 517.79,-354.74 516.06,-297.08"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="519.56,-297.19 515.87,-287.26 512.56,-297.32 519.56,-297.19"/>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node18 -->
<g id="edge88_Node000022_Node000018" class="edge">
<title>Node22&#45;&gt;Node18</title>
<g id="a_edge88_Node000022_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1232.14,-602.32C1066.37,-602.81 630,-592.51 630,-470.5 630,-470.5 630,-470.5 630,-335.5 630,-293.02 660.07,-251.82 682.13,-227.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="684.53,-229.86 688.79,-220.16 679.41,-225.09 684.53,-229.86"/>
</a>
</g>
</g>
<!-- Node23 -->
<g id="Node000023" class="node">
<title>Node23</title>
<g id="a_Node000023"><a xlink:href="quantities_8hpp.html" target="_top" xlink:title="This file contains the code to associate numeric data to a dimension. We call this a Quantity and a Q...">
<polygon fill="white" stroke="#666666" points="1657.5,-213.12 1506.5,-213.12 1506.5,-193.88 1657.5,-193.88 1657.5,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="1582" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/dimensions/quantities.hpp</text>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node23 -->
<g id="edge38_Node000022_Node000023" class="edge">
<title>Node22&#45;&gt;Node23</title>
<g id="a_edge38_Node000022_Node000023"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1292.85,-587.03C1291.03,-570.25 1290.09,-542.16 1300,-520.75 1363.44,-383.68 1457.56,-408.4 1545,-285.25 1558.64,-266.04 1569.17,-241.01 1575.45,-223.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1578.58,-225.58 1578.6,-214.99 1571.98,-223.26 1578.58,-225.58"/>
</a>
</g>
</g>
<!-- Node27 -->
<g id="Node000027" class="node">
<title>Node27</title>
<g id="a_Node000027"><a xlink:href="metrics_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1240.38,-484.75 1115.62,-484.75 1115.62,-454.25 1240.38,-454.25 1240.38,-484.75"/>
<text xml:space="preserve" text-anchor="start" x="1123.62" y="-471.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="1178" y="-460" font-family="Helvetica,sans-Serif" font-size="10.00">/metrics.hpp</text>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node27 -->
<g id="edge48_Node000022_Node000027" class="edge">
<title>Node22&#45;&gt;Node27</title>
<g id="a_edge48_Node000022_Node000027"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1282.03,-586.98C1261.83,-564.36 1222.65,-520.5 1198.57,-493.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1201.31,-491.34 1192.03,-486.21 1196.09,-496 1201.31,-491.34"/>
</a>
</g>
</g>
<!-- Node44 -->
<g id="Node000044" class="node">
<title>Node44</title>
<g id="a_Node000044"><a xlink:href="dimensionless_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1647.38,-551.25 1522.62,-551.25 1522.62,-520.75 1647.38,-520.75 1647.38,-551.25"/>
<text xml:space="preserve" text-anchor="start" x="1530.62" y="-537.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/normalization</text>
<text xml:space="preserve" text-anchor="middle" x="1585" y="-526.5" font-family="Helvetica,sans-Serif" font-size="10.00">/dimensionless.hpp</text>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node44 -->
<g id="edge84_Node000022_Node000044" class="edge">
<title>Node22&#45;&gt;Node44</title>
<g id="a_edge84_Node000022_Node000044"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1357.57,-587.58C1402.73,-577.54 1463.88,-563.94 1511.39,-553.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1512.06,-556.81 1521.07,-551.22 1510.54,-549.97 1512.06,-556.81"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node2 -->
<g id="edge41_Node000023_Node000002" class="edge">
<title>Node23&#45;&gt;Node2</title>
<g id="a_edge41_Node000023_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1651.14,-193.42C1697.51,-185.86 1759.33,-172.94 1811,-152.25 1853.51,-135.23 1898.03,-105.35 1923.27,-87.1"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1925.04,-90.14 1931.03,-81.4 1920.9,-84.5 1925.04,-90.14"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node6 -->
<g id="edge39_Node000023_Node000006" class="edge">
<title>Node23&#45;&gt;Node6</title>
<g id="a_edge39_Node000023_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1595.12,-193.49C1615.26,-178.53 1649.79,-147.62 1633,-121.75 1579.21,-38.83 1453.45,-17.71 1387.33,-12.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1387.83,-8.91 1377.61,-11.69 1387.33,-15.89 1387.83,-8.91"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node20 -->
<g id="edge43_Node000023_Node000020" class="edge">
<title>Node23&#45;&gt;Node20</title>
<g id="a_edge43_Node000023_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1578.46,-193.5C1571.09,-176.14 1552.33,-138.31 1523,-121.75 1443.94,-77.11 1205.77,-99.36 1116,-85.75 1115.33,-85.65 1114.66,-85.54 1113.98,-85.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1114.79,-82.03 1104.34,-83.77 1113.6,-88.92 1114.79,-82.03"/>
</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="1623.75,-146.62 1570.25,-146.62 1570.25,-127.38 1623.75,-127.38 1623.75,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1597" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">compare</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node24 -->
<g id="edge40_Node000023_Node000024" class="edge">
<title>Node23&#45;&gt;Node24</title>
<g id="a_edge40_Node000023_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1584.09,-193.53C1586.21,-184.39 1589.58,-169.89 1592.35,-158"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1595.73,-158.9 1594.59,-148.37 1588.91,-157.31 1595.73,-158.9"/>
</a>
</g>
</g>
<!-- Node25 -->
<g id="Node000025" class="node">
<title>Node25</title>
<g id="a_Node000025"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1513.5,-146.62 1476.5,-146.62 1476.5,-127.38 1513.5,-127.38 1513.5,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1495" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">tuple</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node25 -->
<g id="edge42_Node000023_Node000025" class="edge">
<title>Node23&#45;&gt;Node25</title>
<g id="a_edge42_Node000023_Node000025"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1569.9,-193.53C1556.09,-183.29 1533.22,-166.34 1516.38,-153.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1518.61,-151.15 1508.49,-148 1514.44,-156.77 1518.61,-151.15"/>
</a>
</g>
</g>
<!-- Node26 -->
<g id="Node000026" class="node">
<title>Node26</title>
<g id="a_Node000026"><a xlink:href="numeric_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1802.25,-152.25 1679.75,-152.25 1679.75,-121.75 1802.25,-121.75 1802.25,-152.25"/>
<text xml:space="preserve" text-anchor="start" x="1687.75" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/concepts</text>
<text xml:space="preserve" text-anchor="middle" x="1741" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">/numeric.hpp</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node26 -->
<g id="edge44_Node000023_Node000026" class="edge">
<title>Node23&#45;&gt;Node26</title>
<g id="a_edge44_Node000023_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1604.44,-193.4C1627.7,-183.96 1664.71,-168.95 1694.35,-156.93"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1695.54,-160.22 1703.49,-153.22 1692.9,-153.73 1695.54,-160.22"/>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node2 -->
<g id="edge45_Node000026_Node000002" class="edge">
<title>Node26&#45;&gt;Node2</title>
<g id="a_edge45_Node000026_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1787.32,-121.28C1822.85,-109.99 1871.35,-94.58 1904.94,-83.91"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1905.8,-87.31 1914.27,-80.95 1903.68,-80.64 1905.8,-87.31"/>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node6 -->
<g id="edge46_Node000026_Node000006" class="edge">
<title>Node26&#45;&gt;Node6</title>
<g id="a_edge46_Node000026_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1732.14,-121.51C1719.84,-102.77 1695.7,-70.72 1666,-55.25 1618.4,-30.45 1463.45,-17.83 1387.6,-13.01"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1387.85,-9.52 1377.65,-12.4 1387.41,-16.5 1387.85,-9.52"/>
</a>
</g>
</g>
<!-- Node27&#45;&gt;Node2 -->
<g id="edge49_Node000027_Node000002" class="edge">
<title>Node27&#45;&gt;Node2</title>
<g id="a_edge49_Node000027_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1209.89,-453.9C1339.86,-394.34 1824.08,-172.04 1854,-152.25 1882.33,-133.51 1910.8,-106.2 1927.92,-88.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1930.33,-91.18 1934.72,-81.54 1925.28,-86.34 1930.33,-91.18"/>
</a>
</g>
</g>
<!-- Node27&#45;&gt;Node6 -->
<g id="edge50_Node000027_Node000006" class="edge">
<title>Node27&#45;&gt;Node6</title>
<g id="a_edge50_Node000027_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1115.44,-466.11C1002.71,-458.28 765.44,-425.09 639,-285.25 569.86,-208.78 538.35,-130.32 609,-55.25 632.92,-29.84 1150.14,-15.34 1302.89,-11.6"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1302.64,-15.11 1312.56,-11.37 1302.48,-8.11 1302.64,-15.11"/>
</a>
</g>
</g>
<!-- Node27&#45;&gt;Node15 -->
<g id="edge83_Node000027_Node000015" class="edge">
<title>Node27&#45;&gt;Node15</title>
<g id="a_edge83_Node000027_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1115.22,-464.02C952.88,-452.42 519.91,-421.49 347.4,-409.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="347.91,-405.7 337.68,-408.48 347.41,-412.68 347.91,-405.7"/>
</a>
</g>
</g>
<!-- Node28 -->
<g id="Node000028" class="node">
<title>Node28</title>
<g id="a_Node000028"><a xlink:href="discretization_2blocks_2concepts_8hpp.html" target="_top" xlink:title="This file defines concepts for blocks in the discretization framework.">
<polygon fill="white" stroke="#666666" points="1141.5,-418.25 1032.5,-418.25 1032.5,-387.75 1141.5,-387.75 1141.5,-418.25"/>
<text xml:space="preserve" text-anchor="start" x="1040.5" y="-404.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="1087" y="-393.5" font-family="Helvetica,sans-Serif" font-size="10.00">/blocks/concepts.hpp</text>
</a>
</g>
</g>
<!-- Node27&#45;&gt;Node28 -->
<g id="edge51_Node000027_Node000028" class="edge">
<title>Node27&#45;&gt;Node28</title>
<g id="a_edge51_Node000027_Node000028"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1157.35,-453.86C1145.37,-445.37 1130.06,-434.52 1116.79,-425.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1118.98,-422.38 1108.8,-419.45 1114.94,-428.09 1118.98,-422.38"/>
</a>
</g>
</g>
<!-- Node29 -->
<g id="Node000029" class="node">
<title>Node29</title>
<g id="a_Node000029"><a xlink:href="fields_8hpp.html" target="_top" xlink:title="Define the fields and their associated terms for the discretization. This is a key file to understand...">
<polygon fill="white" stroke="#666666" points="1089.75,-351.75 994.25,-351.75 994.25,-321.25 1089.75,-321.25 1089.75,-351.75"/>
<text xml:space="preserve" text-anchor="start" x="1002.25" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="1042" y="-327" font-family="Helvetica,sans-Serif" font-size="10.00">/blocks/fields.hpp</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node29 -->
<g id="edge52_Node000028_Node000029" class="edge">
<title>Node28&#45;&gt;Node29</title>
<g id="a_edge52_Node000028_Node000029"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1076.79,-387.36C1071.44,-379.69 1064.75,-370.11 1058.67,-361.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1061.63,-359.52 1053.04,-353.32 1055.89,-363.52 1061.63,-359.52"/>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node9 -->
<g id="edge58_Node000029_Node000009" class="edge">
<title>Node29&#45;&gt;Node9</title>
<g id="a_edge58_Node000029_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M993.93,-329.61C897.49,-317.78 680.69,-291.2 575.5,-278.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="576.01,-274.83 565.65,-277.09 575.15,-281.78 576.01,-274.83"/>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node13 -->
<g id="edge53_Node000029_Node000013" class="edge">
<title>Node29&#45;&gt;Node13</title>
<g id="a_edge53_Node000029_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M993.84,-334.11C931.71,-330.88 821.25,-320.23 734,-285.25 721.87,-280.39 643.09,-230.31 637,-218.75 615.42,-177.78 624.37,-121.08 631.46,-91.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="634.79,-92.5 633.91,-81.94 628.02,-90.74 634.79,-92.5"/>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node21 -->
<g id="edge79_Node000029_Node000021" class="edge">
<title>Node29&#45;&gt;Node21</title>
<g id="a_edge79_Node000029_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1001.63,-320.85C981.33,-312.32 957.05,-300.28 938,-285.25 917.68,-269.22 899.47,-245.92 887.36,-228.46"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="890.29,-226.55 881.8,-220.21 884.48,-230.46 890.29,-226.55"/>
</a>
</g>
</g>
<!-- Node30 -->
<g id="Node000030" class="node">
<title>Node30</title>
<g id="a_Node000030"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1190.75,-80.12 1125.25,-80.12 1125.25,-60.88 1190.75,-60.88 1190.75,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="1158" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">string_view</text>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node30 -->
<g id="edge54_Node000029_Node000030" class="edge">
<title>Node29&#45;&gt;Node30</title>
<g id="a_edge54_Node000029_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1026.9,-320.79C990.8,-283.88 906.2,-185.7 957,-121.75 1000.99,-66.37 1043.73,-104.23 1112,-85.75 1114.27,-85.14 1116.6,-84.48 1118.94,-83.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1119.83,-87.2 1128.42,-81 1117.84,-80.49 1119.83,-87.2"/>
</a>
</g>
</g>
<!-- Node31 -->
<g id="Node000031" class="node">
<title>Node31</title>
<g id="a_Node000031"><a xlink:href="dimensions_8hpp.html" target="_top" xlink:title="File containing prue dimensions. Note that this is not intended to be (nor does it have the capabilit...">
<polygon fill="white" stroke="#666666" points="1536.25,-279.62 1377.75,-279.62 1377.75,-260.38 1536.25,-260.38 1536.25,-279.62"/>
<text xml:space="preserve" text-anchor="middle" x="1457" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">serif/dimensions/dimensions.hpp</text>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node31 -->
<g id="edge55_Node000029_Node000031" class="edge">
<title>Node29&#45;&gt;Node31</title>
<g id="a_edge55_Node000029_Node000031"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1090.01,-328.04C1163.14,-316.67 1302.82,-294.96 1387.18,-281.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1387.61,-285.33 1396.95,-280.33 1386.53,-278.41 1387.61,-285.33"/>
</a>
</g>
</g>
<!-- Node32 -->
<g id="Node000032" class="node">
<title>Node32</title>
<g id="a_Node000032"><a xlink:href="space_8hpp.html" target="_top" xlink:title="This file defines the functional space types used in the discretization framework,...">
<polygon fill="white" stroke="#666666" points="1450.25,-218.75 1309.75,-218.75 1309.75,-188.25 1450.25,-188.25 1450.25,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="1317.75" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="1380" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/functional_space/space.hpp</text>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node32 -->
<g id="edge59_Node000029_Node000032" class="edge">
<title>Node29&#45;&gt;Node32</title>
<g id="a_edge59_Node000029_Node000032"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1089.87,-335.3C1145.24,-333.13 1237.54,-323.41 1306,-285.25 1330.5,-271.59 1351.33,-246.87 1364.59,-228.36"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1367.33,-230.55 1370.12,-220.33 1361.57,-226.58 1367.33,-230.55"/>
</a>
</g>
</g>
<!-- Node37 -->
<g id="Node000037" class="node">
<title>Node37</title>
<g id="a_Node000037"><a xlink:href="discretization_2domain_2concepts_8hpp.html" target="_top" xlink:title="File containing concepts for the domain module. These concepts are used to constrain template paramet...">
<polygon fill="white" stroke="#666666" points="1092,-218.75 980,-218.75 980,-188.25 1092,-188.25 1092,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="988" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="1036" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/concepts.hpp</text>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node37 -->
<g id="edge64_Node000029_Node000037" class="edge">
<title>Node29&#45;&gt;Node37</title>
<g id="a_edge64_Node000029_Node000037"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1029.44,-320.78C1022.21,-311.31 1013.82,-298.36 1010,-285.25 1006.21,-272.24 1006.79,-267.92 1010,-254.75 1012.14,-245.96 1016.11,-236.99 1020.31,-229.1"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1023.33,-230.87 1025.28,-220.46 1017.26,-227.38 1023.33,-230.87"/>
</a>
</g>
</g>
<!-- Node41 -->
<g id="Node000041" class="node">
<title>Node41</title>
<g id="a_Node000041"><a xlink:href="physical__domains_8hpp.html" target="_top" xlink:title="File containing the physical domain types for SERiF. These are domain sets that are more useful physi...">
<polygon fill="white" stroke="#666666" points="1169.12,-285.25 1018.88,-285.25 1018.88,-254.75 1169.12,-254.75 1169.12,-285.25"/>
<text xml:space="preserve" text-anchor="start" x="1026.88" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="1094" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/physical_domains.hpp</text>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node41 -->
<g id="edge76_Node000029_Node000041" class="edge">
<title>Node29&#45;&gt;Node41</title>
<g id="a_edge76_Node000029_Node000041"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1053.8,-320.86C1060.12,-313.03 1068.04,-303.19 1075.19,-294.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1077.75,-296.74 1081.3,-286.76 1072.3,-292.34 1077.75,-296.74"/>
</a>
</g>
</g>
<!-- Node42 -->
<g id="Node000042" class="node">
<title>Node42</title>
<g id="a_Node000042"><a xlink:href="names_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1297.25,-279.62 1186.75,-279.62 1186.75,-260.38 1297.25,-260.38 1297.25,-279.62"/>
<text xml:space="preserve" text-anchor="middle" x="1242" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">serif/meta/names.hpp</text>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node42 -->
<g id="edge80_Node000029_Node000042" class="edge">
<title>Node29&#45;&gt;Node42</title>
<g id="a_edge80_Node000029_Node000042"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1087.63,-320.78C1122.54,-309.53 1170.14,-294.17 1203.22,-283.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1203.96,-286.95 1212.4,-280.55 1201.81,-280.28 1203.96,-286.95"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node23 -->
<g id="edge57_Node000031_Node000023" class="edge">
<title>Node31&#45;&gt;Node23</title>
<g id="a_edge57_Node000031_Node000023"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1474.64,-259.9C1495.4,-249.19 1530.09,-231.28 1554.41,-218.74"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1555.82,-221.95 1563.1,-214.25 1552.61,-215.73 1555.82,-221.95"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node30 -->
<g id="edge56_Node000031_Node000030" class="edge">
<title>Node31&#45;&gt;Node30</title>
<g id="a_edge56_Node000031_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1377.38,-262.57C1348.56,-255.93 1318.76,-243.13 1301,-218.75 1275.35,-183.54 1340.68,-156.93 1315,-121.75 1289.5,-86.81 1239.38,-75.61 1202.61,-72.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1202.92,-68.81 1192.69,-71.59 1202.42,-75.8 1202.92,-68.81"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node6 -->
<g id="edge60_Node000032_Node000006" class="edge">
<title>Node32&#45;&gt;Node6</title>
<g id="a_edge60_Node000032_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1375.3,-187.76C1369.77,-171.22 1359.83,-143.81 1348,-121.75 1338.8,-104.58 1328.82,-104.34 1323,-85.75 1318.95,-72.81 1319.92,-68.45 1323,-55.25 1325.08,-46.33 1329.21,-37.14 1333.34,-29.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1336.22,-31.45 1338.19,-21.04 1330.16,-27.94 1336.22,-31.45"/>
</a>
</g>
</g>
<!-- Node33 -->
<g id="Node000033" class="node">
<title>Node33</title>
<g id="a_Node000033"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1305.88,-146.62 1262.12,-146.62 1262.12,-127.38 1305.88,-127.38 1305.88,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1284" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">format</text>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node33 -->
<g id="edge61_Node000032_Node000033" class="edge">
<title>Node32&#45;&gt;Node33</title>
<g id="a_edge61_Node000032_Node000033"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1358.22,-187.86C1342.88,-177.56 1322.39,-163.79 1306.82,-153.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1308.92,-150.53 1298.67,-147.85 1305.01,-156.34 1308.92,-150.53"/>
</a>
</g>
</g>
<!-- Node34 -->
<g id="Node000034" class="node">
<title>Node34</title>
<g id="a_Node000034"><a xlink:href="enums_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="#fff0f0" stroke="red" points="1442.25,-80.12 1331.75,-80.12 1331.75,-60.88 1442.25,-60.88 1442.25,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="1387" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/meta/enums.hpp</text>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node34 -->
<g id="edge62_Node000032_Node000034" class="edge">
<title>Node32&#45;&gt;Node34</title>
<g id="a_edge62_Node000032_Node000034"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1382.14,-188.02C1383.52,-178.01 1385.21,-164.35 1386,-152.25 1387.35,-131.72 1387.48,-108.19 1387.35,-91.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1390.85,-91.94 1387.22,-81.99 1383.85,-92.03 1390.85,-91.94"/>
</a>
</g>
</g>
<!-- Node34&#45;&gt;Node6 -->
<g id="edge63_Node000034_Node000006" class="edge">
<title>Node34&#45;&gt;Node6</title>
<g id="a_edge63_Node000034_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1380.62,-60.56C1374.64,-52.17 1365.51,-39.38 1358,-28.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1360.97,-26.99 1352.32,-20.88 1355.28,-31.06 1360.97,-26.99"/>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node3 -->
<g id="edge65_Node000037_Node000003" class="edge">
<title>Node37&#45;&gt;Node3</title>
<g id="a_edge65_Node000037_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M999.91,-187.8C975.59,-177.86 942.82,-164.38 914,-152.25 882.34,-138.93 876.32,-130.08 843,-121.75 735.72,-94.94 394.4,-77.96 282.73,-73.01"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="283.12,-69.52 272.98,-72.58 282.81,-76.51 283.12,-69.52"/>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node13 -->
<g id="edge68_Node000037_Node000013" class="edge">
<title>Node37&#45;&gt;Node13</title>
<g id="a_edge68_Node000037_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1012.29,-187.86C996.5,-177.99 975.35,-164.58 957,-152.25 937.55,-139.18 935.6,-130.84 914,-121.75 829.54,-86.22 720.23,-75.78 667.77,-72.74"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="667.96,-69.24 657.8,-72.22 667.6,-76.23 667.96,-69.24"/>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node14 -->
<g id="edge67_Node000037_Node000014" class="edge">
<title>Node37&#45;&gt;Node14</title>
<g id="a_edge67_Node000037_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1092.3,-193.92C1107.74,-191.81 1124.49,-189.73 1140,-188.25 1437.31,-159.95 1513.01,-172.04 1811,-152.25 1863.83,-148.74 1925.31,-143.66 1961.02,-140.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1960.92,-144.13 1970.59,-139.79 1960.32,-137.15 1960.92,-144.13"/>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node20 -->
<g id="edge73_Node000037_Node000020" class="edge">
<title>Node37&#45;&gt;Node20</title>
<g id="a_edge73_Node000037_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1037.55,-187.98C1039.89,-166.14 1044.33,-124.52 1047.23,-97.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1050.7,-97.91 1048.28,-87.59 1043.74,-97.16 1050.7,-97.91"/>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node30 -->
<g id="edge66_Node000037_Node000030" class="edge">
<title>Node37&#45;&gt;Node30</title>
<g id="a_edge66_Node000037_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1046.57,-187.88C1058.9,-171.22 1080.23,-143.47 1101,-121.75 1112.54,-109.68 1126.6,-97.26 1137.87,-87.79"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1139.92,-90.64 1145.4,-81.57 1135.46,-85.24 1139.92,-90.64"/>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node33 -->
<g id="edge69_Node000037_Node000033" class="edge">
<title>Node37&#45;&gt;Node33</title>
<g id="a_edge69_Node000037_Node000033"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1092.28,-187.86C1141.05,-175.18 1210,-157.25 1250.54,-146.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1251.41,-150.09 1260.21,-144.19 1249.65,-143.32 1251.41,-150.09"/>
</a>
</g>
</g>
<!-- Node38 -->
<g id="Node000038" class="node">
<title>Node38</title>
<g id="a_Node000038"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1016.25,-146.62 965.75,-146.62 965.75,-127.38 1016.25,-127.38 1016.25,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="991" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">numeric</text>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node38 -->
<g id="edge70_Node000037_Node000038" class="edge">
<title>Node37&#45;&gt;Node38</title>
<g id="a_edge70_Node000037_Node000038"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1025.79,-187.86C1019.25,-178.48 1010.7,-166.24 1003.72,-156.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1006.61,-154.26 998.02,-148.06 1000.87,-158.27 1006.61,-154.26"/>
</a>
</g>
</g>
<!-- Node39 -->
<g id="Node000039" class="node">
<title>Node39</title>
<g id="a_Node000039"><a xlink:href="discretization_2domain_2types_8hpp.html" target="_top" xlink:title="File containing the Domain and Boundary types for SERiF. These types are used to represent the differ...">
<polygon fill="white" stroke="#666666" points="1206.12,-152.25 1109.88,-152.25 1109.88,-121.75 1206.12,-121.75 1206.12,-152.25"/>
<text xml:space="preserve" text-anchor="start" x="1117.88" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="1158" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/types.hpp</text>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node39 -->
<g id="edge71_Node000037_Node000039" class="edge">
<title>Node37&#45;&gt;Node39</title>
<g id="a_edge71_Node000037_Node000039"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1063.68,-187.86C1080.45,-179 1102.07,-167.57 1120.37,-157.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1121.88,-161.05 1129.09,-153.29 1118.61,-154.87 1121.88,-161.05"/>
</a>
</g>
</g>
<!-- Node40 -->
<g id="Node000040" class="node">
<title>Node40</title>
<g id="a_Node000040"><a xlink:href="variadic__cleaning_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="552.12,-152.25 407.88,-152.25 407.88,-121.75 552.12,-121.75 552.12,-152.25"/>
<text xml:space="preserve" text-anchor="start" x="415.88" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/std</text>
<text xml:space="preserve" text-anchor="middle" x="480" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">_helper/variadic_cleaning.hpp</text>
</a>
</g>
</g>
<!-- Node37&#45;&gt;Node40 -->
<g id="edge74_Node000037_Node000040" class="edge">
<title>Node37&#45;&gt;Node40</title>
<g id="a_edge74_Node000037_Node000040"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M979.64,-194.42C964.5,-192.33 948.14,-190.14 933,-188.25 804.24,-172.2 654.56,-156.1 563.59,-146.59"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="564.07,-143.12 553.76,-145.56 563.34,-150.08 564.07,-143.12"/>
</a>
</g>
</g>
<!-- Node39&#45;&gt;Node30 -->
<g id="edge72_Node000039_Node000030" class="edge">
<title>Node39&#45;&gt;Node30</title>
<g id="a_edge72_Node000039_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1158,-121.36C1158,-112.58 1158,-101.27 1158,-91.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1161.5,-91.84 1158,-81.84 1154.5,-91.84 1161.5,-91.84"/>
</a>
</g>
</g>
<!-- Node40&#45;&gt;Node3 -->
<g id="edge75_Node000040_Node000003" class="edge">
<title>Node40&#45;&gt;Node3</title>
<g id="a_edge75_Node000040_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M426.84,-121.28C382.46,-109 320.47,-91.84 282.08,-81.21"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="283.47,-77.96 272.9,-78.67 281.6,-84.71 283.47,-77.96"/>
</a>
</g>
</g>
<!-- Node41&#45;&gt;Node37 -->
<g id="edge78_Node000041_Node000037" class="edge">
<title>Node41&#45;&gt;Node37</title>
<g id="a_edge78_Node000041_Node000037"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1080.84,-254.36C1073.72,-246.45 1064.76,-236.49 1056.73,-227.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1059.41,-225.3 1050.12,-220.2 1054.2,-229.98 1059.41,-225.3"/>
</a>
</g>
</g>
<!-- Node41&#45;&gt;Node39 -->
<g id="edge77_Node000041_Node000039" class="edge">
<title>Node41&#45;&gt;Node39</title>
<g id="a_edge77_Node000041_Node000039"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1101.09,-254.48C1111.91,-232.35 1132.65,-189.9 1145.88,-162.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1148.97,-164.47 1150.21,-153.94 1142.68,-161.39 1148.97,-164.47"/>
</a>
</g>
</g>
<!-- Node42&#45;&gt;Node30 -->
<g id="edge81_Node000042_Node000030" class="edge">
<title>Node42&#45;&gt;Node30</title>
<g id="a_edge81_Node000042_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1242.32,-260.03C1242.79,-235.95 1241.49,-168.58 1215,-121.75 1207.13,-107.85 1193.96,-95.85 1182.25,-87.07"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1184.34,-84.26 1174.15,-81.36 1180.3,-89.98 1184.34,-84.26"/>
</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="1215.5,-213.12 1148.5,-213.12 1148.5,-193.88 1215.5,-193.88 1215.5,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="1182" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">nameof.hpp</text>
</a>
</g>
</g>
<!-- Node42&#45;&gt;Node43 -->
<g id="edge82_Node000042_Node000043" class="edge">
<title>Node42&#45;&gt;Node43</title>
<g id="a_edge82_Node000042_Node000043"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1233.66,-260.03C1224.43,-250.12 1209.36,-233.91 1197.87,-221.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1200.68,-219.44 1191.3,-214.5 1195.55,-224.21 1200.68,-219.44"/>
</a>
</g>
</g>
<!-- Node44&#45;&gt;Node4 -->
<g id="edge85_Node000044_Node000004" class="edge">
<title>Node44&#45;&gt;Node4</title>
<g id="a_edge85_Node000044_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1639.53,-520.28C1683.8,-508.34 1745.15,-491.78 1784.71,-481.1"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1785.55,-484.5 1794.29,-478.52 1783.72,-477.74 1785.55,-484.5"/>
</a>
</g>
</g>
<!-- Node44&#45;&gt;Node5 -->
<g id="edge86_Node000044_Node000005" class="edge">
<title>Node44&#45;&gt;Node5</title>
<g id="a_edge86_Node000044_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1647.57,-525.67C1716.38,-515.04 1822.32,-497.5 1861,-484.75 1861.65,-484.54 1862.3,-484.31 1862.96,-484.07"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1864.24,-487.33 1872.07,-480.19 1861.5,-480.89 1864.24,-487.33"/>
</a>
</g>
</g>
<!-- Node44&#45;&gt;Node27 -->
<g id="edge87_Node000044_Node000027" class="edge">
<title>Node44&#45;&gt;Node27</title>
<g id="a_edge87_Node000044_Node000027"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1522.2,-522.39C1519.09,-521.82 1516.01,-521.27 1513,-520.75 1423.4,-505.17 1319.81,-490.08 1251.82,-480.57"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1252.7,-477.16 1242.31,-479.24 1251.73,-484.09 1252.7,-477.16"/>
</a>
</g>
</g>
<!-- Node45&#45;&gt;Node3 -->
<g id="edge90_Node000045_Node000003" class="edge">
<title>Node45&#45;&gt;Node3</title>
<g id="a_edge90_Node000045_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1379.37,-535.2C1217.23,-535.07 787.02,-530.29 653,-484.75 444.19,-413.8 295.23,-161.22 256.78,-90.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="260.07,-88.93 252.28,-81.75 253.89,-92.22 260.07,-88.93"/>
</a>
</g>
</g>
<!-- Node45&#45;&gt;Node4 -->
<g id="edge91_Node000045_Node000004" class="edge">
<title>Node45&#45;&gt;Node4</title>
<g id="a_edge91_Node000045_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1504.8,-522.4C1507.91,-521.83 1510.99,-521.28 1514,-520.75 1618.07,-502.49 1644.86,-502.61 1749,-484.75 1760.66,-482.75 1773.3,-480.41 1784.83,-478.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1785.26,-481.7 1794.42,-476.37 1783.94,-474.82 1785.26,-481.7"/>
</a>
</g>
</g>
<!-- Node45&#45;&gt;Node5 -->
<g id="edge93_Node000045_Node000005" class="edge">
<title>Node45&#45;&gt;Node5</title>
<g id="a_edge93_Node000045_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1504.77,-522.22C1507.89,-521.7 1510.98,-521.21 1514,-520.75 1667.32,-497.67 1711.99,-527.61 1861,-484.75 1861.97,-484.47 1862.94,-484.16 1863.92,-483.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1864.88,-487.22 1872.75,-480.12 1862.18,-480.76 1864.88,-487.22"/>
</a>
</g>
</g>
<!-- Node45&#45;&gt;Node7 -->
<g id="edge94_Node000045_Node000007" class="edge">
<title>Node45&#45;&gt;Node7</title>
<g id="a_edge94_Node000045_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1504.75,-522.44C1570.05,-509.27 1665.16,-489.81 1682,-484.75 1683.38,-484.34 1684.77,-483.89 1686.18,-483.43"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1687.26,-486.76 1695.47,-480.06 1684.87,-480.18 1687.26,-486.76"/>
</a>
</g>
</g>
<!-- Node45&#45;&gt;Node9 -->
<g id="edge95_Node000045_Node000009" class="edge">
<title>Node45&#45;&gt;Node9</title>
<g id="a_edge95_Node000045_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1379.3,-534.38C1202.37,-531.45 703.9,-514.62 578,-418.25 557.84,-402.82 534.81,-334.16 523.32,-296.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="526.78,-295.65 520.57,-287.07 520.07,-297.65 526.78,-295.65"/>
</a>
</g>
</g>
<!-- Node45&#45;&gt;Node14 -->
<g id="edge92_Node000045_Node000014" class="edge">
<title>Node45&#45;&gt;Node14</title>
<g id="a_edge92_Node000045_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1500.41,-520.3C1533.13,-511.38 1574.38,-498.98 1610,-484.75 1670.63,-460.52 1690.29,-459.39 1741,-418.25 1842.88,-335.6 1832.35,-280.11 1926,-188.25 1939.06,-175.44 1955.36,-162.84 1968.37,-153.47"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1970.17,-156.48 1976.33,-147.85 1966.14,-150.76 1970.17,-156.48"/>
</a>
</g>
</g>
<!-- Node46&#45;&gt;Node3 -->
<g id="edge97_Node000046_Node000003" class="edge">
<title>Node46&#45;&gt;Node3</title>
<g id="a_edge97_Node000046_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2112.03,-520.32C2093,-501.37 2056.93,-469.08 2019,-454.25 1461.16,-236.18 1249.08,-478.03 682,-285.25 517.86,-229.45 336.17,-125.02 271.49,-86.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="273.47,-83.48 263.1,-81.33 269.87,-89.48 273.47,-83.48"/>
</a>
</g>
</g>
<!-- Node46&#45;&gt;Node4 -->
<g id="edge98_Node000046_Node000004" class="edge">
<title>Node46&#45;&gt;Node4</title>
<g id="a_edge98_Node000046_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2063.18,-522.52C2060.08,-521.92 2057,-521.33 2054,-520.75 1968.31,-504.28 1944.95,-508.53 1861,-484.75 1859.43,-484.3 1857.83,-483.82 1856.22,-483.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1857.71,-480.12 1847.12,-480.11 1855.4,-486.72 1857.71,-480.12"/>
</a>
</g>
</g>
<!-- Node46&#45;&gt;Node5 -->
<g id="edge100_Node000046_Node000005" class="edge">
<title>Node46&#45;&gt;Node5</title>
<g id="a_edge100_Node000046_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2072.15,-520.28C2025.55,-507.55 1959.77,-489.57 1921.33,-479.06"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1922.36,-475.72 1911.79,-476.46 1920.52,-482.47 1922.36,-475.72"/>
</a>
</g>
</g>
<!-- Node46&#45;&gt;Node14 -->
<g id="edge99_Node000046_Node000014" class="edge">
<title>Node46&#45;&gt;Node14</title>
<g id="a_edge99_Node000046_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2125.08,-520.47C2123.64,-496.3 2121,-446.33 2121,-404 2121,-404 2121,-404 2121,-269 2121,-212.04 2058.3,-171.01 2019.99,-151.26"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="2021.77,-148.24 2011.26,-146.93 2018.66,-154.51 2021.77,-148.24"/>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node4 -->
<g id="edge102_Node000047_Node000004" class="edge">
<title>Node47&#45;&gt;Node4</title>
<g id="a_edge102_Node000047_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1778.39,-520.36C1787.24,-510.69 1798.88,-497.96 1808.19,-487.79"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1810.74,-490.18 1814.91,-480.44 1805.58,-485.46 1810.74,-490.18"/>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node5 -->
<g id="edge104_Node000047_Node000005" class="edge">
<title>Node47&#45;&gt;Node5</title>
<g id="a_edge104_Node000047_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1793.36,-520.36C1814.1,-509.67 1842.06,-495.24 1862.57,-484.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1863.91,-487.9 1871.19,-480.2 1860.7,-481.68 1863.91,-487.9"/>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node7 -->
<g id="edge105_Node000047_Node000007" class="edge">
<title>Node47&#45;&gt;Node7</title>
<g id="a_edge105_Node000047_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1754.33,-520.36C1747.43,-510.89 1738.39,-498.48 1731.05,-488.41"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1734.04,-486.57 1725.32,-480.55 1728.38,-490.69 1734.04,-486.57"/>
</a>
</g>
</g>
<!-- Node47&#45;&gt;Node14 -->
<g id="edge103_Node000047_Node000014" class="edge">
<title>Node47&#45;&gt;Node14</title>
<g id="a_edge103_Node000047_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1767.55,-520.54C1770.77,-504.02 1777.12,-476.41 1787,-454.25 1841.78,-331.39 1940.4,-201.59 1976.91,-155.48"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1979.46,-157.91 1982.96,-147.91 1973.98,-153.54 1979.46,-157.91"/>
</a>
</g>
</g>
<!-- Node48&#45;&gt;Node2 -->
<g id="edge108_Node000048_Node000002" class="edge">
<title>Node48&#45;&gt;Node2</title>
<g id="a_edge108_Node000048_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1995.68,-520.56C2003.47,-511 2013.05,-497.84 2019,-484.75 2034.25,-451.18 2038,-440.87 2038,-404 2038,-404 2038,-404 2038,-202.5 2038,-165.63 2039.99,-152.06 2019,-121.75 2008.27,-106.26 1991.07,-94.23 1975.85,-85.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1977.56,-82.78 1967.07,-81.3 1974.35,-89 1977.56,-82.78"/>
</a>
</g>
</g>
<!-- Node48&#45;&gt;Node4 -->
<g id="edge109_Node000048_Node000004" class="edge">
<title>Node48&#45;&gt;Node4</title>
<g id="a_edge109_Node000048_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1946.92,-520.36C1919.82,-509.37 1883.02,-494.44 1856.76,-483.79"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1858.2,-480.59 1847.61,-480.08 1855.56,-487.08 1858.2,-480.59"/>
</a>
</g>
</g>
<!-- Node48&#45;&gt;Node5 -->
<g id="edge110_Node000048_Node000005" class="edge">
<title>Node48&#45;&gt;Node5</title>
<g id="a_edge110_Node000048_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1961.9,-520.36C1947.04,-510.06 1927.19,-496.29 1912.11,-485.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1914.45,-483.2 1904.23,-480.37 1910.46,-488.95 1914.45,-483.2"/>
</a>
</g>
</g>
<!-- Node48&#45;&gt;Node31 -->
<g id="edge111_Node000048_Node000031" class="edge">
<title>Node48&#45;&gt;Node31</title>
<g id="a_edge111_Node000048_Node000031"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1974.83,-520.55C1964.1,-502.75 1943.7,-472.6 1919,-454.25 1789.32,-357.88 1602.19,-304.45 1511.02,-282.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1511.87,-279.31 1501.33,-280.43 1510.27,-286.12 1511.87,-279.31"/>
</a>
</g>
</g>
<!-- Node49 -->
<g id="Node000049" class="node">
<title>Node49</title>
<g id="a_Node000049"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="2009.5,-479.12 1966.5,-479.12 1966.5,-459.88 2009.5,-459.88 2009.5,-479.12"/>
<text xml:space="preserve" text-anchor="middle" x="1988" y="-465.62" font-family="Helvetica,sans-Serif" font-size="10.00">cmath</text>
</a>
</g>
</g>
<!-- Node48&#45;&gt;Node49 -->
<g id="edge107_Node000048_Node000049" class="edge">
<title>Node48&#45;&gt;Node49</title>
<g id="a_edge107_Node000048_Node000049"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1984.13,-520.36C1984.82,-511.58 1985.69,-500.27 1986.44,-490.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1989.92,-491.07 1987.2,-480.83 1982.94,-490.53 1989.92,-491.07"/>
</a>
</g>
</g>
<!-- Node50&#45;&gt;Node2 -->
<g id="edge113_Node000050_Node000002" class="edge">
<title>Node50&#45;&gt;Node2</title>
<g id="a_edge113_Node000050_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2333.72,-321.06C2309.74,-273.58 2234.53,-125.07 2230,-121.75 2191.38,-93.42 2052.54,-79.46 1983.52,-74.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1984.02,-70.68 1973.78,-73.42 1983.5,-77.66 1984.02,-70.68"/>
</a>
</g>
</g>
<!-- Node50&#45;&gt;Node6 -->
<g id="edge115_Node000050_Node000006" class="edge">
<title>Node50&#45;&gt;Node6</title>
<g id="a_edge115_Node000050_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2338.98,-320.99C2335.81,-296.87 2330,-246.95 2330,-204.5 2330,-204.5 2330,-204.5 2330,-136 2330,-98.56 2335.48,-78.33 2306,-55.25 2269.38,-26.59 1568.94,-14.02 1387.58,-11.24"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1387.72,-7.74 1377.67,-11.09 1387.62,-14.74 1387.72,-7.74"/>
</a>
</g>
</g>
<!-- Node50&#45;&gt;Node17 -->
<g id="edge117_Node000050_Node000017" class="edge">
<title>Node50&#45;&gt;Node17</title>
<g id="a_edge117_Node000050_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2281.27,-333.9C2093.86,-328.73 1500.7,-311.32 1010,-285.25 964.34,-282.82 913.09,-279.32 872.89,-276.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="873.33,-272.92 863.1,-275.68 872.82,-279.9 873.33,-272.92"/>
</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="2474,-279.62 2416,-279.62 2416,-260.38 2474,-260.38 2474,-279.62"/>
<text xml:space="preserve" text-anchor="middle" x="2445" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">functional</text>
</a>
</g>
</g>
<!-- Node50&#45;&gt;Node51 -->
<g id="edge114_Node000050_Node000051" class="edge">
<title>Node50&#45;&gt;Node51</title>
<g id="a_edge114_Node000050_Node000051"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2364.6,-320.86C2381.37,-310.46 2403.84,-296.53 2420.76,-286.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="2422.53,-289.05 2429.19,-280.81 2418.84,-283.1 2422.53,-289.05"/>
</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="2397.62,-279.62 2358.38,-279.62 2358.38,-260.38 2397.62,-260.38 2397.62,-279.62"/>
<text xml:space="preserve" text-anchor="middle" x="2378" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">utility</text>
</a>
</g>
</g>
<!-- Node50&#45;&gt;Node52 -->
<g id="edge116_Node000050_Node000052" class="edge">
<title>Node50&#45;&gt;Node52</title>
<g id="a_edge116_Node000050_Node000052"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M2349.4,-320.86C2354.72,-311.58 2361.65,-299.5 2367.36,-289.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="2370.25,-291.55 2372.19,-281.14 2364.17,-288.07 2370.25,-291.55"/>
</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="factor__computations_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>