Files
MeanField_SERiF/docs/html/domain__schema_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

991 lines
52 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/discretization/domain/schema/domain_schema.hpp Pages: 1 -->
<!--zoomable 893 -->
<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 = 1191;
var viewHeight = 893;
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/discretization/domain/schema/domain_schema.hpp</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title="File containing the DomainSchema class. The idea here is to prevent a class of bugs wherein the user ...">
<polygon fill="#999999" stroke="#666666" points="988.71,-884.75 807.71,-884.75 807.71,-854.25 988.71,-854.25 988.71,-884.75"/>
<text xml:space="preserve" text-anchor="start" x="815.71" y="-871.25" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="898.21" y="-860" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/schema/domain_schema.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="1088.34,-19.25 1040.09,-19.25 1040.09,0 1088.34,0 1088.34,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="1064.21" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">cstddef</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="M989.17,-859.21C1072.58,-845.06 1183.21,-809.54 1183.21,-720.62 1183.21,-720.62 1183.21,-720.62 1183.21,-141.62 1183.21,-87.65 1127.19,-46.07 1092.02,-25.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1094.03,-22.4 1083.6,-20.5 1090.56,-28.48 1094.03,-22.4"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><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="333.21,-157.88 221.21,-157.88 221.21,-127.38 333.21,-127.38 333.21,-157.88"/>
<text xml:space="preserve" text-anchor="start" x="229.21" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="277.21" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/concepts.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="M807.42,-867.03C625.84,-861.61 235.21,-836.49 235.21,-720.62 235.21,-720.62 235.21,-720.62 235.21,-280.25 235.21,-239.68 252.34,-195.21 264.72,-168.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="267.71,-170.23 268.86,-159.7 261.39,-167.21 267.71,-170.23"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:href="discretization_2domain_2ids_2lists_2concepts_8hpp.html" target="_top" xlink:title="This file defines concepts for domain ID lists in the discretization framework.">
<polygon fill="white" stroke="#666666" points="917.59,-579.38 768.84,-579.38 768.84,-548.88 917.59,-548.88 917.59,-579.38"/>
<text xml:space="preserve" text-anchor="start" x="776.84" y="-565.88" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="843.21" y="-554.62" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/lists/concepts.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node13 -->
<g id="edge15_Node000001_Node000013" class="edge">
<title>Node1&#45;&gt;Node13</title>
<g id="a_edge15_Node000001_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M888.35,-853.77C882.37,-844.1 875.16,-830.92 871.21,-818.25 846.31,-738.2 842.94,-637.87 842.86,-591.21"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="846.36,-591.32 842.9,-581.3 839.36,-591.29 846.36,-591.32"/>
</a>
</g>
</g>
<!-- Node24 -->
<g id="Node000024" class="node">
<title>Node24</title>
<g id="a_Node000024"><a xlink:href="discretization_2domain_2relation_2lists_2concepts_8hpp.html" target="_top" xlink:title="This file defines concepts for relation lists in the discretization framework.">
<polygon fill="white" stroke="#666666" points="1155.21,-662.75 1049.21,-662.75 1049.21,-621 1155.21,-621 1155.21,-662.75"/>
<text xml:space="preserve" text-anchor="start" x="1057.21" y="-649.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="start" x="1057.21" y="-638" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/relation/lists</text>
<text xml:space="preserve" text-anchor="middle" x="1102.21" y="-626.75" font-family="Helvetica,sans-Serif" font-size="10.00">/concepts.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node24 -->
<g id="edge38_Node000001_Node000024" class="edge">
<title>Node1&#45;&gt;Node24</title>
<g id="a_edge38_Node000001_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M957.11,-853.76C978.68,-846.03 1002,-834.65 1019.21,-818.25 1061.21,-778.24 1084.26,-712.71 1094.85,-674.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1098.22,-675.06 1097.37,-664.5 1091.45,-673.28 1098.22,-675.06"/>
</a>
</g>
</g>
<!-- Node30 -->
<g id="Node000030" class="node">
<title>Node30</title>
<g id="a_Node000030"><a xlink:href="discretization_2domain_2relation_2validation_2concepts_8hpp.html" target="_top" xlink:title="This file defines concepts for relation validation in the discretization framework.">
<polygon fill="white" stroke="#666666" points="1009.84,-818.25 880.59,-818.25 880.59,-776.5 1009.84,-776.5 1009.84,-818.25"/>
<text xml:space="preserve" text-anchor="start" x="888.59" y="-804.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="start" x="888.59" y="-793.5" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/relation/validation</text>
<text xml:space="preserve" text-anchor="middle" x="945.21" y="-782.25" font-family="Helvetica,sans-Serif" font-size="10.00">/concepts.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node30 -->
<g id="edge52_Node000001_Node000030" class="edge">
<title>Node1&#45;&gt;Node30</title>
<g id="a_edge52_Node000001_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M907.95,-853.97C912.97,-846.49 919.28,-837.08 925.27,-828.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="928.07,-830.25 930.73,-819.99 922.25,-826.35 928.07,-830.25"/>
</a>
</g>
</g>
<!-- Node32 -->
<g id="Node000032" class="node">
<title>Node32</title>
<g id="a_Node000032"><a xlink:href="resolver_8hpp.html" target="_top" xlink:title="File containing the DomainIDResolver and BoundaryIDResolver structs. These structs are used to resolv...">
<polygon fill="white" stroke="#666666" points="824.21,-657.12 718.21,-657.12 718.21,-626.62 824.21,-626.62 824.21,-657.12"/>
<text xml:space="preserve" text-anchor="start" x="726.21" y="-643.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="771.21" y="-632.38" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/resolver.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node32 -->
<g id="edge64_Node000001_Node000032" class="edge">
<title>Node1&#45;&gt;Node32</title>
<g id="a_edge64_Node000001_Node000032"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M875.49,-853.78C863.08,-844.78 848.23,-832.3 838.21,-818.25 804.39,-770.8 785.13,-704.09 776.59,-668.16"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="780.07,-667.68 774.44,-658.71 773.25,-669.23 780.07,-667.68"/>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node2 -->
<g id="edge3_Node000003_Node000002" class="edge">
<title>Node3&#45;&gt;Node2</title>
<g id="a_edge3_Node000003_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M333.64,-130.55C384.74,-120.18 461.94,-103.62 528.21,-85.75 571.44,-74.1 580.38,-64.33 624.21,-55.25 772.3,-24.56 952.98,-14.68 1028.43,-11.75"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1028.24,-15.26 1038.11,-11.4 1027.98,-8.27 1028.24,-15.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="362.96,-19.25 297.46,-19.25 297.46,0 362.96,0 362.96,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="330.21" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">string_view</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge4_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge4_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M287.73,-127.1C295.2,-116.18 304.98,-100.62 311.21,-85.75 318.7,-67.92 323.77,-46.42 326.77,-31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="330.21,-31.65 328.55,-21.18 323.33,-30.4 330.21,-31.65"/>
</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="172.71,-80.12 135.71,-80.12 135.71,-60.88 172.71,-60.88 172.71,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="154.21" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">span</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge5_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge5_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M251.43,-126.92C230.46,-114.97 201.01,-98.18 180.03,-86.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="181.94,-83.28 171.52,-81.36 178.47,-89.36 181.94,-83.28"/>
</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="671.09,-80.12 633.34,-80.12 633.34,-60.88 671.09,-60.88 671.09,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="652.21" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">array</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge6_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge6_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M333.56,-133.19C423.54,-119.61 592.33,-93.62 619.21,-85.75 620.38,-85.41 621.56,-85.04 622.75,-84.64"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="623.81,-87.98 631.9,-81.14 621.31,-81.44 623.81,-87.98"/>
</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="234.09,-80.12 190.34,-80.12 190.34,-60.88 234.09,-60.88 234.09,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="212.21" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">format</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge7_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge7_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M263.75,-127.1C253.32,-115.84 238.85,-100.23 227.9,-88.42"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="230.73,-86.32 221.36,-81.37 225.59,-91.08 230.73,-86.32"/>
</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="302.46,-80.12 251.96,-80.12 251.96,-60.88 302.46,-60.88 302.46,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="277.21" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">numeric</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node8 -->
<g id="edge8_Node000003_Node000008" class="edge">
<title>Node3&#45;&gt;Node8</title>
<g id="a_edge8_Node000003_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M277.21,-127.1C277.21,-116.84 277.21,-102.95 277.21,-91.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="280.71,-91.77 277.21,-81.77 273.71,-91.77 280.71,-91.77"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><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="117.34,-85.75 21.09,-85.75 21.09,-55.25 117.34,-55.25 117.34,-85.75"/>
<text xml:space="preserve" text-anchor="start" x="29.09" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="69.21" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/types.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node9 -->
<g id="edge9_Node000003_Node000009" class="edge">
<title>Node3&#45;&gt;Node9</title>
<g id="a_edge9_Node000003_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M233.61,-126.92C201.58,-116.13 157.85,-101.38 123.54,-89.82"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="124.79,-86.54 114.2,-86.66 122.55,-93.18 124.79,-86.54"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:href="cleaning_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="518.84,-85.75 413.59,-85.75 413.59,-55.25 518.84,-55.25 518.84,-85.75"/>
<text xml:space="preserve" text-anchor="start" x="421.59" 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="466.21" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">_helper/cleaning.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node10 -->
<g id="edge11_Node000003_Node000010" class="edge">
<title>Node3&#45;&gt;Node10</title>
<g id="a_edge11_Node000003_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M316.84,-126.92C345.69,-116.22 384.99,-101.64 416.04,-90.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="417.07,-93.47 425.23,-86.71 414.63,-86.9 417.07,-93.47"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:href="variadic__cleaning_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="997.34,-85.75 853.09,-85.75 853.09,-55.25 997.34,-55.25 997.34,-85.75"/>
<text xml:space="preserve" text-anchor="start" x="861.09" 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="925.21" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">_helper/variadic_cleaning.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node12 -->
<g id="edge13_Node000003_Node000012" class="edge">
<title>Node3&#45;&gt;Node12</title>
<g id="a_edge13_Node000003_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M333.4,-133.1C359.2,-129.34 390.23,-125.04 418.21,-121.75 587.58,-101.84 630.6,-103.41 800.21,-85.75 813.67,-84.35 827.93,-82.79 841.82,-81.24"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="841.81,-84.76 851.36,-80.16 841.03,-77.8 841.81,-84.76"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node4 -->
<g id="edge10_Node000009_Node000004" class="edge">
<title>Node9&#45;&gt;Node4</title>
<g id="a_edge10_Node000009_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M117.7,-57.27C120.58,-56.58 123.43,-55.9 126.21,-55.25 181.23,-42.36 244.86,-28.63 286.24,-19.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="286.75,-23.32 295.81,-17.83 285.3,-16.47 286.75,-23.32"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="792.09,-19.25 730.34,-19.25 730.34,0 792.09,0 792.09,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="761.21" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">type_traits</text>
</a>
</g>
</g>
<!-- Node10&#45;&gt;Node11 -->
<g id="edge12_Node000010_Node000011" class="edge">
<title>Node10&#45;&gt;Node11</title>
<g id="a_edge12_Node000010_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M519.3,-58.91C576.36,-47.52 665.94,-29.64 718.59,-19.13"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="719.27,-22.57 728.39,-17.18 717.9,-15.7 719.27,-22.57"/>
</a>
</g>
</g>
<!-- Node12&#45;&gt;Node2 -->
<g id="edge14_Node000012_Node000002" class="edge">
<title>Node12&#45;&gt;Node2</title>
<g id="a_edge14_Node000012_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M959.93,-54.8C982.22,-45.35 1010.94,-33.19 1032.59,-24.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1033.66,-27.37 1041.5,-20.24 1030.93,-20.92 1033.66,-27.37"/>
</a>
</g>
</g>
<!-- Node14 -->
<g id="Node000014" class="node">
<title>Node14</title>
<g id="a_Node000014"><a xlink:href="discretization_2domain_2ids_2lists_2traits_8hpp.html" target="_top" xlink:title="Compile&#45;time traits for domain ID lists, used to extract types and properties from template parameter...">
<polygon fill="white" stroke="#666666" points="904.59,-507.25 773.84,-507.25 773.84,-476.75 904.59,-476.75 904.59,-507.25"/>
<text xml:space="preserve" text-anchor="start" x="781.84" y="-493.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="839.21" y="-482.5" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/lists/traits.hpp</text>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node14 -->
<g id="edge16_Node000013_Node000014" class="edge">
<title>Node13&#45;&gt;Node14</title>
<g id="a_edge16_Node000013_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M842.39,-548.6C841.9,-540.04 841.27,-528.96 840.7,-518.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="844.19,-518.81 840.13,-509.02 837.2,-519.21 844.19,-518.81"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="lists_8hpp.html" target="_top" xlink:title="This file defines the DomainIDList and BoundaryIDList types, specifically these types are used to pro...">
<polygon fill="white" stroke="#666666" points="815.71,-440.75 688.71,-440.75 688.71,-410.25 815.71,-410.25 815.71,-440.75"/>
<text xml:space="preserve" text-anchor="start" x="696.71" y="-427.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="752.21" y="-416" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/lists/lists.hpp</text>
</a>
</g>
</g>
<!-- Node14&#45;&gt;Node15 -->
<g id="edge17_Node000014_Node000015" class="edge">
<title>Node14&#45;&gt;Node15</title>
<g id="a_edge17_Node000014_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M819.47,-476.36C808.13,-467.95 793.67,-457.23 781.07,-447.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="783.21,-445.12 773.09,-441.98 779.04,-450.75 783.21,-445.12"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node2 -->
<g id="edge19_Node000015_Node000002" class="edge">
<title>Node15&#45;&gt;Node2</title>
<g id="a_edge19_Node000015_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M793.38,-409.82C841.17,-390.77 919.28,-353.12 965.21,-296.5 1032.79,-213.2 1055.55,-80.87 1062,-30.75"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1065.44,-31.47 1063.15,-21.12 1058.49,-30.64 1065.44,-31.47"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node6 -->
<g id="edge18_Node000015_Node000006" class="edge">
<title>Node15&#45;&gt;Node6</title>
<g id="a_edge18_Node000015_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M741.05,-409.98C712.13,-372.02 636.19,-269.98 624.21,-230 610.41,-183.91 612.12,-168.32 624.21,-121.75 627.14,-110.5 633.2,-99.08 638.93,-89.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="641.78,-92.02 644.46,-81.77 635.97,-88.11 641.78,-92.02"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node12 -->
<g id="edge37_Node000015_Node000012" class="edge">
<title>Node15&#45;&gt;Node12</title>
<g id="a_edge37_Node000015_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M754.01,-409.81C758.17,-380.39 770.54,-313.05 801.21,-266 839.15,-207.81 888.35,-225.74 919.21,-163.5 929.41,-142.93 930.07,-116.54 928.67,-97.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="932.18,-97.21 927.72,-87.6 925.21,-97.89 932.18,-97.21"/>
</a>
</g>
</g>
<!-- Node16 -->
<g id="Node000016" class="node">
<title>Node16</title>
<g id="a_Node000016"><a xlink:href="discretization_2domain_2ids_2validation_2concepts_8hpp.html" target="_top" xlink:title="This file defines concepts for domain ID lists in the discretization framework. Specifically we defin...">
<polygon fill="white" stroke="#666666" points="665.46,-374.25 554.96,-374.25 554.96,-332.5 665.46,-332.5 665.46,-374.25"/>
<text xml:space="preserve" text-anchor="start" x="562.96" y="-360.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="start" x="562.96" y="-349.5" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/validation</text>
<text xml:space="preserve" text-anchor="middle" x="610.21" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">/concepts.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="M722.45,-409.8C704.78,-401.07 681.89,-389.77 661.4,-379.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="663.13,-376.6 652.61,-375.31 660.03,-382.88 663.13,-376.6"/>
</a>
</g>
</g>
<!-- Node17 -->
<g id="Node000017" class="node">
<title>Node17</title>
<g id="a_Node000017"><a xlink:href="discretization_2domain_2ids_2concepts_8hpp.html" target="_top" xlink:title="This file defines concepts for domain and boundary IDs in the discretization framework....">
<polygon fill="white" stroke="#666666" points="467.09,-296.5 339.34,-296.5 339.34,-266 467.09,-266 467.09,-296.5"/>
<text xml:space="preserve" text-anchor="start" x="347.34" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="403.21" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/concepts.hpp</text>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node17 -->
<g id="edge21_Node000016_Node000017" class="edge">
<title>Node16&#45;&gt;Node17</title>
<g id="a_edge21_Node000016_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M554.47,-333.49C524.29,-323.27 487.17,-310.69 457.25,-300.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="458.61,-297.32 448.02,-297.43 456.37,-303.95 458.61,-297.32"/>
</a>
</g>
</g>
<!-- Node20 -->
<g id="Node000020" class="node">
<title>Node20</title>
<g id="a_Node000020"><a xlink:href="unique__ids_8hpp.html" target="_top" xlink:title="This file defines a utility function to check if a pack of values are all unique. This is used to val...">
<polygon fill="white" stroke="#666666" points="884.46,-163.5 773.96,-163.5 773.96,-121.75 884.46,-121.75 884.46,-163.5"/>
<text xml:space="preserve" text-anchor="start" x="781.96" y="-150" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="start" x="781.96" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/validation</text>
<text xml:space="preserve" text-anchor="middle" x="829.21" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">/unique_ids.hpp</text>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node20 -->
<g id="edge28_Node000016_Node000020" class="edge">
<title>Node16&#45;&gt;Node20</title>
<g id="a_edge28_Node000016_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M650.58,-332.07C689.37,-310.91 747.65,-274.63 786.21,-230 800.36,-213.63 811.18,-191.78 818.43,-174.16"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="821.54,-175.81 821.93,-165.23 815.02,-173.26 821.54,-175.81"/>
</a>
</g>
</g>
<!-- Node22 -->
<g id="Node000022" class="node">
<title>Node22</title>
<g id="a_Node000022"><a xlink:href="concepts_2type__uniqueness_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="632.46,-296.5 509.96,-296.5 509.96,-266 632.46,-266 632.46,-296.5"/>
<text xml:space="preserve" text-anchor="start" x="517.96" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/concepts</text>
<text xml:space="preserve" text-anchor="middle" x="571.21" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">/type_uniqueness.hpp</text>
</a>
</g>
</g>
<!-- Node16&#45;&gt;Node22 -->
<g id="edge33_Node000016_Node000022" class="edge">
<title>Node16&#45;&gt;Node22</title>
<g id="a_edge33_Node000016_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M598.93,-332.09C594.51,-324.13 589.38,-314.92 584.76,-306.6"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="587.91,-305.06 579.99,-298.02 581.79,-308.46 587.91,-305.06"/>
</a>
</g>
</g>
<!-- Node18 -->
<g id="Node000018" class="node">
<title>Node18</title>
<g id="a_Node000018"><a xlink:href="ids_2boundary_8hpp.html" target="_top" xlink:title="This file defines the BoundaryID type, which is used to bind a semantic surface (a Boundary) to the i...">
<polygon fill="white" stroke="#666666" points="207.34,-230 81.09,-230 81.09,-199.5 207.34,-199.5 207.34,-230"/>
<text xml:space="preserve" text-anchor="start" x="89.09" y="-216.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="144.21" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/boundary.hpp</text>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node18 -->
<g id="edge22_Node000017_Node000018" class="edge">
<title>Node17&#45;&gt;Node18</title>
<g id="a_edge22_Node000017_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M344.12,-265.53C305.42,-255.89 254.66,-243.25 213.98,-233.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="215.07,-229.79 204.52,-230.77 213.38,-236.58 215.07,-229.79"/>
</a>
</g>
</g>
<!-- Node19 -->
<g id="Node000019" class="node">
<title>Node19</title>
<g id="a_Node000019"><a xlink:href="domain_8hpp.html" target="_top" xlink:title="This file defines the DomainID type, which is used to bind a semantic volume (a Domain) to the intege...">
<polygon fill="white" stroke="#666666" points="458.96,-230 339.46,-230 339.46,-199.5 458.96,-199.5 458.96,-230"/>
<text xml:space="preserve" text-anchor="start" x="347.46" y="-216.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="399.21" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/ids/domain.hpp</text>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node19 -->
<g id="edge25_Node000017_Node000019" class="edge">
<title>Node17&#45;&gt;Node19</title>
<g id="a_edge25_Node000017_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M402.31,-265.61C401.87,-258.52 401.33,-249.79 400.82,-241.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="404.32,-241.6 400.21,-231.84 397.34,-242.04 404.32,-241.6"/>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node3 -->
<g id="edge24_Node000018_Node000003" class="edge">
<title>Node18&#45;&gt;Node3</title>
<g id="a_edge24_Node000018_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M172.1,-199.05C191.6,-188.76 217.89,-174.9 239.3,-163.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="240.82,-166.77 248.03,-159.01 237.55,-160.58 240.82,-166.77"/>
</a>
</g>
</g>
<!-- Node18&#45;&gt;Node4 -->
<g id="edge23_Node000018_Node000004" class="edge">
<title>Node18&#45;&gt;Node4</title>
<g id="a_edge23_Node000018_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M115.93,-199.15C64.92,-171.01 -33.13,-107.41 12.21,-55.25 47.09,-15.13 206.49,-10.02 285.52,-10.02"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="285.5,-13.52 295.51,-10.06 285.52,-6.52 285.5,-13.52"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node3 -->
<g id="edge27_Node000019_Node000003" class="edge">
<title>Node19&#45;&gt;Node3</title>
<g id="a_edge27_Node000019_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M373.64,-199.05C355.91,-188.86 332.07,-175.15 312.53,-163.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="314.48,-161.01 304.07,-159.06 310.99,-167.08 314.48,-161.01"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node4 -->
<g id="edge26_Node000019_Node000004" class="edge">
<title>Node19&#45;&gt;Node4</title>
<g id="a_edge26_Node000019_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M394.25,-199.14C382.1,-163.36 350.83,-71.31 336.98,-30.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="340.3,-29.44 333.77,-21.1 333.68,-31.7 340.3,-29.44"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node6 -->
<g id="edge29_Node000020_Node000006" class="edge">
<title>Node20&#45;&gt;Node6</title>
<g id="a_edge29_Node000020_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M778.02,-121.34C746.75,-108.95 707.88,-93.55 681.69,-83.18"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="683.29,-80.05 672.7,-79.62 680.71,-86.55 683.29,-80.05"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node11 -->
<g id="edge31_Node000020_Node000011" class="edge">
<title>Node20&#45;&gt;Node11</title>
<g id="a_edge31_Node000020_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M824.85,-121.48C820.37,-103.34 812.34,-76.38 800.21,-55.25 794.55,-45.37 786.49,-35.69 779.17,-27.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="781.67,-25.44 772.16,-20.77 776.68,-30.35 781.67,-25.44"/>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node12 -->
<g id="edge32_Node000020_Node000012" class="edge">
<title>Node20&#45;&gt;Node12</title>
<g id="a_edge32_Node000020_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M856.98,-121.34C869.25,-112.38 883.68,-101.84 896.09,-92.77"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="897.9,-95.79 903.91,-87.06 893.77,-90.13 897.9,-95.79"/>
</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="791.09,-80.12 735.34,-80.12 735.34,-60.88 791.09,-60.88 791.09,-80.12"/>
<text xml:space="preserve" text-anchor="middle" x="763.21" y="-66.62" font-family="Helvetica,sans-Serif" font-size="10.00">concepts</text>
</a>
</g>
</g>
<!-- Node20&#45;&gt;Node21 -->
<g id="edge30_Node000020_Node000021" class="edge">
<title>Node20&#45;&gt;Node21</title>
<g id="a_edge30_Node000020_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M810.12,-121.34C800.33,-110.94 788.54,-98.4 779.22,-88.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="781.94,-86.29 772.54,-81.4 776.84,-91.08 781.94,-86.29"/>
</a>
</g>
</g>
<!-- Node23 -->
<g id="Node000023" class="node">
<title>Node23</title>
<g id="a_Node000023"><a xlink:href="traits_2type__uniqueness_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="538.84,-157.88 427.59,-157.88 427.59,-127.38 538.84,-127.38 538.84,-157.88"/>
<text xml:space="preserve" text-anchor="start" x="435.59" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/traits</text>
<text xml:space="preserve" text-anchor="middle" x="483.21" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">/type_uniqueness.hpp</text>
</a>
</g>
</g>
<!-- Node22&#45;&gt;Node23 -->
<g id="edge34_Node000022_Node000023" class="edge">
<title>Node22&#45;&gt;Node23</title>
<g id="a_edge34_Node000022_Node000023"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M561.8,-265.63C546.71,-242.21 516.98,-196.04 498.72,-167.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="501.74,-165.93 493.38,-159.41 495.86,-169.72 501.74,-165.93"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node6 -->
<g id="edge35_Node000023_Node000006" class="edge">
<title>Node23&#45;&gt;Node6</title>
<g id="a_edge35_Node000023_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M519.37,-126.98C546.81,-115.81 585.46,-99.97 619.21,-85.75 620.34,-85.28 621.48,-84.79 622.63,-84.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="623.84,-87.6 631.65,-80.44 621.08,-81.16 623.84,-87.6"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node10 -->
<g id="edge36_Node000023_Node000010" class="edge">
<title>Node23&#45;&gt;Node10</title>
<g id="a_edge36_Node000023_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M479.69,-127.1C477.6,-118.44 474.87,-107.22 472.43,-97.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="475.85,-96.38 470.09,-87.48 469.04,-98.03 475.85,-96.38"/>
</a>
</g>
</g>
<!-- Node25 -->
<g id="Node000025" class="node">
<title>Node25</title>
<g id="a_Node000025"><a xlink:href="discretization_2domain_2relation_2lists_2traits_8hpp.html" target="_top" xlink:title="Compile&#45;time traits for relation lists, used to extract types and properties from template parameters...">
<polygon fill="white" stroke="#666666" points="1155.21,-585 1049.21,-585 1049.21,-543.25 1155.21,-543.25 1155.21,-585"/>
<text xml:space="preserve" text-anchor="start" x="1057.21" y="-571.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="start" x="1057.21" y="-560.25" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/relation/lists</text>
<text xml:space="preserve" text-anchor="middle" x="1102.21" y="-549" font-family="Helvetica,sans-Serif" font-size="10.00">/traits.hpp</text>
</a>
</g>
</g>
<!-- Node24&#45;&gt;Node25 -->
<g id="edge39_Node000024_Node000025" class="edge">
<title>Node24&#45;&gt;Node25</title>
<g id="a_edge39_Node000024_Node000025"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1102.21,-620.58C1102.21,-613.27 1102.21,-604.85 1102.21,-596.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1105.71,-596.99 1102.21,-586.99 1098.71,-596.99 1105.71,-596.99"/>
</a>
</g>
</g>
<!-- Node26 -->
<g id="Node000026" class="node">
<title>Node26</title>
<g id="a_Node000026"><a xlink:href="relation__list_8hpp.html" target="_top" xlink:title="Compile&#45;time list of relations, used to group relations together for operations and forms.">
<polygon fill="white" stroke="#666666" points="1155.21,-374.25 1049.21,-374.25 1049.21,-332.5 1155.21,-332.5 1155.21,-374.25"/>
<text xml:space="preserve" text-anchor="start" x="1057.21" y="-360.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="start" x="1057.21" y="-349.5" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/relation/lists</text>
<text xml:space="preserve" text-anchor="middle" x="1102.21" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">/relation_list.hpp</text>
</a>
</g>
</g>
<!-- Node25&#45;&gt;Node26 -->
<g id="edge40_Node000025_Node000026" class="edge">
<title>Node25&#45;&gt;Node26</title>
<g id="a_edge40_Node000025_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1102.21,-543.11C1102.21,-506.73 1102.21,-429.52 1102.21,-385.97"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1105.71,-386.15 1102.21,-376.15 1098.71,-386.15 1105.71,-386.15"/>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node2 -->
<g id="edge41_Node000026_Node000002" class="edge">
<title>Node26&#45;&gt;Node2</title>
<g id="a_edge41_Node000026_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1102.21,-332.01C1102.21,-305.31 1102.21,-257.02 1102.21,-215.75 1102.21,-215.75 1102.21,-215.75 1102.21,-141.62 1102.21,-100.53 1084.76,-54.96 1073.51,-29.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1076.75,-28.54 1069.36,-20.95 1070.4,-31.49 1076.75,-28.54"/>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node12 -->
<g id="edge51_Node000026_Node000012" class="edge">
<title>Node26&#45;&gt;Node12</title>
<g id="a_edge51_Node000026_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1091.19,-332.13C1068.75,-291.36 1015.56,-196.86 964.21,-121.75 958.06,-112.74 950.84,-103.2 944.3,-94.88"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="947.22,-92.92 938.25,-87.28 941.74,-97.28 947.22,-92.92"/>
</a>
</g>
</g>
<!-- Node27 -->
<g id="Node000027" class="node">
<title>Node27</title>
<g id="a_Node000027"><a xlink:href="discretization_2domain_2relation_2concepts_8hpp.html" target="_top" xlink:title="This file defines concepts for relations in the domain module.">
<polygon fill="white" stroke="#666666" points="956.46,-296.5 809.96,-296.5 809.96,-266 956.46,-266 956.46,-296.5"/>
<text xml:space="preserve" text-anchor="start" x="817.96" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="883.21" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/relation/concepts.hpp</text>
</a>
</g>
</g>
<!-- Node26&#45;&gt;Node27 -->
<g id="edge42_Node000026_Node000027" class="edge">
<title>Node26&#45;&gt;Node27</title>
<g id="a_edge42_Node000026_Node000027"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1048.92,-335.31C1015.79,-324.7 973.24,-311.08 939.55,-300.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="940.98,-297.07 930.39,-297.36 938.85,-303.74 940.98,-297.07"/>
</a>
</g>
</g>
<!-- Node27&#45;&gt;Node10 -->
<g id="edge50_Node000027_Node000010" class="edge">
<title>Node27&#45;&gt;Node10</title>
<g id="a_edge50_Node000027_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M809.59,-273.04C690.42,-259.62 463.96,-226.33 418.21,-163.5 407.29,-148.5 411.31,-138.97 418.21,-121.75 422.48,-111.11 430.19,-101.45 438.2,-93.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="440.4,-96.23 445.41,-86.9 435.67,-91.07 440.4,-96.23"/>
</a>
</g>
</g>
<!-- Node28 -->
<g id="Node000028" class="node">
<title>Node28</title>
<g id="a_Node000028"><a xlink:href="discretization_2domain_2relation_2relations_8hpp.html" target="_top" xlink:title="This file defines compile time tags for the relations that can be declared about a mesh in the domain...">
<polygon fill="white" stroke="#666666" points="776.96,-230 633.46,-230 633.46,-199.5 776.96,-199.5 776.96,-230"/>
<text xml:space="preserve" text-anchor="start" x="641.46" y="-216.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="middle" x="705.21" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/relation/relations.hpp</text>
</a>
</g>
</g>
<!-- Node27&#45;&gt;Node28 -->
<g id="edge43_Node000027_Node000028" class="edge">
<title>Node27&#45;&gt;Node28</title>
<g id="a_edge43_Node000027_Node000028"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M842.82,-265.61C817.2,-256.33 783.81,-244.23 756.35,-234.28"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="757.77,-231.07 747.18,-230.96 755.39,-237.65 757.77,-231.07"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node3 -->
<g id="edge45_Node000028_Node000003" class="edge">
<title>Node28&#45;&gt;Node3</title>
<g id="a_edge45_Node000028_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M633.09,-201.93C552.6,-188.74 423.36,-167.57 344.77,-154.69"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="345.48,-151.26 335.04,-153.1 344.35,-158.17 345.48,-151.26"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node4 -->
<g id="edge44_Node000028_Node000004" class="edge">
<title>Node28&#45;&gt;Node4</title>
<g id="a_edge44_Node000028_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M677.24,-199.08C660.98,-189.91 640.54,-177.26 624.21,-163.5 575.04,-122.06 583.58,-87.95 528.21,-55.25 480.51,-27.08 416.72,-16.68 374.6,-12.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="375.08,-9.37 364.83,-12.05 374.52,-16.35 375.08,-9.37"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node12 -->
<g id="edge49_Node000028_Node000012" class="edge">
<title>Node28&#45;&gt;Node12</title>
<g id="a_edge49_Node000028_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M777.29,-210.45C816,-205.1 862.03,-192.47 893.21,-163.5 911.65,-146.37 919.47,-118.08 922.78,-97.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="926.22,-98.08 924.06,-87.71 919.28,-97.17 926.22,-98.08"/>
</a>
</g>
</g>
<!-- Node29 -->
<g id="Node000029" class="node">
<title>Node29</title>
<g id="a_Node000029"><a xlink:href="numeric_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="755.46,-157.88 632.96,-157.88 632.96,-127.38 755.46,-127.38 755.46,-157.88"/>
<text xml:space="preserve" text-anchor="start" x="640.96" y="-144.38" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/concepts</text>
<text xml:space="preserve" text-anchor="middle" x="694.21" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">/numeric.hpp</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node29 -->
<g id="edge46_Node000028_Node000029" class="edge">
<title>Node28&#45;&gt;Node29</title>
<g id="a_edge46_Node000028_Node000029"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M702.94,-199.22C701.58,-190.57 699.82,-179.35 698.23,-169.25"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="701.73,-168.97 696.73,-159.63 694.82,-170.05 701.73,-168.97"/>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node11 -->
<g id="edge48_Node000029_Node000011" class="edge">
<title>Node29&#45;&gt;Node11</title>
<g id="a_edge48_Node000029_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M698.13,-126.96C703.19,-109.28 712.94,-78.98 726.21,-55.25 731.55,-45.72 738.83,-36.07 745.37,-28.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="747.92,-30.6 751.81,-20.74 742.62,-26.02 747.92,-30.6"/>
</a>
</g>
</g>
<!-- Node29&#45;&gt;Node21 -->
<g id="edge47_Node000029_Node000021" class="edge">
<title>Node29&#45;&gt;Node21</title>
<g id="a_edge47_Node000029_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M708.51,-127.1C719.58,-115.84 734.94,-100.23 746.57,-88.42"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="749.02,-90.92 753.54,-81.34 744.03,-86.01 749.02,-90.92"/>
</a>
</g>
</g>
<!-- Node31 -->
<g id="Node000031" class="node">
<title>Node31</title>
<g id="a_Node000031"><a xlink:href="discretization_2domain_2relation_2validation_2validation_8hpp.html" target="_top" xlink:title="Compile&#45;time validation of relations in the discretization framework. This file provides utilities to...">
<polygon fill="white" stroke="#666666" points="1009.84,-740.5 880.59,-740.5 880.59,-698.75 1009.84,-698.75 1009.84,-740.5"/>
<text xml:space="preserve" text-anchor="start" x="888.59" y="-727" font-family="Helvetica,sans-Serif" font-size="10.00">serif/discretization</text>
<text xml:space="preserve" text-anchor="start" x="888.59" y="-715.75" font-family="Helvetica,sans-Serif" font-size="10.00">/domain/relation/validation</text>
<text xml:space="preserve" text-anchor="middle" x="945.21" y="-704.5" font-family="Helvetica,sans-Serif" font-size="10.00">/validation.hpp</text>
</a>
</g>
</g>
<!-- Node30&#45;&gt;Node31 -->
<g id="edge53_Node000030_Node000031" class="edge">
<title>Node30&#45;&gt;Node31</title>
<g id="a_edge53_Node000030_Node000031"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M945.21,-776.08C945.21,-768.77 945.21,-760.35 945.21,-752.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="948.71,-752.49 945.21,-742.49 941.71,-752.49 948.71,-752.49"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node3 -->
<g id="edge55_Node000031_Node000003" class="edge">
<title>Node31&#45;&gt;Node3</title>
<g id="a_edge55_Node000031_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M880.35,-716.62C718.76,-709.88 311.21,-681.35 311.21,-565.12 311.21,-565.12 311.21,-565.12 311.21,-280.25 311.21,-240.26 297.32,-195.57 287.3,-168.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="290.69,-167.58 283.84,-159.5 284.15,-170.09 290.69,-167.58"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node11 -->
<g id="edge54_Node000031_Node000011" class="edge">
<title>Node31&#45;&gt;Node11</title>
<g id="a_edge54_Node000031_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M953.46,-698.66C964.64,-669.73 983.21,-614.27 983.21,-565.12 983.21,-565.12 983.21,-565.12 983.21,-491 983.21,-297.06 1130.46,-204.16 1006.21,-55.25 980.86,-24.86 866.44,-15.11 803.33,-12.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="803.84,-8.55 793.69,-11.59 803.52,-15.54 803.84,-8.55"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node13 -->
<g id="edge56_Node000031_Node000013" class="edge">
<title>Node31&#45;&gt;Node13</title>
<g id="a_edge56_Node000031_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M931.88,-698.56C913.15,-670.37 879.12,-619.15 859.1,-589.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="862.18,-587.34 853.73,-580.95 856.35,-591.22 862.18,-587.34"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node24 -->
<g id="edge58_Node000031_Node000024" class="edge">
<title>Node31&#45;&gt;Node24</title>
<g id="a_edge58_Node000031_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M987.29,-698.33C1006.47,-689.07 1029.38,-678.02 1049.68,-668.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1051.18,-671.39 1058.66,-663.89 1048.13,-665.08 1051.18,-671.39"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node26 -->
<g id="edge59_Node000031_Node000026" class="edge">
<title>Node31&#45;&gt;Node26</title>
<g id="a_edge59_Node000031_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M968.84,-698.39C978.94,-688.58 990.03,-676.04 997.21,-662.75 1018.45,-623.44 1021.21,-609.81 1021.21,-565.12 1021.21,-565.12 1021.21,-565.12 1021.21,-491 1021.21,-448.88 1050.05,-408.39 1073.31,-382.57"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1075.64,-385.21 1079.9,-375.51 1070.52,-380.43 1075.64,-385.21"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node27 -->
<g id="edge57_Node000031_Node000027" class="edge">
<title>Node31&#45;&gt;Node27</title>
<g id="a_edge57_Node000031_Node000027"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M945.21,-698.26C945.21,-668.87 945.21,-612.83 945.21,-565.12 945.21,-565.12 945.21,-565.12 945.21,-424.5 945.21,-379.83 919.2,-333.35 900.88,-306.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="903.75,-304.15 895.16,-297.94 898.01,-308.15 903.75,-304.15"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node32 -->
<g id="edge60_Node000031_Node000032" class="edge">
<title>Node31&#45;&gt;Node32</title>
<g id="a_edge60_Node000031_Node000032"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M898.59,-698.33C872.78,-687.09 840.88,-673.2 815.46,-662.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="816.95,-658.97 806.39,-658.19 814.16,-665.39 816.95,-658.97"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node3 -->
<g id="edge61_Node000032_Node000003" class="edge">
<title>Node32&#45;&gt;Node3</title>
<g id="a_edge61_Node000032_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M717.92,-641.7C589.45,-640.64 273.21,-618.52 273.21,-426.5 273.21,-426.5 273.21,-426.5 273.21,-280.25 273.21,-241.56 274.84,-196.74 276.02,-169.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="279.5,-169.64 276.45,-159.49 272.51,-169.33 279.5,-169.64"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node13 -->
<g id="edge62_Node000032_Node000013" class="edge">
<title>Node32&#45;&gt;Node13</title>
<g id="a_edge62_Node000032_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M785.1,-626.27C795.46,-615.37 809.8,-600.28 821.65,-587.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="823.98,-590.44 828.33,-580.78 818.91,-585.62 823.98,-590.44"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node15 -->
<g id="edge63_Node000032_Node000015" class="edge">
<title>Node32&#45;&gt;Node15</title>
<g id="a_edge63_Node000032_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M767.74,-626.26C765.22,-615.04 761.95,-599.13 760.21,-585 754.48,-538.41 752.84,-483.62 752.38,-452.19"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="755.88,-452.46 752.27,-442.5 748.88,-452.54 755.88,-452.46"/>
</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="domain__schema_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>