docs(docs): rebuilt docs

This commit is contained in:
2025-11-04 14:04:26 -05:00
parent e87206a4a3
commit 77e6a918a5
710 changed files with 14858 additions and 5874 deletions

View File

@@ -29,7 +29,7 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">GridFire<span id="projectnumber">&#160;0.6.0</span>
<div id="projectname">GridFire<span id="projectnumber">&#160;v0.7.0-alpha</span>
</div>
<div id="projectbrief">General Purpose Nuclear Network</div>
</td>
@@ -124,30 +124,38 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:afc745e7ab5da5d8b3cf916044515cd7d" id="r_afc745e7ab5da5d8b3cf916044515cd7d"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; fourdst::atomic::Species &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afc745e7ab5da5d8b3cf916044515cd7d">getNetworkSpecies</a> () const override</td></tr>
<tr class="memdesc:afc745e7ab5da5d8b3cf916044515cd7d"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_py_dynamic_engine.html">PyDynamicEngine</a> Implementation ///. <br /></td></tr>
<tr class="separator:afc745e7ab5da5d8b3cf916044515cd7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b7f0cfe327c634ec125303256de8b9a" id="r_a5b7f0cfe327c634ec125303256de8b9a"><td class="memItemLeft" align="right" valign="top">std::expected&lt; <a class="el" href="structgridfire_1_1_step_derivatives.html">gridfire::StepDerivatives</a>&lt; double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5b7f0cfe327c634ec125303256de8b9a">calculateRHSAndEnergy</a> (const std::vector&lt; double &gt; &amp;Y, double T9, double rho) const override</td></tr>
<tr class="separator:a5b7f0cfe327c634ec125303256de8b9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bd40c752db1badcd600797c9113121d" id="r_a5bd40c752db1badcd600797c9113121d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5bd40c752db1badcd600797c9113121d">generateJacobianMatrix</a> (const std::vector&lt; double &gt; &amp;Y_dynamic, double T9, double rho) const override</td></tr>
<tr class="separator:a5bd40c752db1badcd600797c9113121d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0f1fd3f0c0185395193d1b6897d64c5" id="r_aa0f1fd3f0c0185395193d1b6897d64c5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa0f1fd3f0c0185395193d1b6897d64c5">generateJacobianMatrix</a> (const std::vector&lt; double &gt; &amp;Y_dynamic, double T9, double rho, const <a class="el" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">gridfire::SparsityPattern</a> &amp;sparsityPattern) const override</td></tr>
<tr class="separator:aa0f1fd3f0c0185395193d1b6897d64c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c888bbc0618f1ae02d9a53e45f3c159" id="r_a1c888bbc0618f1ae02d9a53e45f3c159"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1c888bbc0618f1ae02d9a53e45f3c159">getJacobianMatrixEntry</a> (int i, int j) const override</td></tr>
<tr class="separator:a1c888bbc0618f1ae02d9a53e45f3c159"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bd76ef1df93d361bf5791270390c914" id="r_a6bd76ef1df93d361bf5791270390c914"><td class="memItemLeft" align="right" valign="top">std::expected&lt; <a class="el" href="structgridfire_1_1_step_derivatives.html">gridfire::StepDerivatives</a>&lt; double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6bd76ef1df93d361bf5791270390c914">calculateRHSAndEnergy</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const override</td></tr>
<tr class="memdesc:a6bd76ef1df93d361bf5791270390c914"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the right-hand side (dY/dt) and energy generation. <br /></td></tr>
<tr class="separator:a6bd76ef1df93d361bf5791270390c914"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a63d0132254983a2143f31e863a5c18" id="r_a2a63d0132254983a2143f31e863a5c18"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2a63d0132254983a2143f31e863a5c18">generateJacobianMatrix</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const override</td></tr>
<tr class="memdesc:a2a63d0132254983a2143f31e863a5c18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate the Jacobian matrix for the current state. <br /></td></tr>
<tr class="separator:a2a63d0132254983a2143f31e863a5c18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae45b9260d0ec645213541c96b48a468" id="r_aae45b9260d0ec645213541c96b48a468"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aae45b9260d0ec645213541c96b48a468">generateJacobianMatrix</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho, const std::vector&lt; fourdst::atomic::Species &gt; &amp;activeSpecies) const override</td></tr>
<tr class="separator:aae45b9260d0ec645213541c96b48a468"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36f2dbd2278608fe8a4ef7f08d7e4963" id="r_a36f2dbd2278608fe8a4ef7f08d7e4963"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a36f2dbd2278608fe8a4ef7f08d7e4963">generateJacobianMatrix</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho, const <a class="el" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">gridfire::SparsityPattern</a> &amp;sparsityPattern) const override</td></tr>
<tr class="separator:a36f2dbd2278608fe8a4ef7f08d7e4963"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63bbe8f6d3849e99dd41b6d9613ff1f0" id="r_a63bbe8f6d3849e99dd41b6d9613ff1f0"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a63bbe8f6d3849e99dd41b6d9613ff1f0">getJacobianMatrixEntry</a> (const fourdst::atomic::Species &amp;rowSpecies, const fourdst::atomic::Species &amp;colSpecies) const override</td></tr>
<tr class="memdesc:a63bbe8f6d3849e99dd41b6d9613ff1f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an entry from the previously generated Jacobian matrix. <br /></td></tr>
<tr class="separator:a63bbe8f6d3849e99dd41b6d9613ff1f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2066649ca11a869c054079ea12d8d0e9" id="r_a2066649ca11a869c054079ea12d8d0e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2066649ca11a869c054079ea12d8d0e9">generateStoichiometryMatrix</a> () override</td></tr>
<tr class="memdesc:a2066649ca11a869c054079ea12d8d0e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate the stoichiometry matrix for the network. <br /></td></tr>
<tr class="separator:a2066649ca11a869c054079ea12d8d0e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab48ef6db18da20024aa563a91fa16f83" id="r_ab48ef6db18da20024aa563a91fa16f83"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab48ef6db18da20024aa563a91fa16f83">getStoichiometryMatrixEntry</a> (int speciesIndex, int reactionIndex) const override</td></tr>
<tr class="separator:ab48ef6db18da20024aa563a91fa16f83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6224f546ba66b1257506b1fc9f47195a" id="r_a6224f546ba66b1257506b1fc9f47195a"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6224f546ba66b1257506b1fc9f47195a">calculateMolarReactionFlow</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">gridfire::reaction::Reaction</a> &amp;reaction, const std::vector&lt; double &gt; &amp;Y, double T9, double rho) const override</td></tr>
<tr class="separator:a6224f546ba66b1257506b1fc9f47195a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dd5cf419f25e76e144af35df15a2067" id="r_a3dd5cf419f25e76e144af35df15a2067"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3dd5cf419f25e76e144af35df15a2067">getStoichiometryMatrixEntry</a> (const fourdst::atomic::Species &amp;species, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">gridfire::reaction::Reaction</a> &amp;reaction) const override</td></tr>
<tr class="memdesc:a3dd5cf419f25e76e144af35df15a2067"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an entry from the stoichiometry matrix. <br /></td></tr>
<tr class="separator:a3dd5cf419f25e76e144af35df15a2067"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b7f2e7c92b4702efcabe7c2a1faa153" id="r_a1b7f2e7c92b4702efcabe7c2a1faa153"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1b7f2e7c92b4702efcabe7c2a1faa153">calculateMolarReactionFlow</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">gridfire::reaction::Reaction</a> &amp;reaction, const fourdst::composition::Composition &amp;comp, double T9, double rho) const override</td></tr>
<tr class="memdesc:a1b7f2e7c92b4702efcabe7c2a1faa153"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the molar reaction flow for a given reaction. <br /></td></tr>
<tr class="separator:a1b7f2e7c92b4702efcabe7c2a1faa153"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d5143640666631501cf229bc491516e" id="r_a1d5143640666631501cf229bc491516e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">gridfire::reaction::ReactionSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1d5143640666631501cf229bc491516e">getNetworkReactions</a> () const override</td></tr>
<tr class="memdesc:a1d5143640666631501cf229bc491516e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the set of logical reactions in the network. <br /></td></tr>
<tr class="separator:a1d5143640666631501cf229bc491516e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af469cba3be850d53f659ec173f0eb4e4" id="r_af469cba3be850d53f659ec173f0eb4e4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af469cba3be850d53f659ec173f0eb4e4">setNetworkReactions</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">gridfire::reaction::ReactionSet</a> &amp;reactions) override</td></tr>
<tr class="separator:af469cba3be850d53f659ec173f0eb4e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02a4c86c9637a3c9c9ca8ddd82ecff22" id="r_a02a4c86c9637a3c9c9ca8ddd82ecff22"><td class="memItemLeft" align="right" valign="top">std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a02a4c86c9637a3c9c9ca8ddd82ecff22">getSpeciesTimescales</a> (const std::vector&lt; double &gt; &amp;Y, double T9, double rho) const override</td></tr>
<tr class="separator:a02a4c86c9637a3c9c9ca8ddd82ecff22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a020044829e0146427ed4830e5b02c4f3" id="r_a020044829e0146427ed4830e5b02c4f3"><td class="memItemLeft" align="right" valign="top">std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a020044829e0146427ed4830e5b02c4f3">getSpeciesDestructionTimescales</a> (const std::vector&lt; double &gt; &amp;Y, double T9, double rho) const override</td></tr>
<tr class="separator:a020044829e0146427ed4830e5b02c4f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a598eb1575937d165b4b383959cf8c417" id="r_a598eb1575937d165b4b383959cf8c417"><td class="memItemLeft" align="right" valign="top">std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a598eb1575937d165b4b383959cf8c417">getSpeciesTimescales</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const override</td></tr>
<tr class="memdesc:a598eb1575937d165b4b383959cf8c417"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute timescales for all species in the network. <br /></td></tr>
<tr class="separator:a598eb1575937d165b4b383959cf8c417"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16c27e5af29ddf187e5ab82a6e6db57b" id="r_a16c27e5af29ddf187e5ab82a6e6db57b"><td class="memItemLeft" align="right" valign="top">std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a16c27e5af29ddf187e5ab82a6e6db57b">getSpeciesDestructionTimescales</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const override</td></tr>
<tr class="separator:a16c27e5af29ddf187e5ab82a6e6db57b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8e6a8cd44f278535d7bcc9a896d6da8" id="r_af8e6a8cd44f278535d7bcc9a896d6da8"><td class="memItemLeft" align="right" valign="top">fourdst::composition::Composition&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af8e6a8cd44f278535d7bcc9a896d6da8">update</a> (const <a class="el" href="structgridfire_1_1_net_in.html">gridfire::NetIn</a> &amp;netIn) override</td></tr>
<tr class="memdesc:af8e6a8cd44f278535d7bcc9a896d6da8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the internal state of the engine. <br /></td></tr>
<tr class="separator:af8e6a8cd44f278535d7bcc9a896d6da8"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -174,36 +182,16 @@ Public Member Functions</h2></td></tr>
<tr class="memitem:a3d30a9116825ab2c5c209bc2712126bc" id="r_a3d30a9116825ab2c5c209bc2712126bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3d30a9116825ab2c5c209bc2712126bc">rebuild</a> (const fourdst::composition::Composition &amp;comp, <a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">gridfire::BuildDepthType</a> depth) override</td></tr>
<tr class="memdesc:a3d30a9116825ab2c5c209bc2712126bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rebuild the network with a specified depth. <br /></td></tr>
<tr class="separator:a3d30a9116825ab2c5c209bc2712126bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classgridfire_1_1_dynamic_engine"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classgridfire_1_1_dynamic_engine')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgridfire_1_1_dynamic_engine.html">gridfire::DynamicEngine</a></td></tr>
<tr class="memitem:a21d15531309456ee83f7675251e7a1bf inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_a21d15531309456ee83f7675251e7a1bf"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#a21d15531309456ee83f7675251e7a1bf">generateJacobianMatrix</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const =0</td></tr>
<tr class="memdesc:a21d15531309456ee83f7675251e7a1bf inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate the Jacobian matrix for the current state. <br /></td></tr>
<tr class="separator:a21d15531309456ee83f7675251e7a1bf inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11d602a708af4629f51873b17f7b8dbd inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_a11d602a708af4629f51873b17f7b8dbd"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#a11d602a708af4629f51873b17f7b8dbd">generateJacobianMatrix</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho, const <a class="el" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">SparsityPattern</a> &amp;sparsityPattern) const</td></tr>
<tr class="separator:a11d602a708af4629f51873b17f7b8dbd inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88dbf350dc0ea3e2b64d825f489e0d60 inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_a88dbf350dc0ea3e2b64d825f489e0d60"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#a88dbf350dc0ea3e2b64d825f489e0d60">getJacobianMatrixEntry</a> (const fourdst::atomic::Species &amp;rowSpecies, const fourdst::atomic::Species &amp;colSpecies) const =0</td></tr>
<tr class="memdesc:a88dbf350dc0ea3e2b64d825f489e0d60 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an entry from the previously generated Jacobian matrix. <br /></td></tr>
<tr class="separator:a88dbf350dc0ea3e2b64d825f489e0d60 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad19c8451b6f624e2938f771cc067d5c1 inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_ad19c8451b6f624e2938f771cc067d5c1"><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#ad19c8451b6f624e2938f771cc067d5c1">getStoichiometryMatrixEntry</a> (const fourdst::atomic::Species &amp;species, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &amp;reaction) const =0</td></tr>
<tr class="memdesc:ad19c8451b6f624e2938f771cc067d5c1 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an entry from the stoichiometry matrix. <br /></td></tr>
<tr class="separator:ad19c8451b6f624e2938f771cc067d5c1 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39cf5b738eea0a275bf8c0eb5789fab3 inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_a39cf5b738eea0a275bf8c0eb5789fab3"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#a39cf5b738eea0a275bf8c0eb5789fab3">calculateMolarReactionFlow</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &amp;reaction, const fourdst::composition::Composition &amp;comp, double T9, double rho) const =0</td></tr>
<tr class="memdesc:a39cf5b738eea0a275bf8c0eb5789fab3 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the molar reaction flow for a given reaction. <br /></td></tr>
<tr class="separator:a39cf5b738eea0a275bf8c0eb5789fab3 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a264bd5a8891c8c5f0dff32867effe547 inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_a264bd5a8891c8c5f0dff32867effe547"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structgridfire_1_1_energy_derivatives.html">EnergyDerivatives</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#a264bd5a8891c8c5f0dff32867effe547">calculateEpsDerivatives</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const =0</td></tr>
<tr class="memdesc:a264bd5a8891c8c5f0dff32867effe547 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the derivatives of the energy generation rate with respect to T and rho. <br /></td></tr>
<tr class="separator:a264bd5a8891c8c5f0dff32867effe547 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7114f5ebc6667b5e5971c0450ed03d9 inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_ae7114f5ebc6667b5e5971c0450ed03d9"><td class="memItemLeft" align="right" valign="top">virtual std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#ae7114f5ebc6667b5e5971c0450ed03d9">getSpeciesTimescales</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const =0</td></tr>
<tr class="memdesc:ae7114f5ebc6667b5e5971c0450ed03d9 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute timescales for all species in the network. <br /></td></tr>
<tr class="separator:ae7114f5ebc6667b5e5971c0450ed03d9 inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25c040d3078f6ff2ef38f733eb68f1fa inherit pub_methods_classgridfire_1_1_dynamic_engine" id="r_a25c040d3078f6ff2ef38f733eb68f1fa"><td class="memItemLeft" align="right" valign="top">virtual std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_dynamic_engine.html#a25c040d3078f6ff2ef38f733eb68f1fa">getSpeciesDestructionTimescales</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const =0</td></tr>
<tr class="separator:a25c040d3078f6ff2ef38f733eb68f1fa inherit pub_methods_classgridfire_1_1_dynamic_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09eb8874b0c687aacc84a7bc7a5e2330" id="r_a09eb8874b0c687aacc84a7bc7a5e2330"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1_energy_derivatives.html">gridfire::EnergyDerivatives</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a09eb8874b0c687aacc84a7bc7a5e2330">calculateEpsDerivatives</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const override</td></tr>
<tr class="memdesc:a09eb8874b0c687aacc84a7bc7a5e2330"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the derivatives of the energy generation rate with respect to T and rho. <br /></td></tr>
<tr class="separator:a09eb8874b0c687aacc84a7bc7a5e2330"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c5397f57fb9e115495188a1d2296147" id="r_a6c5397f57fb9e115495188a1d2296147"><td class="memItemLeft" align="right" valign="top">fourdst::composition::Composition&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6c5397f57fb9e115495188a1d2296147">collectComposition</a> (fourdst::composition::Composition &amp;comp) const override</td></tr>
<tr class="memdesc:a6c5397f57fb9e115495188a1d2296147"><td class="mdescLeft">&#160;</td><td class="mdescRight">Recursively collect composition from current engine and any sub engines if they exist. <br /></td></tr>
<tr class="separator:a6c5397f57fb9e115495188a1d2296147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classgridfire_1_1_engine"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classgridfire_1_1_engine')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgridfire_1_1_engine.html">gridfire::Engine</a></td></tr>
<tr class="memitem:a2e7970bed2100699f226f4141d5db037 inherit pub_methods_classgridfire_1_1_engine" id="r_a2e7970bed2100699f226f4141d5db037"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_engine.html#a2e7970bed2100699f226f4141d5db037">~Engine</a> ()=default</td></tr>
<tr class="memdesc:a2e7970bed2100699f226f4141d5db037 inherit pub_methods_classgridfire_1_1_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual destructor. <br /></td></tr>
<tr class="separator:a2e7970bed2100699f226f4141d5db037 inherit pub_methods_classgridfire_1_1_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add48d3af9ebde17717e42e220e349740 inherit pub_methods_classgridfire_1_1_engine" id="r_add48d3af9ebde17717e42e220e349740"><td class="memItemLeft" align="right" valign="top">virtual std::expected&lt; <a class="el" href="structgridfire_1_1_step_derivatives.html">StepDerivatives</a>&lt; double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_engine.html#add48d3af9ebde17717e42e220e349740">calculateRHSAndEnergy</a> (const fourdst::composition::Composition &amp;comp, double T9, double rho) const =0</td></tr>
<tr class="memdesc:add48d3af9ebde17717e42e220e349740 inherit pub_methods_classgridfire_1_1_engine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the right-hand side (dY/dt) and energy generation. <br /></td></tr>
<tr class="separator:add48d3af9ebde17717e42e220e349740 inherit pub_methods_classgridfire_1_1_engine"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
@@ -211,8 +199,56 @@ Private Attributes</h2></td></tr>
<tr class="separator:a2246382b1c98ba69cdb419bba63a6d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a6224f546ba66b1257506b1fc9f47195a" name="a6224f546ba66b1257506b1fc9f47195a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6224f546ba66b1257506b1fc9f47195a">&#9670;&#160;</a></span>calculateMolarReactionFlow()</h2>
<a id="a09eb8874b0c687aacc84a7bc7a5e2330" name="a09eb8874b0c687aacc84a7bc7a5e2330"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09eb8874b0c687aacc84a7bc7a5e2330">&#9670;&#160;</a></span>calculateEpsDerivatives()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgridfire_1_1_energy_derivatives.html">gridfire::EnergyDerivatives</a> PyDynamicEngine::calculateEpsDerivatives </td>
<td>(</td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>rho</em></span>&#160;) const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculate the derivatives of the energy generation rate with respect to T and rho. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">comp</td><td>Composition object containing current abundances. </td></tr>
<tr><td class="paramname">T9</td><td>Temperature in units of 10^9 K. </td></tr>
<tr><td class="paramname">rho</td><td>Density in g/cm^3. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>EnergyDerivatives containing dEps/dT and dEps/dRho.</dd></dl>
<p>This method computes the partial derivatives of the specific nuclear energy generation rate with respect to temperature and density for the current state. </p>
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a264bd5a8891c8c5f0dff32867effe547">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="a1b7f2e7c92b4702efcabe7c2a1faa153" name="a1b7f2e7c92b4702efcabe7c2a1faa153"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b7f2e7c92b4702efcabe7c2a1faa153">&#9670;&#160;</a></span>calculateMolarReactionFlow()</h2>
<div class="memitem">
<div class="memproto">
@@ -228,7 +264,7 @@ Private Attributes</h2></td></tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; double &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -243,15 +279,30 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculate the molar reaction flow for a given reaction. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">reaction</td><td>The reaction for which to calculate the flow. </td></tr>
<tr><td class="paramname">comp</td><td>Composition object containing current abundances. </td></tr>
<tr><td class="paramname">T9</td><td>Temperature in units of 10^9 K. </td></tr>
<tr><td class="paramname">rho</td><td>Density in g/cm^3. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Molar flow rate for the reaction (e.g., mol/g/s).</dd></dl>
<p>This method computes the net rate at which the given reaction proceeds under the current state. </p>
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a39cf5b738eea0a275bf8c0eb5789fab3">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="a5b7f0cfe327c634ec125303256de8b9a" name="a5b7f0cfe327c634ec125303256de8b9a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b7f0cfe327c634ec125303256de8b9a">&#9670;&#160;</a></span>calculateRHSAndEnergy()</h2>
<a id="a6bd76ef1df93d361bf5791270390c914" name="a6bd76ef1df93d361bf5791270390c914"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6bd76ef1df93d361bf5791270390c914">&#9670;&#160;</a></span>calculateRHSAndEnergy()</h2>
<div class="memitem">
<div class="memproto">
@@ -262,7 +313,7 @@ Private Attributes</h2></td></tr>
<tr>
<td class="memname">std::expected&lt; <a class="el" href="structgridfire_1_1_step_derivatives.html">gridfire::StepDerivatives</a>&lt; double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt; PyDynamicEngine::calculateRHSAndEnergy </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; double &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -277,15 +328,68 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculate the right-hand side (dY/dt) and energy generation. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">comp</td><td>Composition object containing current abundances. </td></tr>
<tr><td class="paramname">T9</td><td>Temperature in units of 10^9 K. </td></tr>
<tr><td class="paramname">rho</td><td>Density in g/cm^3. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>expected&lt;StepDerivatives&lt;double&gt;&gt; containing either dY/dt and energy generation rate or a stale engine error indicating that the engine must be updated</dd></dl>
<p>This function must be implemented by derived classes to compute the time derivatives of all species and the specific nuclear energy generation rate for the current state. </p>
<p>Implements <a class="el" href="classgridfire_1_1_engine.html#add48d3af9ebde17717e42e220e349740">gridfire::Engine</a>.</p>
</div>
</div>
<a id="a5bd40c752db1badcd600797c9113121d" name="a5bd40c752db1badcd600797c9113121d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5bd40c752db1badcd600797c9113121d">&#9670;&#160;</a></span>generateJacobianMatrix() <span class="overload">[1/2]</span></h2>
<a id="a6c5397f57fb9e115495188a1d2296147" name="a6c5397f57fb9e115495188a1d2296147"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c5397f57fb9e115495188a1d2296147">&#9670;&#160;</a></span>collectComposition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">fourdst::composition::Composition PyDynamicEngine::collectComposition </td>
<td>(</td>
<td class="paramtype">fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Recursively collect composition from current engine and any sub engines if they exist. </p>
<p>If species i is defined in comp and in any sub engine or self composition then the molar abundance of species i in the returned composition will be that defined in comp. If there are species defined in sub engine compositions which are not defined in comp then their molar abundances will be based on the reported values from each sub engine. </p><dl class="section note"><dt>Note</dt><dd>It is up to each engine to decide how to handle filling in the return composition. </dd>
<dd>
These methods return an unfinalized composition which must then be finalized by the caller </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">comp</td><td>Input composition to "normalize". </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>An updated composition which is a superset of comp. This may contain species which were culled, for example, by either QSE partitioning or reaction flow rate culling </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a827c7e6fa7f2c5baf13a564fb4911388">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="a2a63d0132254983a2143f31e863a5c18" name="a2a63d0132254983a2143f31e863a5c18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a63d0132254983a2143f31e863a5c18">&#9670;&#160;</a></span>generateJacobianMatrix() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
@@ -296,7 +400,7 @@ Private Attributes</h2></td></tr>
<tr>
<td class="memname">void PyDynamicEngine::generateJacobianMatrix </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; double &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y_dynamic</em></span>, </td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -311,15 +415,28 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Generate the Jacobian matrix for the current state. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">comp</td><td>Composition object containing current abundances. </td></tr>
<tr><td class="paramname">T9</td><td>Temperature in units of 10^9 K. </td></tr>
<tr><td class="paramname">rho</td><td>Density in g/cm^3.</td></tr>
</table>
</dd>
</dl>
<p>This method must compute and store the Jacobian matrix (∂(dY/dt)_i/∂Y_j) for the current state. The matrix can then be accessed via <a class="el" href="#a63bbe8f6d3849e99dd41b6d9613ff1f0" title="Get an entry from the previously generated Jacobian matrix.">getJacobianMatrixEntry()</a>. </p>
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a21d15531309456ee83f7675251e7a1bf">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="aa0f1fd3f0c0185395193d1b6897d64c5" name="aa0f1fd3f0c0185395193d1b6897d64c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0f1fd3f0c0185395193d1b6897d64c5">&#9670;&#160;</a></span>generateJacobianMatrix() <span class="overload">[2/2]</span></h2>
<a id="a36f2dbd2278608fe8a4ef7f08d7e4963" name="a36f2dbd2278608fe8a4ef7f08d7e4963"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36f2dbd2278608fe8a4ef7f08d7e4963">&#9670;&#160;</a></span>generateJacobianMatrix() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
@@ -330,7 +447,7 @@ Private Attributes</h2></td></tr>
<tr>
<td class="memname">void PyDynamicEngine::generateJacobianMatrix </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; double &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y_dynamic</em></span>, </td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -350,11 +467,54 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a495bdb1e0c6f9911deb844b22c33644e">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="aae45b9260d0ec645213541c96b48a468" name="aae45b9260d0ec645213541c96b48a468"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae45b9260d0ec645213541c96b48a468">&#9670;&#160;</a></span>generateJacobianMatrix() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PyDynamicEngine::generateJacobianMatrix </td>
<td>(</td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>rho</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; fourdst::atomic::Species &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>activeSpecies</em></span>&#160;) const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a8538fd9285a192f879a45e3dd3f26362">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="a2066649ca11a869c054079ea12d8d0e9" name="a2066649ca11a869c054079ea12d8d0e9"></a>
@@ -418,8 +578,8 @@ Private Attributes</h2></td></tr>
</div>
</div>
<a id="a1c888bbc0618f1ae02d9a53e45f3c159" name="a1c888bbc0618f1ae02d9a53e45f3c159"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1c888bbc0618f1ae02d9a53e45f3c159">&#9670;&#160;</a></span>getJacobianMatrixEntry()</h2>
<a id="a63bbe8f6d3849e99dd41b6d9613ff1f0" name="a63bbe8f6d3849e99dd41b6d9613ff1f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a63bbe8f6d3849e99dd41b6d9613ff1f0">&#9670;&#160;</a></span>getJacobianMatrixEntry()</h2>
<div class="memitem">
<div class="memproto">
@@ -430,21 +590,34 @@ Private Attributes</h2></td></tr>
<tr>
<td class="memname">double PyDynamicEngine::getJacobianMatrixEntry </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>i</em></span>, </td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>rowSpecies</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>j</em></span>&#160;) const</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>colSpecies</em></span>&#160;) const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get an entry from the previously generated Jacobian matrix. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">rowSpecies</td><td>The species corresponding to the row index (i) </td></tr>
<tr><td class="paramname">colSpecies</td><td>The species corresponding to the column index (j) </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Value of the Jacobian matrix at (i, j).</dd></dl>
<p>The Jacobian must have been generated by <a class="el" href="#a2a63d0132254983a2143f31e863a5c18" title="Generate the Jacobian matrix for the current state.">generateJacobianMatrix()</a> before calling this. </p>
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a88dbf350dc0ea3e2b64d825f489e0d60">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="a1d5143640666631501cf229bc491516e" name="a1d5143640666631501cf229bc491516e"></a>
@@ -538,8 +711,8 @@ Private Attributes</h2></td></tr>
</div>
</div>
<a id="a020044829e0146427ed4830e5b02c4f3" name="a020044829e0146427ed4830e5b02c4f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a020044829e0146427ed4830e5b02c4f3">&#9670;&#160;</a></span>getSpeciesDestructionTimescales()</h2>
<a id="a16c27e5af29ddf187e5ab82a6e6db57b" name="a16c27e5af29ddf187e5ab82a6e6db57b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16c27e5af29ddf187e5ab82a6e6db57b">&#9670;&#160;</a></span>getSpeciesDestructionTimescales()</h2>
<div class="memitem">
<div class="memproto">
@@ -550,7 +723,7 @@ Private Attributes</h2></td></tr>
<tr>
<td class="memname">std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt; PyDynamicEngine::getSpeciesDestructionTimescales </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; double &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -565,11 +738,13 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a25c040d3078f6ff2ef38f733eb68f1fa">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="a95d10a7b240d543a1bc6c67ddf2dc8e0" name="a95d10a7b240d543a1bc6c67ddf2dc8e0"></a>
@@ -608,8 +783,8 @@ Private Attributes</h2></td></tr>
</div>
</div>
<a id="a02a4c86c9637a3c9c9ca8ddd82ecff22" name="a02a4c86c9637a3c9c9ca8ddd82ecff22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02a4c86c9637a3c9c9ca8ddd82ecff22">&#9670;&#160;</a></span>getSpeciesTimescales()</h2>
<a id="a598eb1575937d165b4b383959cf8c417" name="a598eb1575937d165b4b383959cf8c417"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a598eb1575937d165b4b383959cf8c417">&#9670;&#160;</a></span>getSpeciesTimescales()</h2>
<div class="memitem">
<div class="memproto">
@@ -620,7 +795,7 @@ Private Attributes</h2></td></tr>
<tr>
<td class="memname">std::expected&lt; std::unordered_map&lt; fourdst::atomic::Species, double &gt;, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">gridfire::expectations::StaleEngineError</a> &gt; PyDynamicEngine::getSpeciesTimescales </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; double &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
@@ -635,15 +810,29 @@ Private Attributes</h2></td></tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Compute timescales for all species in the network. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">comp</td><td>Composition object containing current abundances. </td></tr>
<tr><td class="paramname">T9</td><td>Temperature in units of 10^9 K. </td></tr>
<tr><td class="paramname">rho</td><td>Density in g/cm^3. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Map from Species to their characteristic timescales (s).</dd></dl>
<p>This method estimates the timescale for abundance change of each species, which can be used for timestep control, diagnostics, and reaction network culling. </p>
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#ae7114f5ebc6667b5e5971c0450ed03d9">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="ab48ef6db18da20024aa563a91fa16f83" name="ab48ef6db18da20024aa563a91fa16f83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab48ef6db18da20024aa563a91fa16f83">&#9670;&#160;</a></span>getStoichiometryMatrixEntry()</h2>
<a id="a3dd5cf419f25e76e144af35df15a2067" name="a3dd5cf419f25e76e144af35df15a2067"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3dd5cf419f25e76e144af35df15a2067">&#9670;&#160;</a></span>getStoichiometryMatrixEntry()</h2>
<div class="memitem">
<div class="memproto">
@@ -654,21 +843,34 @@ Private Attributes</h2></td></tr>
<tr>
<td class="memname">int PyDynamicEngine::getStoichiometryMatrixEntry </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>speciesIndex</em></span>, </td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>reactionIndex</em></span>&#160;) const</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">gridfire::reaction::Reaction</a> &amp;</td> <td class="paramname"><span class="paramname"><em>reaction</em></span>&#160;) const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span></span> </td>
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get an entry from the stoichiometry matrix. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>species to look up stoichiometry for. </td></tr>
<tr><td class="paramname">reaction</td><td>reaction to find </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Stoichiometric coefficient for the species in the reaction.</dd></dl>
<p>The stoichiometry matrix must have been generated by <a class="el" href="#a2066649ca11a869c054079ea12d8d0e9" title="Generate the stoichiometry matrix for the network.">generateStoichiometryMatrix()</a>. </p>
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#ad19c8451b6f624e2938f771cc067d5c1">gridfire::DynamicEngine</a>.</p>
</div>
</div>
<a id="a55bf19ed7534a312a36faf74753f7b14" name="a55bf19ed7534a312a36faf74753f7b14"></a>