296 lines
47 KiB
HTML
296 lines
47 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>GridFire: src/include/gridfire/engine/engine_abstract.h Source File</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<script type="text/javascript" src="clipboard.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="cookie.js"></script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr id="projectrow">
|
|
<td id="projectalign">
|
|
<div id="projectname">GridFire<span id="projectnumber"> 0.0.1a</span>
|
|
</div>
|
|
<div id="projectbrief">General Purpose Nuclear Network</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.13.2 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() { codefold.init(0); });
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search',true);
|
|
$(function() { init_search(); });
|
|
});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function(){initNavTree('engine__abstract_8h_source.html',''); initResizable(true); });
|
|
/* @license-end */
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<div id="MSearchResults">
|
|
<div class="SRPage">
|
|
<div id="SRIndex">
|
|
<div id="SRResults"></div>
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle"><div class="title">engine_abstract.h</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a href="engine__abstract_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#pragma once</span></div>
|
|
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
|
|
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include "<a class="code" href="reaction_8h.html">gridfire/reaction/reaction.h</a>"</span></div>
|
|
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include "<a class="code" href="network_8h.html">gridfire/network.h</a>"</span></div>
|
|
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include "<a class="code" href="screening__abstract_8h.html">gridfire/screening/screening_abstract.h</a>"</span></div>
|
|
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include "<a class="code" href="screening__types_8h.html">gridfire/screening/screening_types.h</a>"</span></div>
|
|
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
|
|
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include "<a class="code" href="reporting_8h.html">gridfire/engine/types/reporting.h</a>"</span></div>
|
|
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include "<a class="code" href="building_8h.html">gridfire/engine/types/building.h</a>"</span></div>
|
|
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
|
|
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include "<a class="code" href="expected__engine_8h.html">gridfire/expectations/expected_engine.h</a>"</span></div>
|
|
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
|
|
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include <vector></span></div>
|
|
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include <unordered_map></span></div>
|
|
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include <utility></span></div>
|
|
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include <expected></span></div>
|
|
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span></div>
|
|
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
|
|
<div class="foldopen" id="foldopen00031" data-start="{" data-end="}">
|
|
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="namespacegridfire.html"> 31</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespacegridfire.html">gridfire</a> {</div>
|
|
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span></div>
|
|
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">template</span><<span class="keyword">typename</span> T></div>
|
|
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="conceptgridfire_1_1_is_arithmetic_or_a_d.html"> 40</a></span> <span class="keyword">concept </span><a class="code hl_concept" href="conceptgridfire_1_1_is_arithmetic_or_a_d.html">IsArithmeticOrAD</a> = std::is_same_v<T, double> || std::is_same_v<T, CppAD::AD<double>>;</div>
|
|
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span></div>
|
|
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keyword">template</span> <IsArithmeticOrAD T></div>
|
|
<div class="foldopen" id="foldopen00060" data-start="{" data-end="};">
|
|
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="structgridfire_1_1_step_derivatives.html"> 60</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structgridfire_1_1_step_derivatives.html">StepDerivatives</a> {</div>
|
|
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="structgridfire_1_1_step_derivatives.html#ae0de268b86c2404379409c4feae0b34d"> 61</a></span> std::vector<T> <a class="code hl_variable" href="structgridfire_1_1_step_derivatives.html#ae0de268b86c2404379409c4feae0b34d">dydt</a>; </div>
|
|
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="structgridfire_1_1_step_derivatives.html#ab4aeb41be952c7b5844e1ee81fef9008"> 62</a></span> T <a class="code hl_variable" href="structgridfire_1_1_step_derivatives.html#ab4aeb41be952c7b5844e1ee81fef9008">nuclearEnergyGenerationRate</a> = T(0.0); </div>
|
|
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> };</div>
|
|
</div>
|
|
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
|
|
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"><a class="line" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178"> 65</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">SparsityPattern</a> = std::vector<std::pair<size_t, size_t>>;</div>
|
|
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span></div>
|
|
<div class="foldopen" id="foldopen00084" data-start="{" data-end="};">
|
|
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"><a class="line" href="classgridfire_1_1_engine.html"> 84</a></span> <span class="keyword">class </span><a class="code hl_class" href="classgridfire_1_1_engine.html">Engine</a> {</div>
|
|
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keyword">public</span>:</div>
|
|
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"><a class="line" href="classgridfire_1_1_engine.html#a2e7970bed2100699f226f4141d5db037"> 89</a></span> <span class="keyword">virtual</span> <a class="code hl_function" href="classgridfire_1_1_engine.html#a2e7970bed2100699f226f4141d5db037">~Engine</a>() = <span class="keywordflow">default</span>;</div>
|
|
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span></div>
|
|
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="classgridfire_1_1_engine.html#a020e1b493d6964cafdad08fde697ceb3"> 95</a></span> [[nodiscard]] <span class="keyword">virtual</span> <span class="keyword">const</span> std::vector<fourdst::atomic::Species>& <a class="code hl_function" href="classgridfire_1_1_engine.html#a020e1b493d6964cafdad08fde697ceb3">getNetworkSpecies</a>() <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span></div>
|
|
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"><a class="line" href="classgridfire_1_1_engine.html#a89f714d19b84a93a004a7afbb487a6cb"> 109</a></span> [[nodiscard]] <span class="keyword">virtual</span> std::expected<StepDerivatives<double>, <a class="code hl_struct" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a>> <a class="code hl_function" href="classgridfire_1_1_engine.html#a89f714d19b84a93a004a7afbb487a6cb">calculateRHSAndEnergy</a>(</div>
|
|
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <span class="keyword">const</span> std::vector<double>& Y,</div>
|
|
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">double</span> T9,</div>
|
|
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">double</span> rho</div>
|
|
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> ) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> };</div>
|
|
</div>
|
|
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span></div>
|
|
<div class="foldopen" id="foldopen00130" data-start="{" data-end="};">
|
|
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html"> 130</a></span> <span class="keyword">class </span><a class="code hl_class" href="classgridfire_1_1_dynamic_engine.html">DynamicEngine</a> : <span class="keyword">public</span> <a class="code hl_class" href="classgridfire_1_1_engine.html">Engine</a> {</div>
|
|
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <span class="keyword">public</span>:</div>
|
|
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a29bdd4231c29c3a4e524ad6ca66a127d"> 142</a></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a29bdd4231c29c3a4e524ad6ca66a127d">generateJacobianMatrix</a>(</div>
|
|
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="keyword">const</span> std::vector<double>& Y_dynamic,</div>
|
|
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="keywordtype">double</span> T9,</div>
|
|
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordtype">double</span> rho</div>
|
|
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> ) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
|
|
<div class="foldopen" id="foldopen00148" data-start="{" data-end="}">
|
|
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a818d942efa843959393e4eed3263b7e7"> 148</a></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a818d942efa843959393e4eed3263b7e7">generateJacobianMatrix</a>(</div>
|
|
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keyword">const</span> std::vector<double>& Y_dynamic,</div>
|
|
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <span class="keywordtype">double</span> T9,</div>
|
|
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> <span class="keywordtype">double</span> rho,</div>
|
|
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">SparsityPattern</a>& sparsityPattern</div>
|
|
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> )<span class="keyword"> const </span>{</div>
|
|
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">"Sparsity pattern not supported by this engine."</span>);</div>
|
|
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> }</div>
|
|
</div>
|
|
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span></div>
|
|
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a05d15ff35a6bc06a2fa7eda19838bd07"> 166</a></span> [[nodiscard]] <span class="keyword">virtual</span> <span class="keywordtype">double</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a05d15ff35a6bc06a2fa7eda19838bd07">getJacobianMatrixEntry</a>(</div>
|
|
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <span class="keywordtype">int</span> i,</div>
|
|
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <span class="keywordtype">int</span> j</div>
|
|
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> ) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> </div>
|
|
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span></div>
|
|
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#aeae6d84ef74d88fd2cdf07b82e98a16f"> 178</a></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#aeae6d84ef74d88fd2cdf07b82e98a16f">generateStoichiometryMatrix</a>() = 0;</div>
|
|
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span></div>
|
|
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#afa108dd5227dbb1045e90d7b3bd8b84f"> 189</a></span> [[nodiscard]] <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#afa108dd5227dbb1045e90d7b3bd8b84f">getStoichiometryMatrixEntry</a>(</div>
|
|
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordtype">int</span> speciesIndex,</div>
|
|
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="keywordtype">int</span> reactionIndex</div>
|
|
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> ) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span></div>
|
|
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a6633b1757c41dd9e1c397333f4f9e785"> 206</a></span> [[nodiscard]] <span class="keyword">virtual</span> <span class="keywordtype">double</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a6633b1757c41dd9e1c397333f4f9e785">calculateMolarReactionFlow</a>(</div>
|
|
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <span class="keyword">const</span> <a class="code hl_class" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a>& <a class="code hl_namespace" href="namespacegridfire_1_1reaction.html">reaction</a>,</div>
|
|
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <span class="keyword">const</span> std::vector<double>& Y,</div>
|
|
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> <span class="keywordtype">double</span> T9,</div>
|
|
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <span class="keywordtype">double</span> rho</div>
|
|
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> ) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span></div>
|
|
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#ad2a82099edbb374bbb2c9509ccdb1037"> 218</a></span> [[nodiscard]] <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespacegridfire_1_1reaction.html#aa86f08712565f278adacc7cd2361eb31">reaction::LogicalReactionSet</a>& <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#ad2a82099edbb374bbb2c9509ccdb1037">getNetworkReactions</a>() <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> </div>
|
|
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#afb2ec904d88fc8aab516db4059d0e00f"> 220</a></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#afb2ec904d88fc8aab516db4059d0e00f">setNetworkReactions</a>(<span class="keyword">const</span> <a class="code hl_typedef" href="namespacegridfire_1_1reaction.html#aa86f08712565f278adacc7cd2361eb31">reaction::LogicalReactionSet</a>& reactions) = 0;</div>
|
|
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span></div>
|
|
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a6772ac384b4c3d3e91712041e4aaa813"> 233</a></span> [[nodiscard]] <span class="keyword">virtual</span> std::expected<std::unordered_map<fourdst::atomic::Species, double>, <a class="code hl_struct" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a>> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a6772ac384b4c3d3e91712041e4aaa813">getSpeciesTimescales</a>(</div>
|
|
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="keyword">const</span> std::vector<double>& Y,</div>
|
|
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> <span class="keywordtype">double</span> T9,</div>
|
|
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> <span class="keywordtype">double</span> rho</div>
|
|
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> ) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> </div>
|
|
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a6ca0f315f75252ca505507a61556dda6"> 239</a></span> [[nodiscard]] <span class="keyword">virtual</span> std::expected<std::unordered_map<fourdst::atomic::Species, double>, <a class="code hl_struct" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a>> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a6ca0f315f75252ca505507a61556dda6">getSpeciesDestructionTimescales</a>(</div>
|
|
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <span class="keyword">const</span> std::vector<double>& Y,</div>
|
|
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <span class="keywordtype">double</span> T9,</div>
|
|
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keywordtype">double</span> rho</div>
|
|
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> ) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span></div>
|
|
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#aa799ff785e7e79bf35b11efd55f6282a"> 265</a></span> <span class="keyword">virtual</span> fourdst::composition::Composition <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#aa799ff785e7e79bf35b11efd55f6282a">update</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) = 0;</div>
|
|
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> </div>
|
|
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a942e65ced17ca602482cc42e469d6398"> 267</a></span> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a942e65ced17ca602482cc42e469d6398">isStale</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structgridfire_1_1_net_in.html">NetIn</a>& netIn) = 0;</div>
|
|
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span></div>
|
|
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a3fb44b6f55563a2f590f31916528f2bd"> 285</a></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a3fb44b6f55563a2f590f31916528f2bd">setScreeningModel</a>(<a class="code hl_enumeration" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> model) = 0;</div>
|
|
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span></div>
|
|
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a7a203f8e0f3a6744ddc912dfbcfdbcc0"> 297</a></span> [[nodiscard]] <span class="keyword">virtual</span> <a class="code hl_enumeration" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a7a203f8e0f3a6744ddc912dfbcfdbcc0">getScreeningModel</a>() <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> </div>
|
|
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#ad3d56a8b9161b9cc7f4da51f6bf7e8c9"> 299</a></span> [[nodiscard]] <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#ad3d56a8b9161b9cc7f4da51f6bf7e8c9">getSpeciesIndex</a>(<span class="keyword">const</span> fourdst::atomic::Species &species) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> </div>
|
|
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a55f1b7e5ebe2840e1d7c54665ca5411a"> 301</a></span> [[nodiscard]] <span class="keyword">virtual</span> std::vector<double> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a55f1b7e5ebe2840e1d7c54665ca5411a">mapNetInToMolarAbundanceVector</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) <span class="keyword">const</span> = 0;</div>
|
|
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> </div>
|
|
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a21c34f59c080a853fafa38a25175124e"> 303</a></span> [[nodiscard]] <span class="keyword">virtual</span> <a class="code hl_struct" href="structgridfire_1_1_priming_report.html">PrimingReport</a> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a21c34f59c080a853fafa38a25175124e">primeEngine</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) = 0;</div>
|
|
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> </div>
|
|
<div class="foldopen" id="foldopen00305" data-start="{" data-end="}">
|
|
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a04317b66ef14d519264bc30ee69f5bf9"> 305</a></span> [[nodiscard]] <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a04317b66ef14d519264bc30ee69f5bf9">getDepth</a>()<span class="keyword"> const </span>{</div>
|
|
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">"Network depth not supported by this engine."</span>);</div>
|
|
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> }</div>
|
|
</div>
|
|
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> </div>
|
|
<div class="foldopen" id="foldopen00309" data-start="{" data-end="}">
|
|
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"><a class="line" href="classgridfire_1_1_dynamic_engine.html#a4e2c8b896661b7a89beffe0066cb21cf"> 309</a></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classgridfire_1_1_dynamic_engine.html#a4e2c8b896661b7a89beffe0066cb21cf">rebuild</a>(<span class="keyword">const</span> fourdst::composition::Composition& comp, <a class="code hl_typedef" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> depth) {</div>
|
|
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">"Setting network depth not supported by this engine."</span>);</div>
|
|
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"> 311</span> }</div>
|
|
</div>
|
|
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> </div>
|
|
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> };</div>
|
|
</div>
|
|
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span>}</div>
|
|
</div>
|
|
<div class="ttc" id="abuilding_8h_html"><div class="ttname"><a href="building_8h.html">building.h</a></div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html">gridfire::DynamicEngine</a></div><div class="ttdoc">Abstract class for engines supporting Jacobian and stoichiometry operations.</div><div class="ttdef"><b>Definition</b> <a href="#l00130">engine_abstract.h:130</a></div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a04317b66ef14d519264bc30ee69f5bf9"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a04317b66ef14d519264bc30ee69f5bf9">gridfire::DynamicEngine::getDepth</a></div><div class="ttdeci">virtual BuildDepthType getDepth() const</div><div class="ttdef"><b>Definition</b> <a href="#l00305">engine_abstract.h:305</a></div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a05d15ff35a6bc06a2fa7eda19838bd07"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a05d15ff35a6bc06a2fa7eda19838bd07">gridfire::DynamicEngine::getJacobianMatrixEntry</a></div><div class="ttdeci">virtual double getJacobianMatrixEntry(int i, int j) const =0</div><div class="ttdoc">Get an entry from the previously generated Jacobian matrix.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a21c34f59c080a853fafa38a25175124e"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a21c34f59c080a853fafa38a25175124e">gridfire::DynamicEngine::primeEngine</a></div><div class="ttdeci">virtual PrimingReport primeEngine(const NetIn &netIn)=0</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a29bdd4231c29c3a4e524ad6ca66a127d"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a29bdd4231c29c3a4e524ad6ca66a127d">gridfire::DynamicEngine::generateJacobianMatrix</a></div><div class="ttdeci">virtual void generateJacobianMatrix(const std::vector< double > &Y_dynamic, double T9, double rho) const =0</div><div class="ttdoc">Generate the Jacobian matrix for the current state.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a3fb44b6f55563a2f590f31916528f2bd"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a3fb44b6f55563a2f590f31916528f2bd">gridfire::DynamicEngine::setScreeningModel</a></div><div class="ttdeci">virtual void setScreeningModel(screening::ScreeningType model)=0</div><div class="ttdoc">Set the electron screening model.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a4e2c8b896661b7a89beffe0066cb21cf"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a4e2c8b896661b7a89beffe0066cb21cf">gridfire::DynamicEngine::rebuild</a></div><div class="ttdeci">virtual void rebuild(const fourdst::composition::Composition &comp, BuildDepthType depth)</div><div class="ttdef"><b>Definition</b> <a href="#l00309">engine_abstract.h:309</a></div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a55f1b7e5ebe2840e1d7c54665ca5411a"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a55f1b7e5ebe2840e1d7c54665ca5411a">gridfire::DynamicEngine::mapNetInToMolarAbundanceVector</a></div><div class="ttdeci">virtual std::vector< double > mapNetInToMolarAbundanceVector(const NetIn &netIn) const =0</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a6633b1757c41dd9e1c397333f4f9e785"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a6633b1757c41dd9e1c397333f4f9e785">gridfire::DynamicEngine::calculateMolarReactionFlow</a></div><div class="ttdeci">virtual double calculateMolarReactionFlow(const reaction::Reaction &reaction, const std::vector< double > &Y, double T9, double rho) const =0</div><div class="ttdoc">Calculate the molar reaction flow for a given reaction.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a6772ac384b4c3d3e91712041e4aaa813"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a6772ac384b4c3d3e91712041e4aaa813">gridfire::DynamicEngine::getSpeciesTimescales</a></div><div class="ttdeci">virtual std::expected< std::unordered_map< fourdst::atomic::Species, double >, expectations::StaleEngineError > getSpeciesTimescales(const std::vector< double > &Y, double T9, double rho) const =0</div><div class="ttdoc">Compute timescales for all species in the network.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a6ca0f315f75252ca505507a61556dda6"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a6ca0f315f75252ca505507a61556dda6">gridfire::DynamicEngine::getSpeciesDestructionTimescales</a></div><div class="ttdeci">virtual std::expected< std::unordered_map< fourdst::atomic::Species, double >, expectations::StaleEngineError > getSpeciesDestructionTimescales(const std::vector< double > &Y, double T9, double rho) const =0</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a7a203f8e0f3a6744ddc912dfbcfdbcc0"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a7a203f8e0f3a6744ddc912dfbcfdbcc0">gridfire::DynamicEngine::getScreeningModel</a></div><div class="ttdeci">virtual screening::ScreeningType getScreeningModel() const =0</div><div class="ttdoc">Get the current electron screening model.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a818d942efa843959393e4eed3263b7e7"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a818d942efa843959393e4eed3263b7e7">gridfire::DynamicEngine::generateJacobianMatrix</a></div><div class="ttdeci">virtual void generateJacobianMatrix(const std::vector< double > &Y_dynamic, double T9, double rho, const SparsityPattern &sparsityPattern) const</div><div class="ttdef"><b>Definition</b> <a href="#l00148">engine_abstract.h:148</a></div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_a942e65ced17ca602482cc42e469d6398"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#a942e65ced17ca602482cc42e469d6398">gridfire::DynamicEngine::isStale</a></div><div class="ttdeci">virtual bool isStale(const NetIn &netIn)=0</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_aa799ff785e7e79bf35b11efd55f6282a"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#aa799ff785e7e79bf35b11efd55f6282a">gridfire::DynamicEngine::update</a></div><div class="ttdeci">virtual fourdst::composition::Composition update(const NetIn &netIn)=0</div><div class="ttdoc">Update the internal state of the engine.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_ad2a82099edbb374bbb2c9509ccdb1037"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#ad2a82099edbb374bbb2c9509ccdb1037">gridfire::DynamicEngine::getNetworkReactions</a></div><div class="ttdeci">virtual const reaction::LogicalReactionSet & getNetworkReactions() const =0</div><div class="ttdoc">Get the set of logical reactions in the network.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_ad3d56a8b9161b9cc7f4da51f6bf7e8c9"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#ad3d56a8b9161b9cc7f4da51f6bf7e8c9">gridfire::DynamicEngine::getSpeciesIndex</a></div><div class="ttdeci">virtual int getSpeciesIndex(const fourdst::atomic::Species &species) const =0</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_aeae6d84ef74d88fd2cdf07b82e98a16f"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#aeae6d84ef74d88fd2cdf07b82e98a16f">gridfire::DynamicEngine::generateStoichiometryMatrix</a></div><div class="ttdeci">virtual void generateStoichiometryMatrix()=0</div><div class="ttdoc">Generate the stoichiometry matrix for the network.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_afa108dd5227dbb1045e90d7b3bd8b84f"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#afa108dd5227dbb1045e90d7b3bd8b84f">gridfire::DynamicEngine::getStoichiometryMatrixEntry</a></div><div class="ttdeci">virtual int getStoichiometryMatrixEntry(int speciesIndex, int reactionIndex) const =0</div><div class="ttdoc">Get an entry from the stoichiometry matrix.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_dynamic_engine_html_afb2ec904d88fc8aab516db4059d0e00f"><div class="ttname"><a href="classgridfire_1_1_dynamic_engine.html#afb2ec904d88fc8aab516db4059d0e00f">gridfire::DynamicEngine::setNetworkReactions</a></div><div class="ttdeci">virtual void setNetworkReactions(const reaction::LogicalReactionSet &reactions)=0</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_engine_html"><div class="ttname"><a href="classgridfire_1_1_engine.html">gridfire::Engine</a></div><div class="ttdoc">Abstract base class for a reaction network engine.</div><div class="ttdef"><b>Definition</b> <a href="#l00084">engine_abstract.h:84</a></div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_engine_html_a020e1b493d6964cafdad08fde697ceb3"><div class="ttname"><a href="classgridfire_1_1_engine.html#a020e1b493d6964cafdad08fde697ceb3">gridfire::Engine::getNetworkSpecies</a></div><div class="ttdeci">virtual const std::vector< fourdst::atomic::Species > & getNetworkSpecies() const =0</div><div class="ttdoc">Get the list of species in the network.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_engine_html_a2e7970bed2100699f226f4141d5db037"><div class="ttname"><a href="classgridfire_1_1_engine.html#a2e7970bed2100699f226f4141d5db037">gridfire::Engine::~Engine</a></div><div class="ttdeci">virtual ~Engine()=default</div><div class="ttdoc">Virtual destructor.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1_engine_html_a89f714d19b84a93a004a7afbb487a6cb"><div class="ttname"><a href="classgridfire_1_1_engine.html#a89f714d19b84a93a004a7afbb487a6cb">gridfire::Engine::calculateRHSAndEnergy</a></div><div class="ttdeci">virtual std::expected< StepDerivatives< double >, expectations::StaleEngineError > calculateRHSAndEnergy(const std::vector< double > &Y, double T9, double rho) const =0</div><div class="ttdoc">Calculate the right-hand side (dY/dt) and energy generation.</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1reaction_1_1_reaction_html"><div class="ttname"><a href="classgridfire_1_1reaction_1_1_reaction.html">gridfire::reaction::Reaction</a></div><div class="ttdoc">Represents a single nuclear reaction from a specific data source.</div><div class="ttdef"><b>Definition</b> <a href="reaction_8h_source.html#l00072">reaction.h:72</a></div></div>
|
|
<div class="ttc" id="aconceptgridfire_1_1_is_arithmetic_or_a_d_html"><div class="ttname"><a href="conceptgridfire_1_1_is_arithmetic_or_a_d.html">gridfire::IsArithmeticOrAD</a></div><div class="ttdoc">Concept for types allowed in engine calculations.</div><div class="ttdef"><b>Definition</b> <a href="#l00040">engine_abstract.h:40</a></div></div>
|
|
<div class="ttc" id="aexpected__engine_8h_html"><div class="ttname"><a href="expected__engine_8h.html">expected_engine.h</a></div></div>
|
|
<div class="ttc" id="anamespacegridfire_1_1reaction_html"><div class="ttname"><a href="namespacegridfire_1_1reaction.html">gridfire::reaction</a></div><div class="ttdef"><b>Definition</b> <a href="reaction_8h_source.html#l00025">reaction.h:25</a></div></div>
|
|
<div class="ttc" id="anamespacegridfire_1_1reaction_html_aa86f08712565f278adacc7cd2361eb31"><div class="ttname"><a href="namespacegridfire_1_1reaction.html#aa86f08712565f278adacc7cd2361eb31">gridfire::reaction::LogicalReactionSet</a></div><div class="ttdeci">TemplatedReactionSet< LogicalReaction > LogicalReactionSet</div><div class="ttdoc">A set of logical reactions.</div><div class="ttdef"><b>Definition</b> <a href="reaction_8h_source.html#l00563">reaction.h:563</a></div></div>
|
|
<div class="ttc" id="anamespacegridfire_1_1screening_html_aa82aafbc4f8c28d0a75b60798e3a7d25"><div class="ttname"><a href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">gridfire::screening::ScreeningType</a></div><div class="ttdeci">ScreeningType</div><div class="ttdoc">Enumerates the available plasma screening models.</div><div class="ttdef"><b>Definition</b> <a href="screening__types_8h_source.html#l00015">screening_types.h:15</a></div></div>
|
|
<div class="ttc" id="anamespacegridfire_html"><div class="ttname"><a href="namespacegridfire.html">gridfire</a></div><div class="ttdef"><b>Definition</b> <a href="#l00031">engine_abstract.h:31</a></div></div>
|
|
<div class="ttc" id="anamespacegridfire_html_a3b1f70dc7ff5b501809330a97079e4f6"><div class="ttname"><a href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">gridfire::BuildDepthType</a></div><div class="ttdeci">std::variant< NetworkBuildDepth, int > BuildDepthType</div><div class="ttdoc">Variant specifying either a predefined NetworkBuildDepth or a custom integer depth.</div><div class="ttdef"><b>Definition</b> <a href="building_8h_source.html#l00037">building.h:37</a></div></div>
|
|
<div class="ttc" id="anamespacegridfire_html_a898dfe22579e649935645cbd6f073178"><div class="ttname"><a href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">gridfire::SparsityPattern</a></div><div class="ttdeci">std::vector< std::pair< size_t, size_t > > SparsityPattern</div><div class="ttdef"><b>Definition</b> <a href="#l00065">engine_abstract.h:65</a></div></div>
|
|
<div class="ttc" id="anetwork_8h_html"><div class="ttname"><a href="network_8h.html">network.h</a></div></div>
|
|
<div class="ttc" id="areaction_8h_html"><div class="ttname"><a href="reaction_8h.html">reaction.h</a></div><div class="ttdoc">Defines classes for representing and managing nuclear reactions.</div></div>
|
|
<div class="ttc" id="areporting_8h_html"><div class="ttname"><a href="reporting_8h.html">reporting.h</a></div></div>
|
|
<div class="ttc" id="ascreening__abstract_8h_html"><div class="ttname"><a href="screening__abstract_8h.html">screening_abstract.h</a></div></div>
|
|
<div class="ttc" id="ascreening__types_8h_html"><div class="ttname"><a href="screening__types_8h.html">screening_types.h</a></div></div>
|
|
<div class="ttc" id="astructgridfire_1_1_net_in_html"><div class="ttname"><a href="structgridfire_1_1_net_in.html">gridfire::NetIn</a></div><div class="ttdef"><b>Definition</b> <a href="network_8h_source.html#l00053">network.h:53</a></div></div>
|
|
<div class="ttc" id="astructgridfire_1_1_priming_report_html"><div class="ttname"><a href="structgridfire_1_1_priming_report.html">gridfire::PrimingReport</a></div><div class="ttdoc">Captures the result of a network priming operation.</div><div class="ttdef"><b>Definition</b> <a href="reporting_8h_source.html#l00067">reporting.h:67</a></div></div>
|
|
<div class="ttc" id="astructgridfire_1_1_step_derivatives_html"><div class="ttname"><a href="structgridfire_1_1_step_derivatives.html">gridfire::StepDerivatives</a></div><div class="ttdoc">Structure holding derivatives and energy generation for a network step.</div><div class="ttdef"><b>Definition</b> <a href="#l00060">engine_abstract.h:60</a></div></div>
|
|
<div class="ttc" id="astructgridfire_1_1_step_derivatives_html_ab4aeb41be952c7b5844e1ee81fef9008"><div class="ttname"><a href="structgridfire_1_1_step_derivatives.html#ab4aeb41be952c7b5844e1ee81fef9008">gridfire::StepDerivatives::nuclearEnergyGenerationRate</a></div><div class="ttdeci">T nuclearEnergyGenerationRate</div><div class="ttdoc">Specific energy generation rate (e.g., erg/g/s).</div><div class="ttdef"><b>Definition</b> <a href="#l00062">engine_abstract.h:62</a></div></div>
|
|
<div class="ttc" id="astructgridfire_1_1_step_derivatives_html_ae0de268b86c2404379409c4feae0b34d"><div class="ttname"><a href="structgridfire_1_1_step_derivatives.html#ae0de268b86c2404379409c4feae0b34d">gridfire::StepDerivatives::dydt</a></div><div class="ttdeci">std::vector< T > dydt</div><div class="ttdoc">Derivatives of abundances (dY/dt for each species).</div><div class="ttdef"><b>Definition</b> <a href="#l00061">engine_abstract.h:61</a></div></div>
|
|
<div class="ttc" id="astructgridfire_1_1expectations_1_1_stale_engine_error_html"><div class="ttname"><a href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a></div><div class="ttdef"><b>Definition</b> <a href="expected__engine_8h_source.html#l00044">expected_engine.h:44</a></div></div>
|
|
</div><!-- fragment --></div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_3626e0c0e3c5d7812d6b277dfa4ec364.html">gridfire</a></li><li class="navelem"><a class="el" href="dir_aff155d61c3b73b9ab7dcdc908c4d49e.html">engine</a></li><li class="navelem"><a class="el" href="engine__abstract_8h.html">engine_abstract.h</a></li>
|
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|