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

365 lines
17 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 14.1.2 (20260124.0452)
-->
<!-- Title: src/include/serif/backend/mfem/solver/preconditioner/coupling.hpp Pages: 1 -->
<!--zoomable 371 -->
<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 = 705;
var viewHeight = 371;
var sectionId = 'dynsection-0';
</script>
<script type="application/ecmascript" xlink:href="svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>src/include/serif/backend/mfem/solver/preconditioner/coupling.hpp</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="270,-363 133.25,-363 133.25,-321.25 270,-321.25 270,-363"/>
<text xml:space="preserve" text-anchor="start" x="141.25" y="-349.5" font-family="Helvetica,sans-Serif" font-size="10.00">src/include/serif/backend</text>
<text xml:space="preserve" text-anchor="start" x="141.25" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">/mfem/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="201.62" y="-327" font-family="Helvetica,sans-Serif" font-size="10.00">/coupling.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="129.5,-274 73.75,-274 73.75,-254.75 129.5,-254.75 129.5,-274"/>
<text xml:space="preserve" text-anchor="middle" x="101.62" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">expected</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="M174.83,-320.83C158.5,-308.46 137.94,-292.88 122.76,-281.39"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="124.96,-278.66 114.88,-275.41 120.73,-284.24 124.96,-278.66"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:href="inverse_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="256.12,-285.25 147.12,-285.25 147.12,-243.5 256.12,-243.5 256.12,-285.25"/>
<text xml:space="preserve" text-anchor="start" x="155.12" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/backend/mfem</text>
<text xml:space="preserve" text-anchor="start" x="155.12" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="201.62" y="-249.25" font-family="Helvetica,sans-Serif" font-size="10.00">/inverse.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="M201.62,-320.83C201.62,-313.52 201.62,-305.1 201.62,-297.06"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="205.13,-297.24 201.63,-287.24 198.13,-297.24 205.13,-297.24"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="solver_2preconditioner_2strategies_2coupling_2order_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="417.38,-279.62 273.88,-279.62 273.88,-249.12 417.38,-249.12 417.38,-279.62"/>
<text xml:space="preserve" text-anchor="start" x="281.88" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="345.62" y="-254.88" font-family="Helvetica,sans-Serif" font-size="10.00">/strategies/coupling/order.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node15 -->
<g id="edge14_Node000001_Node000015" class="edge">
<title>Node1&#45;&gt;Node15</title>
<g id="a_edge14_Node000001_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M240.21,-320.83C261.17,-309.8 286.97,-296.23 307.8,-285.27"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="309.33,-288.42 316.55,-280.67 306.07,-282.23 309.33,-288.42"/>
</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="51.25,-201.88 0,-201.88 0,-182.62 51.25,-182.62 51.25,-201.88"/>
<text xml:space="preserve" text-anchor="middle" x="25.62" y="-188.38" font-family="Helvetica,sans-Serif" font-size="10.00">memory</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node4 -->
<g id="edge3_Node000003_Node000004" class="edge">
<title>Node3&#45;&gt;Node4</title>
<g id="a_edge3_Node000003_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M150.01,-243.06C123.31,-232.51 90.19,-219.38 60.62,-207.5 59.85,-207.19 59.06,-206.87 58.27,-206.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="59.82,-203.4 49.23,-202.9 57.19,-209.89 59.82,-203.4"/>
</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="191.88,-201.88 69.38,-201.88 69.38,-182.62 191.88,-182.62 191.88,-201.88"/>
<text xml:space="preserve" text-anchor="middle" x="130.62" y="-188.38" font-family="Helvetica,sans-Serif" font-size="10.00">mfem/linalg/operator.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node5 -->
<g id="edge4_Node000003_Node000005" class="edge">
<title>Node3&#45;&gt;Node5</title>
<g id="a_edge4_Node000003_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M181.09,-243.09C170.45,-232.58 157.61,-219.9 147.54,-209.96"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="150.19,-207.65 140.61,-203.12 145.27,-212.63 150.19,-207.65"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:href="contract_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="337.5,-207.5 209.75,-207.5 209.75,-177 337.5,-177 337.5,-207.5"/>
<text xml:space="preserve" text-anchor="start" x="217.75" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="273.62" y="-182.75" font-family="Helvetica,sans-Serif" font-size="10.00">/contract.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node6 -->
<g id="edge5_Node000003_Node000006" class="edge">
<title>Node3&#45;&gt;Node6</title>
<g id="a_edge5_Node000003_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M222.45,-243.09C231.26,-234.51 241.56,-224.48 250.6,-215.68"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="252.98,-218.24 257.7,-208.76 248.1,-213.23 252.98,-218.24"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:href="solver_2preconditioner_2failure_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="483.5,-207.5 355.75,-207.5 355.75,-177 483.5,-177 483.5,-207.5"/>
<text xml:space="preserve" text-anchor="start" x="363.75" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="419.62" y="-182.75" font-family="Helvetica,sans-Serif" font-size="10.00">/failure.hpp</text>
</a>
</g>
</g>
<!-- Node3&#45;&gt;Node7 -->
<g id="edge6_Node000003_Node000007" class="edge">
<title>Node3&#45;&gt;Node7</title>
<g id="a_edge6_Node000003_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M256.35,-245.77C288.99,-235.27 330.34,-221.97 363.26,-211.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="364.19,-214.76 372.63,-208.37 362.04,-208.1 364.19,-214.76"/>
</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="388.62,-141 348.62,-141 348.62,-121.75 388.62,-121.75 388.62,-141"/>
<text xml:space="preserve" text-anchor="middle" x="368.62" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node8 -->
<g id="edge7_Node000007_Node000008" class="edge">
<title>Node7&#45;&gt;Node8</title>
<g id="a_edge7_Node000007_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M407.02,-176.7C400,-168.59 391.21,-158.45 383.82,-149.91"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="386.67,-147.86 377.48,-142.6 381.38,-152.45 386.67,-147.86"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="codes_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="532.75,-141 406.5,-141 406.5,-121.75 532.75,-121.75 532.75,-141"/>
<text xml:space="preserve" text-anchor="middle" x="469.62" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/error/codes.hpp</text>
</a>
</g>
</g>
<!-- Node7&#45;&gt;Node9 -->
<g id="edge8_Node000007_Node000009" class="edge">
<title>Node7&#45;&gt;Node9</title>
<g id="a_edge8_Node000007_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M431.98,-176.7C438.79,-168.68 447.3,-158.67 454.5,-150.19"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="457.13,-152.49 460.94,-142.6 451.8,-147.96 457.13,-152.49"/>
</a>
</g>
</g>
<!-- Node10 -->
<g id="Node000010" class="node">
<title>Node10</title>
<g id="a_Node000010"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="444.25,-85.75 399,-85.75 399,-66.5 444.25,-66.5 444.25,-85.75"/>
<text xml:space="preserve" text-anchor="middle" x="421.62" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">cstdint</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node10 -->
<g id="edge9_Node000009_Node000010" class="edge">
<title>Node9&#45;&gt;Node10</title>
<g id="a_edge9_Node000009_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M461.7,-121.58C455.07,-114.23 445.41,-103.51 437.24,-94.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="440.03,-92.32 430.74,-87.23 434.83,-97 440.03,-92.32"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="enums_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="572.88,-85.75 462.38,-85.75 462.38,-66.5 572.88,-66.5 572.88,-85.75"/>
<text xml:space="preserve" text-anchor="middle" x="517.62" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/meta/enums.hpp</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node11 -->
<g id="edge10_Node000009_Node000011" class="edge">
<title>Node9&#45;&gt;Node11</title>
<g id="a_edge10_Node000009_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M477.55,-121.58C484.18,-114.23 493.84,-103.51 502.01,-94.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="504.42,-97 508.51,-87.23 499.22,-92.32 504.42,-97"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="469,-24.88 386.25,-24.88 386.25,-5.63 469,-5.63 469,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="427.62" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">unordered_map</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="M503.96,-66.18C489.82,-56.93 467.48,-42.32 450.62,-31.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="452.97,-28.65 442.69,-26.1 449.14,-34.51 452.97,-28.65"/>
</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="548.5,-24.88 486.75,-24.88 486.75,-5.63 548.5,-5.63 548.5,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="517.62" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">type_traits</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node13 -->
<g id="edge12_Node000011_Node000013" class="edge">
<title>Node11&#45;&gt;Node13</title>
<g id="a_edge12_Node000011_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M517.62,-66.18C517.62,-58.4 517.62,-46.83 517.62,-36.78"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="521.13,-36.79 517.63,-26.79 514.13,-36.79 521.13,-36.79"/>
</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="696.62,-30.5 566.62,-30.5 566.62,0 696.62,0 696.62,-30.5"/>
<text xml:space="preserve" text-anchor="start" x="574.62" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">magic_enum/magic_enum</text>
<text xml:space="preserve" text-anchor="middle" x="631.62" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">_all.hpp</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node14 -->
<g id="edge13_Node000011_Node000014" class="edge">
<title>Node11&#45;&gt;Node14</title>
<g id="a_edge13_Node000011_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M534.94,-66.18C550.43,-58.18 573.68,-46.18 593.49,-35.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="594.86,-39.18 602.14,-31.48 591.65,-32.96 594.86,-39.18"/>
</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="coupling_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>