2844 lines
160 KiB
HTML
2844 lines
160 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: gridfire::GraphEngine Class Reference</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.6.0</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('classgridfire_1_1_graph_engine.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="summary">
|
|
<a href="#nested-classes">Classes</a> |
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pub-static-methods">Static Public Member Functions</a> |
|
|
<a href="#pri-methods">Private Member Functions</a> |
|
|
<a href="#pri-attribs">Private Attributes</a> |
|
|
<a href="classgridfire_1_1_graph_engine-members.html">List of all members</a> </div>
|
|
<div class="headertitle"><div class="title">gridfire::GraphEngine Class Reference<span class="mlabels"><span class="mlabel final">final</span></span></div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>A reaction network engine that uses a graph-based representation.
|
|
<a href="#details">More...</a></p>
|
|
|
|
<p><code>#include <engine_graph.h></code></p>
|
|
<div class="dynheader">
|
|
Inheritance diagram for gridfire::GraphEngine:</div>
|
|
<div class="dyncontent">
|
|
<div class="center">
|
|
<img src="classgridfire_1_1_graph_engine.png" usemap="#gridfire::GraphEngine_map" alt=""/>
|
|
<map id="gridfire::GraphEngine_map" name="gridfire::GraphEngine_map">
|
|
<area href="classgridfire_1_1_dynamic_engine.html" title="Abstract class for engines supporting Jacobian and stoichiometry operations." alt="gridfire::DynamicEngine" shape="rect" coords="0,56,147,80"/>
|
|
<area href="classgridfire_1_1_engine.html" title="Abstract base class for a reaction network engine." alt="gridfire::Engine" shape="rect" coords="0,0,147,24"/>
|
|
</map>
|
|
</div></div>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
|
|
Classes</h2></td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1_graph_engine_1_1_atomic_reverse_rate.html">AtomicReverseRate</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structgridfire_1_1_graph_engine_1_1constants.html">constants</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structgridfire_1_1_graph_engine_1_1_precomputed_reaction.html">PrecomputedReaction</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a38aaafb1d9a6548bc8e8cb672417bbbe" id="r_a38aaafb1d9a6548bc8e8cb672417bbbe"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a38aaafb1d9a6548bc8e8cb672417bbbe">GraphEngine</a> (const fourdst::composition::Composition &composition, <a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a>=<a class="el" href="namespacegridfire.html#a0210bd2e07538932135a56b62b8ddb57abbd47109890259c0127154db1af26c75">NetworkBuildDepth::Full</a>)</td></tr>
|
|
<tr class="memdesc:a38aaafb1d9a6548bc8e8cb672417bbbe"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a <a class="el" href="classgridfire_1_1_graph_engine.html" title="A reaction network engine that uses a graph-based representation.">GraphEngine</a> from a composition. <br /></td></tr>
|
|
<tr class="separator:a38aaafb1d9a6548bc8e8cb672417bbbe"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3a03fbd767f495ca667f23789b07c293" id="r_a3a03fbd767f495ca667f23789b07c293"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3a03fbd767f495ca667f23789b07c293">GraphEngine</a> (const fourdst::composition::Composition &composition, const <a class="el" href="classgridfire_1_1partition_1_1_partition_function.html">partition::PartitionFunction</a> &partitionFunction, <a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> buildDepth=<a class="el" href="namespacegridfire.html#a0210bd2e07538932135a56b62b8ddb57abbd47109890259c0127154db1af26c75">NetworkBuildDepth::Full</a>)</td></tr>
|
|
<tr class="separator:a3a03fbd767f495ca667f23789b07c293"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a514cc6b5482d6a27902975da17b5e39e" id="r_a514cc6b5482d6a27902975da17b5e39e"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a514cc6b5482d6a27902975da17b5e39e">GraphEngine</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &reactions)</td></tr>
|
|
<tr class="memdesc:a514cc6b5482d6a27902975da17b5e39e"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a <a class="el" href="classgridfire_1_1_graph_engine.html" title="A reaction network engine that uses a graph-based representation.">GraphEngine</a> from a set of reactions. <br /></td></tr>
|
|
<tr class="separator:a514cc6b5482d6a27902975da17b5e39e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7acc98647427981a9602d251c9288012" id="r_a7acc98647427981a9602d251c9288012"><td class="memItemLeft" align="right" valign="top">std::expected< <a class="el" href="structgridfire_1_1_step_derivatives.html">StepDerivatives</a>< double >, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7acc98647427981a9602d251c9288012">calculateRHSAndEnergy</a> (const fourdst::composition::Composition &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:a7acc98647427981a9602d251c9288012"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the right-hand side (dY/dt) and energy generation rate. <br /></td></tr>
|
|
<tr class="separator:a7acc98647427981a9602d251c9288012"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae0c9159cc3467fd85d1a5895f1786c47" id="r_ae0c9159cc3467fd85d1a5895f1786c47"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1_energy_derivatives.html">EnergyDerivatives</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae0c9159cc3467fd85d1a5895f1786c47">calculateEpsDerivatives</a> (const fourdst::composition::Composition &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:ae0c9159cc3467fd85d1a5895f1786c47"><td class="mdescLeft"> </td><td class="mdescRight">Calculate the derivatives of the energy generation rate with respect to T and rho. <br /></td></tr>
|
|
<tr class="separator:ae0c9159cc3467fd85d1a5895f1786c47"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae11f6267077025ca342e2e263ad87e5e" id="r_ae11f6267077025ca342e2e263ad87e5e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae11f6267077025ca342e2e263ad87e5e">generateJacobianMatrix</a> (const fourdst::composition::Composition &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:ae11f6267077025ca342e2e263ad87e5e"><td class="mdescLeft"> </td><td class="mdescRight">Generates the Jacobian matrix for the current state. <br /></td></tr>
|
|
<tr class="separator:ae11f6267077025ca342e2e263ad87e5e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4e0bbc6448999e2ef06879270b7d3dec" id="r_a4e0bbc6448999e2ef06879270b7d3dec"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4e0bbc6448999e2ef06879270b7d3dec">generateJacobianMatrix</a> (const fourdst::composition::Composition &comp, double T9, double rho, const <a class="el" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">SparsityPattern</a> &sparsityPattern) const override</td></tr>
|
|
<tr class="separator:a4e0bbc6448999e2ef06879270b7d3dec"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aed726d36ee2b3796beff6067a1e4db38" id="r_aed726d36ee2b3796beff6067a1e4db38"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#aed726d36ee2b3796beff6067a1e4db38">generateStoichiometryMatrix</a> () override</td></tr>
|
|
<tr class="memdesc:aed726d36ee2b3796beff6067a1e4db38"><td class="mdescLeft"> </td><td class="mdescRight">Generates the stoichiometry matrix for the network. <br /></td></tr>
|
|
<tr class="separator:aed726d36ee2b3796beff6067a1e4db38"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1675859971f0bd2db0650f8da54ed7eb" id="r_a1675859971f0bd2db0650f8da54ed7eb"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1675859971f0bd2db0650f8da54ed7eb">calculateMolarReactionFlow</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, const fourdst::composition::Composition &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:a1675859971f0bd2db0650f8da54ed7eb"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the molar reaction flow for a given reaction. <br /></td></tr>
|
|
<tr class="separator:a1675859971f0bd2db0650f8da54ed7eb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0ed390f3e598ebba4e245ac90bb78767" id="r_a0ed390f3e598ebba4e245ac90bb78767"><td class="memItemLeft" align="right" valign="top">const std::vector< fourdst::atomic::Species > & </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0ed390f3e598ebba4e245ac90bb78767">getNetworkSpecies</a> () const override</td></tr>
|
|
<tr class="memdesc:a0ed390f3e598ebba4e245ac90bb78767"><td class="mdescLeft"> </td><td class="mdescRight">Gets the list of species in the network. <br /></td></tr>
|
|
<tr class="separator:a0ed390f3e598ebba4e245ac90bb78767"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3b7f3ba85821165f58f168bc68f86b2d" id="r_a3b7f3ba85821165f58f168bc68f86b2d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3b7f3ba85821165f58f168bc68f86b2d">getNetworkReactions</a> () const override</td></tr>
|
|
<tr class="memdesc:a3b7f3ba85821165f58f168bc68f86b2d"><td class="mdescLeft"> </td><td class="mdescRight">Gets the set of logical reactions in the network. <br /></td></tr>
|
|
<tr class="separator:a3b7f3ba85821165f58f168bc68f86b2d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a52288e2629609c8438a3c9bc3f910016" id="r_a52288e2629609c8438a3c9bc3f910016"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a52288e2629609c8438a3c9bc3f910016">setNetworkReactions</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &reactions) override</td></tr>
|
|
<tr class="separator:a52288e2629609c8438a3c9bc3f910016"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8ab5308629b8707922e5954776254aa6" id="r_a8ab5308629b8707922e5954776254aa6"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ab5308629b8707922e5954776254aa6">getJacobianMatrixEntry</a> (const fourdst::atomic::Species &rowSpecies, const fourdst::atomic::Species &colSpecies) const override</td></tr>
|
|
<tr class="memdesc:a8ab5308629b8707922e5954776254aa6"><td class="mdescLeft"> </td><td class="mdescRight">Gets an entry from the previously generated Jacobian matrix. <br /></td></tr>
|
|
<tr class="separator:a8ab5308629b8707922e5954776254aa6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad90a2d770ebf098f0d6d5f5339961e95" id="r_ad90a2d770ebf098f0d6d5f5339961e95"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad90a2d770ebf098f0d6d5f5339961e95">getStoichiometryMatrixEntry</a> (const fourdst::atomic::Species &species, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction) const override</td></tr>
|
|
<tr class="memdesc:ad90a2d770ebf098f0d6d5f5339961e95"><td class="mdescLeft"> </td><td class="mdescRight">Gets an entry from the stoichiometry matrix. <br /></td></tr>
|
|
<tr class="separator:ad90a2d770ebf098f0d6d5f5339961e95"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7dde968244f3c4934c7738445c709232" id="r_a7dde968244f3c4934c7738445c709232"><td class="memItemLeft" align="right" valign="top">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7dde968244f3c4934c7738445c709232">getSpeciesTimescales</a> (const fourdst::composition::Composition &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:a7dde968244f3c4934c7738445c709232"><td class="mdescLeft"> </td><td class="mdescRight">Computes timescales for all species in the network. <br /></td></tr>
|
|
<tr class="separator:a7dde968244f3c4934c7738445c709232"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a47df5a9c448dd1ce8654df819a6cc8ff" id="r_a47df5a9c448dd1ce8654df819a6cc8ff"><td class="memItemLeft" align="right" valign="top">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a47df5a9c448dd1ce8654df819a6cc8ff">getSpeciesDestructionTimescales</a> (const fourdst::composition::Composition &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="separator:a47df5a9c448dd1ce8654df819a6cc8ff"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5ac7cff23e70bd07ba7e510b753e2ab6" id="r_a5ac7cff23e70bd07ba7e510b753e2ab6"><td class="memItemLeft" align="right" valign="top">fourdst::composition::Composition </td><td class="memItemRight" valign="bottom"><a class="el" href="#a5ac7cff23e70bd07ba7e510b753e2ab6">update</a> (const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) override</td></tr>
|
|
<tr class="memdesc:a5ac7cff23e70bd07ba7e510b753e2ab6"><td class="mdescLeft"> </td><td class="mdescRight">Update the internal state of the engine. <br /></td></tr>
|
|
<tr class="separator:a5ac7cff23e70bd07ba7e510b753e2ab6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af04a9f8a629d6f6c58c477af0f1ab9e5" id="r_af04a9f8a629d6f6c58c477af0f1ab9e5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#af04a9f8a629d6f6c58c477af0f1ab9e5">isStale</a> (const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) override</td></tr>
|
|
<tr class="separator:af04a9f8a629d6f6c58c477af0f1ab9e5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa6202cee0c3c481eda77cc9a91bc126b" id="r_aa6202cee0c3c481eda77cc9a91bc126b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa6202cee0c3c481eda77cc9a91bc126b">involvesSpecies</a> (const fourdst::atomic::Species &species) const</td></tr>
|
|
<tr class="memdesc:aa6202cee0c3c481eda77cc9a91bc126b"><td class="mdescLeft"> </td><td class="mdescRight">Checks if a given species is involved in the network. <br /></td></tr>
|
|
<tr class="separator:aa6202cee0c3c481eda77cc9a91bc126b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adac8c7d62bae76e17fc060e86dadd929" id="r_adac8c7d62bae76e17fc060e86dadd929"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#adac8c7d62bae76e17fc060e86dadd929">exportToDot</a> (const std::string &filename) const</td></tr>
|
|
<tr class="memdesc:adac8c7d62bae76e17fc060e86dadd929"><td class="mdescLeft"> </td><td class="mdescRight">Exports the network to a DOT file for visualization. <br /></td></tr>
|
|
<tr class="separator:adac8c7d62bae76e17fc060e86dadd929"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a832e2fe066381811a3e0464806ff5e95" id="r_a832e2fe066381811a3e0464806ff5e95"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a832e2fe066381811a3e0464806ff5e95">exportToCSV</a> (const std::string &filename) const</td></tr>
|
|
<tr class="memdesc:a832e2fe066381811a3e0464806ff5e95"><td class="mdescLeft"> </td><td class="mdescRight">Exports the network to a CSV file for analysis. <br /></td></tr>
|
|
<tr class="separator:a832e2fe066381811a3e0464806ff5e95"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9bc768ca8ca59d442c0d05cb04e36d7c" id="r_a9bc768ca8ca59d442c0d05cb04e36d7c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9bc768ca8ca59d442c0d05cb04e36d7c">setScreeningModel</a> (<a class="el" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> model) override</td></tr>
|
|
<tr class="memdesc:a9bc768ca8ca59d442c0d05cb04e36d7c"><td class="mdescLeft"> </td><td class="mdescRight">Sets the electron screening model for reaction rate calculations. <br /></td></tr>
|
|
<tr class="separator:a9bc768ca8ca59d442c0d05cb04e36d7c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a697f2004e0d02c59e83c7890742d7c9a" id="r_a697f2004e0d02c59e83c7890742d7c9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a697f2004e0d02c59e83c7890742d7c9a">getScreeningModel</a> () const override</td></tr>
|
|
<tr class="memdesc:a697f2004e0d02c59e83c7890742d7c9a"><td class="mdescLeft"> </td><td class="mdescRight">Gets the current electron screening model. <br /></td></tr>
|
|
<tr class="separator:a697f2004e0d02c59e83c7890742d7c9a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6c5410878496abc349ba30b691cdf0f1" id="r_a6c5410878496abc349ba30b691cdf0f1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6c5410878496abc349ba30b691cdf0f1">setPrecomputation</a> (bool precompute)</td></tr>
|
|
<tr class="memdesc:a6c5410878496abc349ba30b691cdf0f1"><td class="mdescLeft"> </td><td class="mdescRight">Sets whether to precompute reaction rates. <br /></td></tr>
|
|
<tr class="separator:a6c5410878496abc349ba30b691cdf0f1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a015f8975701f028c29835d3a9794e00f" id="r_a015f8975701f028c29835d3a9794e00f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a015f8975701f028c29835d3a9794e00f">isPrecomputationEnabled</a> () const</td></tr>
|
|
<tr class="memdesc:a015f8975701f028c29835d3a9794e00f"><td class="mdescLeft"> </td><td class="mdescRight">Checks if precomputation of reaction rates is enabled. <br /></td></tr>
|
|
<tr class="separator:a015f8975701f028c29835d3a9794e00f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:add98ece49ec5c538bddf3cc77004fe44" id="r_add98ece49ec5c538bddf3cc77004fe44"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgridfire_1_1partition_1_1_partition_function.html">partition::PartitionFunction</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="#add98ece49ec5c538bddf3cc77004fe44">getPartitionFunction</a> () const</td></tr>
|
|
<tr class="memdesc:add98ece49ec5c538bddf3cc77004fe44"><td class="mdescLeft"> </td><td class="mdescRight">Gets the partition function used for reaction rate calculations. <br /></td></tr>
|
|
<tr class="separator:add98ece49ec5c538bddf3cc77004fe44"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:accf01734524a706ad03c9b9898af54b3" id="r_accf01734524a706ad03c9b9898af54b3"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#accf01734524a706ad03c9b9898af54b3">calculateReverseRate</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, double T9, double rho, const fourdst::composition::Composition &comp) const</td></tr>
|
|
<tr class="memdesc:accf01734524a706ad03c9b9898af54b3"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the reverse rate for a given reaction. <br /></td></tr>
|
|
<tr class="separator:accf01734524a706ad03c9b9898af54b3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a01fc9fd5d576b66d07360d05e821c755" id="r_a01fc9fd5d576b66d07360d05e821c755"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#a01fc9fd5d576b66d07360d05e821c755">calculateReverseRateTwoBody</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, const double T9, const double forwardRate, const double expFactor) const</td></tr>
|
|
<tr class="memdesc:a01fc9fd5d576b66d07360d05e821c755"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the reverse rate for a two-body reaction. <br /></td></tr>
|
|
<tr class="separator:a01fc9fd5d576b66d07360d05e821c755"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9340db538a507b96e186b60ba0450205" id="r_a9340db538a507b96e186b60ba0450205"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9340db538a507b96e186b60ba0450205">calculateReverseRateTwoBodyDerivative</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, double T9, double rho, const fourdst::composition::Composition &comp, double reverseRate) const</td></tr>
|
|
<tr class="separator:a9340db538a507b96e186b60ba0450205"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae7a210d9ab13ad5fb0c612f027acabd0" id="r_ae7a210d9ab13ad5fb0c612f027acabd0"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae7a210d9ab13ad5fb0c612f027acabd0">isUsingReverseReactions</a> () const</td></tr>
|
|
<tr class="memdesc:ae7a210d9ab13ad5fb0c612f027acabd0"><td class="mdescLeft"> </td><td class="mdescRight">Checks if reverse reactions are enabled. <br /></td></tr>
|
|
<tr class="separator:ae7a210d9ab13ad5fb0c612f027acabd0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a409991d527ea4d4b05d1af907fe5d197" id="r_a409991d527ea4d4b05d1af907fe5d197"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a409991d527ea4d4b05d1af907fe5d197">setUseReverseReactions</a> (bool useReverse)</td></tr>
|
|
<tr class="memdesc:a409991d527ea4d4b05d1af907fe5d197"><td class="mdescLeft"> </td><td class="mdescRight">Sets whether to use reverse reactions in the engine. <br /></td></tr>
|
|
<tr class="separator:a409991d527ea4d4b05d1af907fe5d197"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9e426e6c178dd80bd58090489d3b2be9" id="r_a9e426e6c178dd80bd58090489d3b2be9"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9e426e6c178dd80bd58090489d3b2be9">getSpeciesIndex</a> (const fourdst::atomic::Species &species) const override</td></tr>
|
|
<tr class="memdesc:a9e426e6c178dd80bd58090489d3b2be9"><td class="mdescLeft"> </td><td class="mdescRight">Gets the index of a species in the network. <br /></td></tr>
|
|
<tr class="separator:a9e426e6c178dd80bd58090489d3b2be9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a27f3a928e1f6bbe7e847cffed6db729f" id="r_a27f3a928e1f6bbe7e847cffed6db729f"><td class="memItemLeft" align="right" valign="top">std::vector< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a27f3a928e1f6bbe7e847cffed6db729f">mapNetInToMolarAbundanceVector</a> (const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) const override</td></tr>
|
|
<tr class="memdesc:a27f3a928e1f6bbe7e847cffed6db729f"><td class="mdescLeft"> </td><td class="mdescRight">Maps the <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> object to a vector of molar abundances. <br /></td></tr>
|
|
<tr class="separator:a27f3a928e1f6bbe7e847cffed6db729f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae7a371be61ab09b3fa4a93f05bd44e5e" id="r_ae7a371be61ab09b3fa4a93f05bd44e5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1_priming_report.html">PrimingReport</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae7a371be61ab09b3fa4a93f05bd44e5e">primeEngine</a> (const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) override</td></tr>
|
|
<tr class="memdesc:ae7a371be61ab09b3fa4a93f05bd44e5e"><td class="mdescLeft"> </td><td class="mdescRight">Prepares the engine for calculations with initial conditions. <br /></td></tr>
|
|
<tr class="separator:ae7a371be61ab09b3fa4a93f05bd44e5e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a166a5f4349580f9aa0b930afec73fcc4" id="r_a166a5f4349580f9aa0b930afec73fcc4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a166a5f4349580f9aa0b930afec73fcc4">getDepth</a> () const override</td></tr>
|
|
<tr class="memdesc:a166a5f4349580f9aa0b930afec73fcc4"><td class="mdescLeft"> </td><td class="mdescRight">Gets the depth of the network. <br /></td></tr>
|
|
<tr class="separator:a166a5f4349580f9aa0b930afec73fcc4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad9d6c70ace5cbbf7f3aa7b31fce39490" id="r_ad9d6c70ace5cbbf7f3aa7b31fce39490"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad9d6c70ace5cbbf7f3aa7b31fce39490">rebuild</a> (const fourdst::composition::Composition &comp, const <a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> depth) override</td></tr>
|
|
<tr class="memdesc:ad9d6c70ace5cbbf7f3aa7b31fce39490"><td class="mdescLeft"> </td><td class="mdescRight">Rebuilds the reaction network based on a new composition. <br /></td></tr>
|
|
<tr class="separator:ad9d6c70ace5cbbf7f3aa7b31fce39490"><td class="memSeparator" colspan="2"> </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="-"/> 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 </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"> </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"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
|
|
Static Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a8c29d8bbde407e913be5eb77efb2c0c9" id="r_a8c29d8bbde407e913be5eb77efb2c0c9"><td class="memItemLeft" align="right" valign="top">static std::unordered_map< fourdst::atomic::Species, int > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8c29d8bbde407e913be5eb77efb2c0c9">getNetReactionStoichiometry</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction)</td></tr>
|
|
<tr class="memdesc:a8c29d8bbde407e913be5eb77efb2c0c9"><td class="mdescLeft"> </td><td class="mdescRight">Gets the net stoichiometry for a given reaction. <br /></td></tr>
|
|
<tr class="separator:a8c29d8bbde407e913be5eb77efb2c0c9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-methods" name="pri-methods"></a>
|
|
Private Member Functions</h2></td></tr>
|
|
<tr class="memitem:acdce8d87e23a2cd1504bc9472e538c0f" id="r_acdce8d87e23a2cd1504bc9472e538c0f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#acdce8d87e23a2cd1504bc9472e538c0f">syncInternalMaps</a> ()</td></tr>
|
|
<tr class="memdesc:acdce8d87e23a2cd1504bc9472e538c0f"><td class="mdescLeft"> </td><td class="mdescRight">Synchronizes the internal maps. <br /></td></tr>
|
|
<tr class="separator:acdce8d87e23a2cd1504bc9472e538c0f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aedf42d83bfcc28313b6b6454034d2efa" id="r_aedf42d83bfcc28313b6b6454034d2efa"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#aedf42d83bfcc28313b6b6454034d2efa">collectNetworkSpecies</a> ()</td></tr>
|
|
<tr class="memdesc:aedf42d83bfcc28313b6b6454034d2efa"><td class="mdescLeft"> </td><td class="mdescRight">Collects the unique species in the network. <br /></td></tr>
|
|
<tr class="separator:aedf42d83bfcc28313b6b6454034d2efa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a26602e1b3c610780a47b5a6511d6d567" id="r_a26602e1b3c610780a47b5a6511d6d567"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a26602e1b3c610780a47b5a6511d6d567">populateReactionIDMap</a> ()</td></tr>
|
|
<tr class="memdesc:a26602e1b3c610780a47b5a6511d6d567"><td class="mdescLeft"> </td><td class="mdescRight">Populates the reaction ID map. <br /></td></tr>
|
|
<tr class="separator:a26602e1b3c610780a47b5a6511d6d567"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a47202c43342b96480070874bffce1391" id="r_a47202c43342b96480070874bffce1391"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a47202c43342b96480070874bffce1391">populateSpeciesToIndexMap</a> ()</td></tr>
|
|
<tr class="memdesc:a47202c43342b96480070874bffce1391"><td class="mdescLeft"> </td><td class="mdescRight">Populates the species-to-index map. <br /></td></tr>
|
|
<tr class="separator:a47202c43342b96480070874bffce1391"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8d0c0bd54a2908cff62dae7af0c149b5" id="r_a8d0c0bd54a2908cff62dae7af0c149b5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8d0c0bd54a2908cff62dae7af0c149b5">reserveJacobianMatrix</a> () const</td></tr>
|
|
<tr class="memdesc:a8d0c0bd54a2908cff62dae7af0c149b5"><td class="mdescLeft"> </td><td class="mdescRight">Reserves space for the Jacobian matrix. <br /></td></tr>
|
|
<tr class="separator:a8d0c0bd54a2908cff62dae7af0c149b5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab29ef3225c8fcda012b10765df064b63" id="r_ab29ef3225c8fcda012b10765df064b63"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ab29ef3225c8fcda012b10765df064b63">recordADTape</a> () const</td></tr>
|
|
<tr class="memdesc:ab29ef3225c8fcda012b10765df064b63"><td class="mdescLeft"> </td><td class="mdescRight">Records the AD tape for the right-hand side of the ODE. <br /></td></tr>
|
|
<tr class="separator:ab29ef3225c8fcda012b10765df064b63"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a16b8cd1b0e19b4d4519596a4e22eaf5c" id="r_a16b8cd1b0e19b4d4519596a4e22eaf5c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a16b8cd1b0e19b4d4519596a4e22eaf5c">recordEpsADTape</a> () const</td></tr>
|
|
<tr class="separator:a16b8cd1b0e19b4d4519596a4e22eaf5c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a29b338630c959449c15881935ac30746" id="r_a29b338630c959449c15881935ac30746"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a29b338630c959449c15881935ac30746">collectAtomicReverseRateAtomicBases</a> ()</td></tr>
|
|
<tr class="separator:a29b338630c959449c15881935ac30746"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a92644bc333bff69c5685be4552ca12fd" id="r_a92644bc333bff69c5685be4552ca12fd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a92644bc333bff69c5685be4552ca12fd">precomputeNetwork</a> ()</td></tr>
|
|
<tr class="separator:a92644bc333bff69c5685be4552ca12fd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:acf4cfccea20f5cb31c9886bf233a28be" id="r_acf4cfccea20f5cb31c9886bf233a28be"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#acf4cfccea20f5cb31c9886bf233a28be">validateConservation</a> () const</td></tr>
|
|
<tr class="memdesc:acf4cfccea20f5cb31c9886bf233a28be"><td class="mdescLeft"> </td><td class="mdescRight">Validates mass and charge conservation across all reactions. <br /></td></tr>
|
|
<tr class="separator:acf4cfccea20f5cb31c9886bf233a28be"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aef12443d7980301d8bb89f4ba4890450" id="r_aef12443d7980301d8bb89f4ba4890450"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1_step_derivatives.html">StepDerivatives</a>< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#aef12443d7980301d8bb89f4ba4890450">calculateAllDerivativesUsingPrecomputation</a> (const fourdst::composition::Composition &comp, const std::vector< double > &bare_rates, const std::vector< double > &bare_reverse_rates, double T9, double rho) const</td></tr>
|
|
<tr class="separator:aef12443d7980301d8bb89f4ba4890450"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2bea809d2efb3a5e7cc065ec80baebce" id="r_a2bea809d2efb3a5e7cc065ec80baebce"><td class="memTemplParams" colspan="2">template<IsArithmeticOrAD T> </td></tr>
|
|
<tr class="memitem:a2bea809d2efb3a5e7cc065ec80baebce"><td class="memTemplItemLeft" align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a2bea809d2efb3a5e7cc065ec80baebce">calculateMolarReactionFlow</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, const std::vector< T > &Y, const T T9, const T rho, T Ye, T mue) const</td></tr>
|
|
<tr class="memdesc:a2bea809d2efb3a5e7cc065ec80baebce"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the molar reaction flow for a given reaction. <br /></td></tr>
|
|
<tr class="separator:a2bea809d2efb3a5e7cc065ec80baebce"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a972d0705351167dc889a2f6c442e7a93" id="r_a972d0705351167dc889a2f6c442e7a93"><td class="memTemplParams" colspan="2">template<IsArithmeticOrAD T> </td></tr>
|
|
<tr class="memitem:a972d0705351167dc889a2f6c442e7a93"><td class="memTemplItemLeft" align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a972d0705351167dc889a2f6c442e7a93">calculateReverseMolarReactionFlow</a> (const T T9, const T rho, std::vector< T > screeningFactors, const std::vector< T > &Y, size_t reactionIndex, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction) const</td></tr>
|
|
<tr class="separator:a972d0705351167dc889a2f6c442e7a93"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8873331f5ae40a3f640dedbbed685ed9" id="r_a8873331f5ae40a3f640dedbbed685ed9"><td class="memTemplParams" colspan="2">template<IsArithmeticOrAD T> </td></tr>
|
|
<tr class="memitem:a8873331f5ae40a3f640dedbbed685ed9"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1_step_derivatives.html">StepDerivatives</a>< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a8873331f5ae40a3f640dedbbed685ed9">calculateAllDerivatives</a> (const std::vector< T > &Y_in, T T9, T rho, T Ye, T mue) const</td></tr>
|
|
<tr class="memdesc:a8873331f5ae40a3f640dedbbed685ed9"><td class="mdescLeft"> </td><td class="mdescRight">Calculates all derivatives (dY/dt) and the energy generation rate. <br /></td></tr>
|
|
<tr class="separator:a8873331f5ae40a3f640dedbbed685ed9"><td class="memSeparator" colspan="2"> </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>
|
|
<tr class="memitem:a3b17102b143435ddfdc015d7a50c4b18" id="r_a3b17102b143435ddfdc015d7a50c4b18"><td class="memItemLeft" align="right" valign="top">Config & </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3b17102b143435ddfdc015d7a50c4b18">m_config</a> = Config::getInstance()</td></tr>
|
|
<tr class="separator:a3b17102b143435ddfdc015d7a50c4b18"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a483979fc154adc88d029b3b672066d53" id="r_a483979fc154adc88d029b3b672066d53"><td class="memItemLeft" align="right" valign="top">quill::Logger * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a483979fc154adc88d029b3b672066d53">m_logger</a> = LogManager::getInstance().getLogger("log")</td></tr>
|
|
<tr class="separator:a483979fc154adc88d029b3b672066d53"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a10c01bc20ae668c2857efb2a1783098e" id="r_a10c01bc20ae668c2857efb2a1783098e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1_graph_engine_1_1constants.html">constants</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a10c01bc20ae668c2857efb2a1783098e">m_constants</a></td></tr>
|
|
<tr class="separator:a10c01bc20ae668c2857efb2a1783098e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9ac5893030802b0b846552949e866340" id="r_a9ac5893030802b0b846552949e866340"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgridfire_1_1rates_1_1weak_1_1_weak_rate_interpolator.html">rates::weak::WeakRateInterpolator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9ac5893030802b0b846552949e866340">m_weakRateInterpolator</a></td></tr>
|
|
<tr class="memdesc:a9ac5893030802b0b846552949e866340"><td class="mdescLeft"> </td><td class="mdescRight">Interpolator for weak reaction rates. <br /></td></tr>
|
|
<tr class="separator:a9ac5893030802b0b846552949e866340"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad3b97595871d1f62ee7f4726b601ebef" id="r_ad3b97595871d1f62ee7f4726b601ebef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad3b97595871d1f62ee7f4726b601ebef">m_reactions</a></td></tr>
|
|
<tr class="memdesc:ad3b97595871d1f62ee7f4726b601ebef"><td class="mdescLeft"> </td><td class="mdescRight">Set of REACLIB reactions in the network. <br /></td></tr>
|
|
<tr class="separator:ad3b97595871d1f62ee7f4726b601ebef"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5d6cc63b99b467c2a976d1fbaaa1dfa3" id="r_a5d6cc63b99b467c2a976d1fbaaa1dfa3"><td class="memItemLeft" align="right" valign="top">std::unordered_map< std::string_view, <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a5d6cc63b99b467c2a976d1fbaaa1dfa3">m_reactionIDMap</a></td></tr>
|
|
<tr class="memdesc:a5d6cc63b99b467c2a976d1fbaaa1dfa3"><td class="mdescLeft"> </td><td class="mdescRight">Map from reaction ID to REACLIBReaction. //PERF: This makes copies of REACLIBReaction and could be a performance bottleneck. <br /></td></tr>
|
|
<tr class="separator:a5d6cc63b99b467c2a976d1fbaaa1dfa3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a92d26068ba139e47d335f5fe9e2814cc" id="r_a92d26068ba139e47d335f5fe9e2814cc"><td class="memItemLeft" align="right" valign="top">std::vector< fourdst::atomic::Species > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a92d26068ba139e47d335f5fe9e2814cc">m_networkSpecies</a></td></tr>
|
|
<tr class="memdesc:a92d26068ba139e47d335f5fe9e2814cc"><td class="mdescLeft"> </td><td class="mdescRight">Vector of unique species in the network. <br /></td></tr>
|
|
<tr class="separator:a92d26068ba139e47d335f5fe9e2814cc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a30e09ed0bce6aa5fc89beaa316a7b827" id="r_a30e09ed0bce6aa5fc89beaa316a7b827"><td class="memItemLeft" align="right" valign="top">std::unordered_map< std::string_view, fourdst::atomic::Species > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a30e09ed0bce6aa5fc89beaa316a7b827">m_networkSpeciesMap</a></td></tr>
|
|
<tr class="memdesc:a30e09ed0bce6aa5fc89beaa316a7b827"><td class="mdescLeft"> </td><td class="mdescRight">Map from species name to Species object. <br /></td></tr>
|
|
<tr class="separator:a30e09ed0bce6aa5fc89beaa316a7b827"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad8237c252145a75092202d00f5e1ddf7" id="r_ad8237c252145a75092202d00f5e1ddf7"><td class="memItemLeft" align="right" valign="top">std::unordered_map< fourdst::atomic::Species, size_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad8237c252145a75092202d00f5e1ddf7">m_speciesToIndexMap</a></td></tr>
|
|
<tr class="memdesc:ad8237c252145a75092202d00f5e1ddf7"><td class="mdescLeft"> </td><td class="mdescRight">Map from species to their index in the stoichiometry matrix. <br /></td></tr>
|
|
<tr class="separator:ad8237c252145a75092202d00f5e1ddf7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8ff064c9996772281984f88ee492d04a" id="r_a8ff064c9996772281984f88ee492d04a"><td class="memItemLeft" align="right" valign="top">std::unordered_map< size_t, fourdst::atomic::Species > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ff064c9996772281984f88ee492d04a">m_indexToSpeciesMap</a></td></tr>
|
|
<tr class="memdesc:a8ff064c9996772281984f88ee492d04a"><td class="mdescLeft"> </td><td class="mdescRight">Map from index to species in the stoichiometry matrix. <br /></td></tr>
|
|
<tr class="separator:a8ff064c9996772281984f88ee492d04a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad1cb5fd32efc37668e2d9ecf0c72ad24" id="r_ad1cb5fd32efc37668e2d9ecf0c72ad24"><td class="memItemLeft" align="right" valign="top">boost::numeric::ublas::compressed_matrix< int > </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad1cb5fd32efc37668e2d9ecf0c72ad24">m_stoichiometryMatrix</a></td></tr>
|
|
<tr class="memdesc:ad1cb5fd32efc37668e2d9ecf0c72ad24"><td class="mdescLeft"> </td><td class="mdescRight">Stoichiometry matrix (species x reactions). <br /></td></tr>
|
|
<tr class="separator:ad1cb5fd32efc37668e2d9ecf0c72ad24"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2f1718c89d4aaad028102724d18fa910" id="r_a2f1718c89d4aaad028102724d18fa910"><td class="memItemLeft" align="right" valign="top">boost::numeric::ublas::compressed_matrix< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a2f1718c89d4aaad028102724d18fa910">m_jacobianMatrix</a></td></tr>
|
|
<tr class="memdesc:a2f1718c89d4aaad028102724d18fa910"><td class="mdescLeft"> </td><td class="mdescRight">Jacobian matrix (species x species). <br /></td></tr>
|
|
<tr class="separator:a2f1718c89d4aaad028102724d18fa910"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2e22b111f6d00ecc9e3804a71f1ce876" id="r_a2e22b111f6d00ecc9e3804a71f1ce876"><td class="memItemLeft" align="right" valign="top">CppAD::ADFun< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a2e22b111f6d00ecc9e3804a71f1ce876">m_rhsADFun</a></td></tr>
|
|
<tr class="memdesc:a2e22b111f6d00ecc9e3804a71f1ce876"><td class="mdescLeft"> </td><td class="mdescRight">CppAD function for the right-hand side of the ODE. <br /></td></tr>
|
|
<tr class="separator:a2e22b111f6d00ecc9e3804a71f1ce876"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1d5f6a3f217af7f4d0f95bdf7916b774" id="r_a1d5f6a3f217af7f4d0f95bdf7916b774"><td class="memItemLeft" align="right" valign="top">CppAD::ADFun< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1d5f6a3f217af7f4d0f95bdf7916b774">m_epsADFun</a></td></tr>
|
|
<tr class="memdesc:a1d5f6a3f217af7f4d0f95bdf7916b774"><td class="mdescLeft"> </td><td class="mdescRight">CppAD function for the energy generation rate. <br /></td></tr>
|
|
<tr class="separator:a1d5f6a3f217af7f4d0f95bdf7916b774"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a250cc6350dc052fbdfdf9a02066e7891" id="r_a250cc6350dc052fbdfdf9a02066e7891"><td class="memItemLeft" align="right" valign="top">CppAD::sparse_jac_work </td><td class="memItemRight" valign="bottom"><a class="el" href="#a250cc6350dc052fbdfdf9a02066e7891">m_jac_work</a></td></tr>
|
|
<tr class="memdesc:a250cc6350dc052fbdfdf9a02066e7891"><td class="mdescLeft"> </td><td class="mdescRight">Work object for sparse Jacobian calculations. <br /></td></tr>
|
|
<tr class="separator:a250cc6350dc052fbdfdf9a02066e7891"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a19b2eea0e8d05ac90f9fd7120bdc6e06" id="r_a19b2eea0e8d05ac90f9fd7120bdc6e06"><td class="memItemLeft" align="right" valign="top">CppAD::sparse_rc< std::vector< size_t > > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a19b2eea0e8d05ac90f9fd7120bdc6e06">m_full_jacobian_sparsity_pattern</a></td></tr>
|
|
<tr class="memdesc:a19b2eea0e8d05ac90f9fd7120bdc6e06"><td class="mdescLeft"> </td><td class="mdescRight">Full sparsity pattern for the Jacobian matrix. <br /></td></tr>
|
|
<tr class="separator:a19b2eea0e8d05ac90f9fd7120bdc6e06"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a816797b1d656d416844489692af44cf6" id="r_a816797b1d656d416844489692af44cf6"><td class="memItemLeft" align="right" valign="top">std::vector< std::unique_ptr< <a class="el" href="classgridfire_1_1_graph_engine_1_1_atomic_reverse_rate.html">AtomicReverseRate</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a816797b1d656d416844489692af44cf6">m_atomicReverseRates</a></td></tr>
|
|
<tr class="separator:a816797b1d656d416844489692af44cf6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a52edc3e88f1e8fc497e1e63972d63c80" id="r_a52edc3e88f1e8fc497e1e63972d63c80"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a52edc3e88f1e8fc497e1e63972d63c80">m_screeningType</a> = <a class="el" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25ad80b95b1abb9c8659fa4cc9d3d29bb71">screening::ScreeningType::BARE</a></td></tr>
|
|
<tr class="memdesc:a52edc3e88f1e8fc497e1e63972d63c80"><td class="mdescLeft"> </td><td class="mdescRight">Screening type for the reaction network. Default to no screening. <br /></td></tr>
|
|
<tr class="separator:a52edc3e88f1e8fc497e1e63972d63c80"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af17cf3762abac3efcab9a8e87c961210" id="r_af17cf3762abac3efcab9a8e87c961210"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classgridfire_1_1screening_1_1_screening_model.html">screening::ScreeningModel</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#af17cf3762abac3efcab9a8e87c961210">m_screeningModel</a> = <a class="el" href="namespacegridfire_1_1screening.html#a6ca8556d27ac373e176f5b23437c416e">screening::selectScreeningModel</a>(<a class="el" href="#a52edc3e88f1e8fc497e1e63972d63c80">m_screeningType</a>)</td></tr>
|
|
<tr class="separator:af17cf3762abac3efcab9a8e87c961210"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a191cff35402d3c97c82c5c966a39d0de" id="r_a191cff35402d3c97c82c5c966a39d0de"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a191cff35402d3c97c82c5c966a39d0de">m_usePrecomputation</a> = true</td></tr>
|
|
<tr class="memdesc:a191cff35402d3c97c82c5c966a39d0de"><td class="mdescLeft"> </td><td class="mdescRight">Flag to enable or disable using precomputed reactions for efficiency. Mathematically, this should not change the results. Generally end users should not need to change this. <br /></td></tr>
|
|
<tr class="separator:a191cff35402d3c97c82c5c966a39d0de"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a32d3efbf4c3d5158f87c0c732cdc26dc" id="r_a32d3efbf4c3d5158f87c0c732cdc26dc"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a32d3efbf4c3d5158f87c0c732cdc26dc">m_useReverseReactions</a> = true</td></tr>
|
|
<tr class="memdesc:a32d3efbf4c3d5158f87c0c732cdc26dc"><td class="mdescLeft"> </td><td class="mdescRight">Flag to enable or disable reverse reactions. If false, only forward reactions are considered. <br /></td></tr>
|
|
<tr class="separator:a32d3efbf4c3d5158f87c0c732cdc26dc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a80c73690d5af247ff9f2ba8b00abce01" id="r_a80c73690d5af247ff9f2ba8b00abce01"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a80c73690d5af247ff9f2ba8b00abce01">m_depth</a></td></tr>
|
|
<tr class="separator:a80c73690d5af247ff9f2ba8b00abce01"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5d431d5385b1219ba29689eb29601ea3" id="r_a5d431d5385b1219ba29689eb29601ea3"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="structgridfire_1_1_graph_engine_1_1_precomputed_reaction.html">PrecomputedReaction</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a5d431d5385b1219ba29689eb29601ea3">m_precomputedReactions</a></td></tr>
|
|
<tr class="memdesc:a5d431d5385b1219ba29689eb29601ea3"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed reactions for efficiency. <br /></td></tr>
|
|
<tr class="separator:a5d431d5385b1219ba29689eb29601ea3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3621f36d77ea8c738ad7de6e5b35ca3e" id="r_a3621f36d77ea8c738ad7de6e5b35ca3e"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classgridfire_1_1partition_1_1_partition_function.html">partition::PartitionFunction</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3621f36d77ea8c738ad7de6e5b35ca3e">m_partitionFunction</a></td></tr>
|
|
<tr class="memdesc:a3621f36d77ea8c738ad7de6e5b35ca3e"><td class="mdescLeft"> </td><td class="mdescRight">Partition function for the network. <br /></td></tr>
|
|
<tr class="separator:a3621f36d77ea8c738ad7de6e5b35ca3e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>A reaction network engine that uses a graph-based representation. </p>
|
|
<p>The <a class="el" href="classgridfire_1_1_graph_engine.html" title="A reaction network engine that uses a graph-based representation.">GraphEngine</a> class implements the <a class="el" href="classgridfire_1_1_dynamic_engine.html" title="Abstract class for engines supporting Jacobian and stoichiometry operations.">DynamicEngine</a> interface using a graph-based representation of the reaction network. It uses sparse matrices for efficient storage and computation of the stoichiometry and Jacobian matrices. Automatic differentiation (AD) is used to calculate the Jacobian matrix.</p>
|
|
<p>The engine supports:</p><ul>
|
|
<li>Calculation of the right-hand side (dY/dt) and energy generation rate.</li>
|
|
<li>Generation and access to the Jacobian matrix.</li>
|
|
<li>Generation and access to the stoichiometry matrix.</li>
|
|
<li>Calculation of molar reaction flows.</li>
|
|
<li>Access to the set of logical reactions in the network.</li>
|
|
<li>Computation of timescales for each species.</li>
|
|
<li>Exporting the network to DOT and CSV formats for visualization and analysis.</li>
|
|
</ul>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="engine__abstract_8h.html" title="Abstract interfaces for reaction network engines in GridFire.">engine_abstract.h</a> </dd></dl>
|
|
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="a38aaafb1d9a6548bc8e8cb672417bbbe" name="a38aaafb1d9a6548bc8e8cb672417bbbe"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a38aaafb1d9a6548bc8e8cb672417bbbe">◆ </a></span>GraphEngine() <span class="overload">[1/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::GraphEngine::GraphEngine </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</td> <td class="paramname"><span class="paramname"><em>composition</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a></td> <td class="paramname"><span class="paramname"><em>buildDepth</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="namespacegridfire.html#a0210bd2e07538932135a56b62b8ddb57abbd47109890259c0127154db1af26c75">NetworkBuildDepth::Full</a></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel explicit">explicit</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Constructs a <a class="el" href="classgridfire_1_1_graph_engine.html" title="A reaction network engine that uses a graph-based representation.">GraphEngine</a> from a composition. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">composition</td><td>The composition of the material.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This constructor builds the reaction network from the given composition using the <code>build_reaclib_nuclear_network</code> function.</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="namespacegridfire.html#a384323338f13166d87c7ac047434bd38" title="Builds a nuclear reaction network from the Reaclib library based on an initial composition.">build_reaclib_nuclear_network</a> </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3a03fbd767f495ca667f23789b07c293" name="a3a03fbd767f495ca667f23789b07c293"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3a03fbd767f495ca667f23789b07c293">◆ </a></span>GraphEngine() <span class="overload">[2/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::GraphEngine::GraphEngine </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</td> <td class="paramname"><span class="paramname"><em>composition</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1partition_1_1_partition_function.html">partition::PartitionFunction</a> &</td> <td class="paramname"><span class="paramname"><em>partitionFunction</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a></td> <td class="paramname"><span class="paramname"><em>buildDepth</em></span><span class="paramdefsep"> = </span><span class="paramdefval"><a class="el" href="namespacegridfire.html#a0210bd2e07538932135a56b62b8ddb57abbd47109890259c0127154db1af26c75">NetworkBuildDepth::Full</a></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel explicit">explicit</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a514cc6b5482d6a27902975da17b5e39e" name="a514cc6b5482d6a27902975da17b5e39e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a514cc6b5482d6a27902975da17b5e39e">◆ </a></span>GraphEngine() <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">gridfire::GraphEngine::GraphEngine </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &</td> <td class="paramname"><span class="paramname"><em>reactions</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel explicit">explicit</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Constructs a <a class="el" href="classgridfire_1_1_graph_engine.html" title="A reaction network engine that uses a graph-based representation.">GraphEngine</a> from a set of reactions. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">reactions</td><td>The set of reactions to use in the network.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This constructor uses the given set of reactions to construct the reaction network. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="a8873331f5ae40a3f640dedbbed685ed9" name="a8873331f5ae40a3f640dedbbed685ed9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8873331f5ae40a3f640dedbbed685ed9">◆ </a></span>calculateAllDerivatives()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<IsArithmeticOrAD T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="structgridfire_1_1_step_derivatives.html">StepDerivatives</a>< T > gridfire::GraphEngine::calculateAllDerivatives </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::vector< T > &</td> <td class="paramname"><span class="paramname"><em>Y_in</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>rho</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>Ye</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>mue</em></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Calculates all derivatives (dY/dt) and the energy generation rate. </p>
|
|
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
|
<table class="tparams">
|
|
<tr><td class="paramname">T</td><td>The numeric type to use for the calculation. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">Y_in</td><td>Vector of molar abundances for all species in the network. </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>
|
|
<tr><td class="paramname">Ye</td><td></td></tr>
|
|
<tr><td class="paramname">mue</td><td></td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="structgridfire_1_1_step_derivatives.html" title="Structure holding derivatives and energy generation for a network step.">StepDerivatives<T></a> containing dY/dt and energy generation rate.</dd></dl>
|
|
<p>This method calculates the time derivatives of all species and the specific nuclear energy generation rate for the current state. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aef12443d7980301d8bb89f4ba4890450" name="aef12443d7980301d8bb89f4ba4890450"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aef12443d7980301d8bb89f4ba4890450">◆ </a></span>calculateAllDerivativesUsingPrecomputation()</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_step_derivatives.html">StepDerivatives</a>< double > gridfire::GraphEngine::calculateAllDerivativesUsingPrecomputation </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::vector< double > &</td> <td class="paramname"><span class="paramname"><em>bare_rates</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::vector< double > &</td> <td class="paramname"><span class="paramname"><em>bare_reverse_rates</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> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae0c9159cc3467fd85d1a5895f1786c47" name="ae0c9159cc3467fd85d1a5895f1786c47"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae0c9159cc3467fd85d1a5895f1786c47">◆ </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">EnergyDerivatives</a> gridfire::GraphEngine::calculateEpsDerivatives </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</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> ) 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><a class="el" href="structgridfire_1_1_energy_derivatives.html">EnergyDerivatives</a> 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="a1675859971f0bd2db0650f8da54ed7eb" name="a1675859971f0bd2db0650f8da54ed7eb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1675859971f0bd2db0650f8da54ed7eb">◆ </a></span>calculateMolarReactionFlow() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::GraphEngine::calculateMolarReactionFlow </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</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> ) 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>Calculates 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="a2bea809d2efb3a5e7cc065ec80baebce" name="a2bea809d2efb3a5e7cc065ec80baebce"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2bea809d2efb3a5e7cc065ec80baebce">◆ </a></span>calculateMolarReactionFlow() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<IsArithmeticOrAD T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">T gridfire::GraphEngine::calculateMolarReactionFlow </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::vector< T > &</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>rho</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>Ye</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>mue</em></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Calculates the molar reaction flow for a given reaction. </p>
|
|
<dl class="tparams"><dt>Template Parameters</dt><dd>
|
|
<table class="tparams">
|
|
<tr><td class="paramname">T</td><td>The numeric type to use for the calculation. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<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">Y</td><td>Vector of molar abundances for all species in the network. </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>
|
|
<tr><td class="paramname">Ye</td><td></td></tr>
|
|
<tr><td class="paramname">mue</td><td></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>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a972d0705351167dc889a2f6c442e7a93" name="a972d0705351167dc889a2f6c442e7a93"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a972d0705351167dc889a2f6c442e7a93">◆ </a></span>calculateReverseMolarReactionFlow()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<IsArithmeticOrAD T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">T gridfire::GraphEngine::calculateReverseMolarReactionFlow </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>rho</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">std::vector< T ></td> <td class="paramname"><span class="paramname"><em>screeningFactors</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::vector< T > &</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>reactionIndex</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</em></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="accf01734524a706ad03c9b9898af54b3" name="accf01734524a706ad03c9b9898af54b3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#accf01734524a706ad03c9b9898af54b3">◆ </a></span>calculateReverseRate()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::GraphEngine::calculateReverseRate </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</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 fourdst::composition::Composition &</td> <td class="paramname"><span class="paramname"><em>comp</em></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Calculates the reverse rate 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 reverse rate. </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></td></tr>
|
|
<tr><td class="paramname">comp</td><td>Composition object containing current abundances. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Reverse rate for the reaction (e.g., mol/g/s).</dd></dl>
|
|
<p>This method computes the reverse rate based on the forward rate and thermodynamic properties of the reaction. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a01fc9fd5d576b66d07360d05e821c755" name="a01fc9fd5d576b66d07360d05e821c755"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a01fc9fd5d576b66d07360d05e821c755">◆ </a></span>calculateReverseRateTwoBody()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::GraphEngine::calculateReverseRateTwoBody </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const double</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const double</td> <td class="paramname"><span class="paramname"><em>forwardRate</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const double</td> <td class="paramname"><span class="paramname"><em>expFactor</em></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Calculates the reverse rate for a two-body 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 reverse rate. </td></tr>
|
|
<tr><td class="paramname">T9</td><td>Temperature in units of 10^9 K. </td></tr>
|
|
<tr><td class="paramname">forwardRate</td><td>The forward rate of the reaction. </td></tr>
|
|
<tr><td class="paramname">expFactor</td><td>Exponential factor for the reaction. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Reverse rate for the two-body reaction (e.g., mol/g/s).</dd></dl>
|
|
<p>This method computes the reverse rate using the forward rate and thermodynamic properties of the reaction. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9340db538a507b96e186b60ba0450205" name="a9340db538a507b96e186b60ba0450205"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9340db538a507b96e186b60ba0450205">◆ </a></span>calculateReverseRateTwoBodyDerivative()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::GraphEngine::calculateReverseRateTwoBodyDerivative </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</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 fourdst::composition::Composition &</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>reverseRate</em></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7acc98647427981a9602d251c9288012" name="a7acc98647427981a9602d251c9288012"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7acc98647427981a9602d251c9288012">◆ </a></span>calculateRHSAndEnergy()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::expected< <a class="el" href="structgridfire_1_1_step_derivatives.html">StepDerivatives</a>< double >, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> > gridfire::GraphEngine::calculateRHSAndEnergy </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</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> ) 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>Calculates the right-hand side (dY/dt) and energy generation rate. </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><a class="el" href="structgridfire_1_1_step_derivatives.html" title="Structure holding derivatives and energy generation for a network step.">StepDerivatives<double></a> containing dY/dt and energy generation rate.</dd></dl>
|
|
<p>This method calculates the time derivatives of all species and the specific nuclear energy generation rate for the current state.</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="structgridfire_1_1_step_derivatives.html" title="Structure holding derivatives and energy generation for a network step.">StepDerivatives</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_engine.html#add48d3af9ebde17717e42e220e349740">gridfire::Engine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a29b338630c959449c15881935ac30746" name="a29b338630c959449c15881935ac30746"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a29b338630c959449c15881935ac30746">◆ </a></span>collectAtomicReverseRateAtomicBases()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::collectAtomicReverseRateAtomicBases </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aedf42d83bfcc28313b6b6454034d2efa" name="aedf42d83bfcc28313b6b6454034d2efa"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aedf42d83bfcc28313b6b6454034d2efa">◆ </a></span>collectNetworkSpecies()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::collectNetworkSpecies </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Collects the unique species in the network. </p>
|
|
<p>This method collects the unique species in the network from the reactants and products of all reactions. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a832e2fe066381811a3e0464806ff5e95" name="a832e2fe066381811a3e0464806ff5e95"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a832e2fe066381811a3e0464806ff5e95">◆ </a></span>exportToCSV()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::exportToCSV </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>filename</em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Exports the network to a CSV file for analysis. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">filename</td><td>The name of the CSV file to create.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This method generates a CSV file containing information about the reactions in the network, including the reactants, products, Q-value, and reaction rate coefficients.</p>
|
|
<dl class="exception"><dt>Exceptions</dt><dd>
|
|
<table class="exception">
|
|
<tr><td class="paramname">std::runtime_error</td><td>If the file cannot be opened for writing.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>Example usage: </p><div class="fragment"><div class="line">engine.exportToCSV(<span class="stringliteral">"network.csv"</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a id="adac8c7d62bae76e17fc060e86dadd929" name="adac8c7d62bae76e17fc060e86dadd929"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adac8c7d62bae76e17fc060e86dadd929">◆ </a></span>exportToDot()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::exportToDot </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>filename</em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Exports the network to a DOT file for visualization. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">filename</td><td>The name of the DOT file to create.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This method generates a DOT file that can be used to visualize the reaction network as a graph. The DOT file can be converted to a graphical image using Graphviz.</p>
|
|
<dl class="exception"><dt>Exceptions</dt><dd>
|
|
<table class="exception">
|
|
<tr><td class="paramname">std::runtime_error</td><td>If the file cannot be opened for writing.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>Example usage: </p><div class="fragment"><div class="line">engine.exportToDot(<span class="stringliteral">"network.dot"</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a id="ae11f6267077025ca342e2e263ad87e5e" name="ae11f6267077025ca342e2e263ad87e5e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae11f6267077025ca342e2e263ad87e5e">◆ </a></span>generateJacobianMatrix() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::generateJacobianMatrix </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</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> ) 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>Generates 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 computes and stores the Jacobian matrix (∂(dY/dt)_i/∂Y_j) for the current state using automatic differentiation. The matrix can then be accessed via <code><a class="el" href="#a8ab5308629b8707922e5954776254aa6" title="Gets an entry from the previously generated Jacobian matrix.">getJacobianMatrixEntry()</a></code>.</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#a8ab5308629b8707922e5954776254aa6" title="Gets an entry from the previously generated Jacobian matrix.">getJacobianMatrixEntry()</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a21d15531309456ee83f7675251e7a1bf">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4e0bbc6448999e2ef06879270b7d3dec" name="a4e0bbc6448999e2ef06879270b7d3dec"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4e0bbc6448999e2ef06879270b7d3dec">◆ </a></span>generateJacobianMatrix() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::generateJacobianMatrix </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</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 <a class="el" href="namespacegridfire.html#a898dfe22579e649935645cbd6f073178">SparsityPattern</a> &</td> <td class="paramname"><span class="paramname"><em>sparsityPattern</em></span> ) 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>Reimplemented from <a class="el" href="classgridfire_1_1_dynamic_engine.html#a11d602a708af4629f51873b17f7b8dbd">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aed726d36ee2b3796beff6067a1e4db38" name="aed726d36ee2b3796beff6067a1e4db38"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aed726d36ee2b3796beff6067a1e4db38">◆ </a></span>generateStoichiometryMatrix()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::generateStoichiometryMatrix </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></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>Generates the stoichiometry matrix for the network. </p>
|
|
<p>This method computes and stores the stoichiometry matrix, which encodes the net change of each species in each reaction. </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#aeae6d84ef74d88fd2cdf07b82e98a16f">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a166a5f4349580f9aa0b930afec73fcc4" name="a166a5f4349580f9aa0b930afec73fcc4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a166a5f4349580f9aa0b930afec73fcc4">◆ </a></span>getDepth()</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="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> gridfire::GraphEngine::getDepth </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> 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>Gets the depth of the network. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>The build depth of the network.</dd></dl>
|
|
<p>This method returns the current build depth of the reaction network, which indicates how many levels of reactions are included in the network. </p>
|
|
|
|
<p>Reimplemented from <a class="el" href="classgridfire_1_1_dynamic_engine.html#a04317b66ef14d519264bc30ee69f5bf9">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8ab5308629b8707922e5954776254aa6" name="a8ab5308629b8707922e5954776254aa6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8ab5308629b8707922e5954776254aa6">◆ </a></span>getJacobianMatrixEntry()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::GraphEngine::getJacobianMatrixEntry </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::atomic::Species &</td> <td class="paramname"><span class="paramname"><em>rowSpecies</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::atomic::Species &</td> <td class="paramname"><span class="paramname"><em>colSpecies</em></span> ) 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>Gets 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>Species corresponding to the row index (i). </td></tr>
|
|
<tr><td class="paramname">colSpecies</td><td>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 <code><a class="el" href="#ae11f6267077025ca342e2e263ad87e5e" title="Generates the Jacobian matrix for the current state.">generateJacobianMatrix()</a></code> before calling this.</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#ae11f6267077025ca342e2e263ad87e5e" title="Generates the Jacobian matrix for the current state.">generateJacobianMatrix()</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a88dbf350dc0ea3e2b64d825f489e0d60">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8c29d8bbde407e913be5eb77efb2c0c9" name="a8c29d8bbde407e913be5eb77efb2c0c9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8c29d8bbde407e913be5eb77efb2c0c9">◆ </a></span>getNetReactionStoichiometry()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unordered_map< fourdst::atomic::Species, int > gridfire::GraphEngine::getNetReactionStoichiometry </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel static">static</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Gets the net stoichiometry 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 get the stoichiometry. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Map of species to their stoichiometric coefficients. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3b7f3ba85821165f58f168bc68f86b2d" name="a3b7f3ba85821165f58f168bc68f86b2d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3b7f3ba85821165f58f168bc68f86b2d">◆ </a></span>getNetworkReactions()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> & gridfire::GraphEngine::getNetworkReactions </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> 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>Gets the set of logical reactions in the network. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Reference to the LogicalReactionSet containing all reactions. </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#af496e04f7be9a0a51ac65dc95f901ffe">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0ed390f3e598ebba4e245ac90bb78767" name="a0ed390f3e598ebba4e245ac90bb78767"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0ed390f3e598ebba4e245ac90bb78767">◆ </a></span>getNetworkSpecies()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector< fourdst::atomic::Species > & gridfire::GraphEngine::getNetworkSpecies </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> 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>Gets the list of species in the network. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Vector of Species objects representing all network species. </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_engine.html#a020e1b493d6964cafdad08fde697ceb3">gridfire::Engine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="add98ece49ec5c538bddf3cc77004fe44" name="add98ece49ec5c538bddf3cc77004fe44"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#add98ece49ec5c538bddf3cc77004fe44">◆ </a></span>getPartitionFunction()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classgridfire_1_1partition_1_1_partition_function.html">partition::PartitionFunction</a> & gridfire::GraphEngine::getPartitionFunction </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Gets the partition function used for reaction rate calculations. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Reference to the PartitionFunction object.</dd></dl>
|
|
<p>This method provides access to the partition function used in the engine, which is essential for calculating thermodynamic properties and reaction rates. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a697f2004e0d02c59e83c7890742d7c9a" name="a697f2004e0d02c59e83c7890742d7c9a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a697f2004e0d02c59e83c7890742d7c9a">◆ </a></span>getScreeningModel()</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="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> gridfire::GraphEngine::getScreeningModel </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> 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>Gets the current electron screening model. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>The currently active screening model type.</dd></dl>
|
|
<p>Example usage: </p><div class="fragment"><div class="line"><a class="code hl_enumeration" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> currentModel = engine.getScreeningModel();</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> screening_types.h:15</div></div>
|
|
</div><!-- fragment -->
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a7a203f8e0f3a6744ddc912dfbcfdbcc0">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a47df5a9c448dd1ce8654df819a6cc8ff" name="a47df5a9c448dd1ce8654df819a6cc8ff"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a47df5a9c448dd1ce8654df819a6cc8ff">◆ </a></span>getSpeciesDestructionTimescales()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> > gridfire::GraphEngine::getSpeciesDestructionTimescales </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</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> ) 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>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a25c040d3078f6ff2ef38f733eb68f1fa">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9e426e6c178dd80bd58090489d3b2be9" name="a9e426e6c178dd80bd58090489d3b2be9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9e426e6c178dd80bd58090489d3b2be9">◆ </a></span>getSpeciesIndex()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t gridfire::GraphEngine::getSpeciesIndex </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::atomic::Species &</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
|
|
<td> 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>Gets the index of a species in the network. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">species</td><td>The species for which to get the index. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Index of the species in the network, or -1 if not found.</dd></dl>
|
|
<p>This method returns the index of the given species in the network's species vector. If the species is not found, it returns -1. </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a8f66fb76c9f983ee93bf8b95cdc85596">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7dde968244f3c4934c7738445c709232" name="a7dde968244f3c4934c7738445c709232"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7dde968244f3c4934c7738445c709232">◆ </a></span>getSpeciesTimescales()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="structgridfire_1_1expectations_1_1_stale_engine_error.html">expectations::StaleEngineError</a> > gridfire::GraphEngine::getSpeciesTimescales </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</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> ) 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>Computes 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 or diagnostics. </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#ae7114f5ebc6667b5e5971c0450ed03d9">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad90a2d770ebf098f0d6d5f5339961e95" name="ad90a2d770ebf098f0d6d5f5339961e95"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad90a2d770ebf098f0d6d5f5339961e95">◆ </a></span>getStoichiometryMatrixEntry()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int gridfire::GraphEngine::getStoichiometryMatrixEntry </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::atomic::Species &</td> <td class="paramname"><span class="paramname"><em>species</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &</td> <td class="paramname"><span class="paramname"><em>reaction</em></span> ) 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>Gets 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><a class="el" href="classgridfire_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> 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 <code><a class="el" href="#aed726d36ee2b3796beff6067a1e4db38" title="Generates the stoichiometry matrix for the network.">generateStoichiometryMatrix()</a></code>.</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="#aed726d36ee2b3796beff6067a1e4db38" title="Generates the stoichiometry matrix for the network.">generateStoichiometryMatrix()</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#ad19c8451b6f624e2938f771cc067d5c1">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa6202cee0c3c481eda77cc9a91bc126b" name="aa6202cee0c3c481eda77cc9a91bc126b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa6202cee0c3c481eda77cc9a91bc126b">◆ </a></span>involvesSpecies()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::GraphEngine::involvesSpecies </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::atomic::Species &</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Checks if a given species is involved in the network. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">species</td><td>The species to check. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>True if the species is involved in the network, false otherwise. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a015f8975701f028c29835d3a9794e00f" name="a015f8975701f028c29835d3a9794e00f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a015f8975701f028c29835d3a9794e00f">◆ </a></span>isPrecomputationEnabled()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::GraphEngine::isPrecomputationEnabled </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Checks if precomputation of reaction rates is enabled. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>True if precomputation is enabled, false otherwise.</dd></dl>
|
|
<p>This method allows checking the current state of precomputation for reaction rates in the engine. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af04a9f8a629d6f6c58c477af0f1ab9e5" name="af04a9f8a629d6f6c58c477af0f1ab9e5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af04a9f8a629d6f6c58c477af0f1ab9e5">◆ </a></span>isStale()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::GraphEngine::isStale </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &</td> <td class="paramname"><span class="paramname"><em>netIn</em></span></td><td>)</td>
|
|
<td></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#a942e65ced17ca602482cc42e469d6398">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae7a210d9ab13ad5fb0c612f027acabd0" name="ae7a210d9ab13ad5fb0c612f027acabd0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae7a210d9ab13ad5fb0c612f027acabd0">◆ </a></span>isUsingReverseReactions()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::GraphEngine::isUsingReverseReactions </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Checks if reverse reactions are enabled. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>True if reverse reactions are enabled, false otherwise.</dd></dl>
|
|
<p>This method allows checking whether the engine is configured to use reverse reactions in its calculations. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a27f3a928e1f6bbe7e847cffed6db729f" name="a27f3a928e1f6bbe7e847cffed6db729f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a27f3a928e1f6bbe7e847cffed6db729f">◆ </a></span>mapNetInToMolarAbundanceVector()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector< double > gridfire::GraphEngine::mapNetInToMolarAbundanceVector </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &</td> <td class="paramname"><span class="paramname"><em>netIn</em></span></td><td>)</td>
|
|
<td> 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>Maps the <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> object to a vector of molar abundances. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">netIn</td><td>The <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> object containing the input conditions. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Vector of molar abundances corresponding to the species in the network.</dd></dl>
|
|
<p>This method converts the <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> object into a vector of molar abundances for each species in the network, which can be used for further calculations. </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a55f1b7e5ebe2840e1d7c54665ca5411a">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a26602e1b3c610780a47b5a6511d6d567" name="a26602e1b3c610780a47b5a6511d6d567"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a26602e1b3c610780a47b5a6511d6d567">◆ </a></span>populateReactionIDMap()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::populateReactionIDMap </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Populates the reaction ID map. </p>
|
|
<p>This method populates the reaction ID map, which maps reaction IDs to REACLIBReaction objects. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a47202c43342b96480070874bffce1391" name="a47202c43342b96480070874bffce1391"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a47202c43342b96480070874bffce1391">◆ </a></span>populateSpeciesToIndexMap()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::populateSpeciesToIndexMap </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Populates the species-to-index map. </p>
|
|
<p>This method populates the species-to-index map, which maps species to their index in the stoichiometry matrix. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a92644bc333bff69c5685be4552ca12fd" name="a92644bc333bff69c5685be4552ca12fd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a92644bc333bff69c5685be4552ca12fd">◆ </a></span>precomputeNetwork()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::precomputeNetwork </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae7a371be61ab09b3fa4a93f05bd44e5e" name="ae7a371be61ab09b3fa4a93f05bd44e5e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae7a371be61ab09b3fa4a93f05bd44e5e">◆ </a></span>primeEngine()</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_priming_report.html">PrimingReport</a> gridfire::GraphEngine::primeEngine </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &</td> <td class="paramname"><span class="paramname"><em>netIn</em></span></td><td>)</td>
|
|
<td></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>Prepares the engine for calculations with initial conditions. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">netIn</td><td>The input conditions for the network. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="structgridfire_1_1_priming_report.html" title="Captures the result of a network priming operation.">PrimingReport</a> containing information about the priming process.</dd></dl>
|
|
<p>This method initializes the engine with the provided input conditions, setting up reactions, species, and precomputing necessary data. </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a21c34f59c080a853fafa38a25175124e">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad9d6c70ace5cbbf7f3aa7b31fce39490" name="ad9d6c70ace5cbbf7f3aa7b31fce39490"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad9d6c70ace5cbbf7f3aa7b31fce39490">◆ </a></span>rebuild()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::rebuild </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::composition::Composition &</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const <a class="el" href="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a></td> <td class="paramname"><span class="paramname"><em>depth</em></span> )</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>Rebuilds the reaction network based on a new composition. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">comp</td><td>The new composition to use for rebuilding the network. </td></tr>
|
|
<tr><td class="paramname">depth</td><td>The build depth to use for the network.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This method rebuilds the reaction network using the provided composition and build depth. It updates all internal data structures accordingly. </p>
|
|
|
|
<p>Reimplemented from <a class="el" href="classgridfire_1_1_dynamic_engine.html#a4e2c8b896661b7a89beffe0066cb21cf">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab29ef3225c8fcda012b10765df064b63" name="ab29ef3225c8fcda012b10765df064b63"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab29ef3225c8fcda012b10765df064b63">◆ </a></span>recordADTape()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::recordADTape </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Records the AD tape for the right-hand side of the ODE. </p>
|
|
<p>This method records the AD tape for the right-hand side of the ODE, which is used to calculate the Jacobian matrix using automatic differentiation.</p>
|
|
<dl class="exception"><dt>Exceptions</dt><dd>
|
|
<table class="exception">
|
|
<tr><td class="paramname">std::runtime_error</td><td>If there are no species in the network. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a16b8cd1b0e19b4d4519596a4e22eaf5c" name="a16b8cd1b0e19b4d4519596a4e22eaf5c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a16b8cd1b0e19b4d4519596a4e22eaf5c">◆ </a></span>recordEpsADTape()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::recordEpsADTape </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8d0c0bd54a2908cff62dae7af0c149b5" name="a8d0c0bd54a2908cff62dae7af0c149b5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8d0c0bd54a2908cff62dae7af0c149b5">◆ </a></span>reserveJacobianMatrix()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::reserveJacobianMatrix </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Reserves space for the Jacobian matrix. </p>
|
|
<p>This method reserves space for the Jacobian matrix, which is used to store the partial derivatives of the right-hand side of the ODE with respect to the species abundances. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a52288e2629609c8438a3c9bc3f910016" name="a52288e2629609c8438a3c9bc3f910016"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a52288e2629609c8438a3c9bc3f910016">◆ </a></span>setNetworkReactions()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::setNetworkReactions </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &</td> <td class="paramname"><span class="paramname"><em>reactions</em></span></td><td>)</td>
|
|
<td></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#a49025489901e22a20cdf99b455ff2ff0">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6c5410878496abc349ba30b691cdf0f1" name="a6c5410878496abc349ba30b691cdf0f1"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6c5410878496abc349ba30b691cdf0f1">◆ </a></span>setPrecomputation()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::setPrecomputation </td>
|
|
<td>(</td>
|
|
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>precompute</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets whether to precompute reaction rates. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">precompute</td><td>True to enable precomputation, false to disable.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This method allows enabling or disabling precomputation of reaction rates for performance optimization. When enabled, reaction rates are computed once and stored for later use. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9bc768ca8ca59d442c0d05cb04e36d7c" name="a9bc768ca8ca59d442c0d05cb04e36d7c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9bc768ca8ca59d442c0d05cb04e36d7c">◆ </a></span>setScreeningModel()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::setScreeningModel </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a></td> <td class="paramname"><span class="paramname"><em>model</em></span></td><td>)</td>
|
|
<td></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>Sets the electron screening model for reaction rate calculations. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">model</td><td>The type of screening model to use.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This method allows changing the screening model at runtime. Screening corrections account for the electrostatic shielding of nuclei by electrons, which affects reaction rates in dense stellar plasmas. </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#a3fb44b6f55563a2f590f31916528f2bd">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a409991d527ea4d4b05d1af907fe5d197" name="a409991d527ea4d4b05d1af907fe5d197"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a409991d527ea4d4b05d1af907fe5d197">◆ </a></span>setUseReverseReactions()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::setUseReverseReactions </td>
|
|
<td>(</td>
|
|
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>useReverse</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets whether to use reverse reactions in the engine. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">useReverse</td><td>True to enable reverse reactions, false to disable.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This method allows enabling or disabling reverse reactions in the engine. If disabled, only forward reactions will be considered in calculations. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="acdce8d87e23a2cd1504bc9472e538c0f" name="acdce8d87e23a2cd1504bc9472e538c0f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#acdce8d87e23a2cd1504bc9472e538c0f">◆ </a></span>syncInternalMaps()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::GraphEngine::syncInternalMaps </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Synchronizes the internal maps. </p>
|
|
<p>This method synchronizes the internal maps used by the engine, including the species map, reaction ID map, and species-to-index map. It also generates the stoichiometry matrix and records the AD tape. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5ac7cff23e70bd07ba7e510b753e2ab6" name="a5ac7cff23e70bd07ba7e510b753e2ab6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5ac7cff23e70bd07ba7e510b753e2ab6">◆ </a></span>update()</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 gridfire::GraphEngine::update </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &</td> <td class="paramname"><span class="paramname"><em>netIn</em></span></td><td>)</td>
|
|
<td></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>Update the internal state of the engine. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">netIn</td><td>A struct containing the current network input, such as temperature, density, and composition.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<p>This method is intended to be implemented by derived classes to update their internal state based on the provided network conditions. For example, an adaptive engine might use this to re-evaluate which reactions and species are active. For other engines that do not support manually updating, this method might do nothing.</p>
|
|
<dl class="section user"><dt>Usage Example:</dt><dd><div class="fragment"><div class="line"><a class="code hl_struct" href="structgridfire_1_1_net_in.html">NetIn</a> input = { ... };</div>
|
|
<div class="line">myEngine.update(input);</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> network.h:51</div></div>
|
|
</div><!-- fragment --></dd></dl>
|
|
<dl class="section post"><dt>Postcondition</dt><dd>The internal state of the engine is updated to reflect the new conditions. </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1_dynamic_engine.html#aa799ff785e7e79bf35b11efd55f6282a">gridfire::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="acf4cfccea20f5cb31c9886bf233a28be" name="acf4cfccea20f5cb31c9886bf233a28be"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#acf4cfccea20f5cb31c9886bf233a28be">◆ </a></span>validateConservation()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::GraphEngine::validateConservation </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Validates mass and charge conservation across all reactions. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>True if all reactions conserve mass and charge, false otherwise.</dd></dl>
|
|
<p>This method checks that all reactions in the network conserve mass and charge. If any reaction does not conserve mass or charge, an error message is logged and false is returned. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Data Documentation</h2>
|
|
<a id="a816797b1d656d416844489692af44cf6" name="a816797b1d656d416844489692af44cf6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a816797b1d656d416844489692af44cf6">◆ </a></span>m_atomicReverseRates</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector<std::unique_ptr<<a class="el" href="classgridfire_1_1_graph_engine_1_1_atomic_reverse_rate.html">AtomicReverseRate</a>> > gridfire::GraphEngine::m_atomicReverseRates</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3b17102b143435ddfdc015d7a50c4b18" name="a3b17102b143435ddfdc015d7a50c4b18"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3b17102b143435ddfdc015d7a50c4b18">◆ </a></span>m_config</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Config& gridfire::GraphEngine::m_config = Config::getInstance()</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a10c01bc20ae668c2857efb2a1783098e" name="a10c01bc20ae668c2857efb2a1783098e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a10c01bc20ae668c2857efb2a1783098e">◆ </a></span>m_constants</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_graph_engine_1_1constants.html">constants</a> gridfire::GraphEngine::m_constants</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a80c73690d5af247ff9f2ba8b00abce01" name="a80c73690d5af247ff9f2ba8b00abce01"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a80c73690d5af247ff9f2ba8b00abce01">◆ </a></span>m_depth</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="namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6">BuildDepthType</a> gridfire::GraphEngine::m_depth</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1d5f6a3f217af7f4d0f95bdf7916b774" name="a1d5f6a3f217af7f4d0f95bdf7916b774"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1d5f6a3f217af7f4d0f95bdf7916b774">◆ </a></span>m_epsADFun</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">CppAD::ADFun<double> gridfire::GraphEngine::m_epsADFun</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel mutable">mutable</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>CppAD function for the energy generation rate. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a19b2eea0e8d05ac90f9fd7120bdc6e06" name="a19b2eea0e8d05ac90f9fd7120bdc6e06"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a19b2eea0e8d05ac90f9fd7120bdc6e06">◆ </a></span>m_full_jacobian_sparsity_pattern</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">CppAD::sparse_rc<std::vector<size_t> > gridfire::GraphEngine::m_full_jacobian_sparsity_pattern</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Full sparsity pattern for the Jacobian matrix. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8ff064c9996772281984f88ee492d04a" name="a8ff064c9996772281984f88ee492d04a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8ff064c9996772281984f88ee492d04a">◆ </a></span>m_indexToSpeciesMap</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unordered_map<size_t, fourdst::atomic::Species> gridfire::GraphEngine::m_indexToSpeciesMap</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Map from index to species in the stoichiometry matrix. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a250cc6350dc052fbdfdf9a02066e7891" name="a250cc6350dc052fbdfdf9a02066e7891"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a250cc6350dc052fbdfdf9a02066e7891">◆ </a></span>m_jac_work</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">CppAD::sparse_jac_work gridfire::GraphEngine::m_jac_work</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel mutable">mutable</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Work object for sparse Jacobian calculations. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2f1718c89d4aaad028102724d18fa910" name="a2f1718c89d4aaad028102724d18fa910"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2f1718c89d4aaad028102724d18fa910">◆ </a></span>m_jacobianMatrix</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">boost::numeric::ublas::compressed_matrix<double> gridfire::GraphEngine::m_jacobianMatrix</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel mutable">mutable</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Jacobian matrix (species x species). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a483979fc154adc88d029b3b672066d53" name="a483979fc154adc88d029b3b672066d53"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a483979fc154adc88d029b3b672066d53">◆ </a></span>m_logger</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">quill::Logger* gridfire::GraphEngine::m_logger = LogManager::getInstance().getLogger("log")</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a92d26068ba139e47d335f5fe9e2814cc" name="a92d26068ba139e47d335f5fe9e2814cc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a92d26068ba139e47d335f5fe9e2814cc">◆ </a></span>m_networkSpecies</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector<fourdst::atomic::Species> gridfire::GraphEngine::m_networkSpecies</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Vector of unique species in the network. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a30e09ed0bce6aa5fc89beaa316a7b827" name="a30e09ed0bce6aa5fc89beaa316a7b827"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a30e09ed0bce6aa5fc89beaa316a7b827">◆ </a></span>m_networkSpeciesMap</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unordered_map<std::string_view, fourdst::atomic::Species> gridfire::GraphEngine::m_networkSpeciesMap</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Map from species name to Species object. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3621f36d77ea8c738ad7de6e5b35ca3e" name="a3621f36d77ea8c738ad7de6e5b35ca3e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3621f36d77ea8c738ad7de6e5b35ca3e">◆ </a></span>m_partitionFunction</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unique_ptr<<a class="el" href="classgridfire_1_1partition_1_1_partition_function.html">partition::PartitionFunction</a>> gridfire::GraphEngine::m_partitionFunction</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Partition function for the network. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5d431d5385b1219ba29689eb29601ea3" name="a5d431d5385b1219ba29689eb29601ea3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5d431d5385b1219ba29689eb29601ea3">◆ </a></span>m_precomputedReactions</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector<<a class="el" href="structgridfire_1_1_graph_engine_1_1_precomputed_reaction.html">PrecomputedReaction</a>> gridfire::GraphEngine::m_precomputedReactions</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Precomputed reactions for efficiency. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5d6cc63b99b467c2a976d1fbaaa1dfa3" name="a5d6cc63b99b467c2a976d1fbaaa1dfa3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5d6cc63b99b467c2a976d1fbaaa1dfa3">◆ </a></span>m_reactionIDMap</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unordered_map<std::string_view, <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a>*> gridfire::GraphEngine::m_reactionIDMap</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Map from reaction ID to REACLIBReaction. //PERF: This makes copies of REACLIBReaction and could be a performance bottleneck. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad3b97595871d1f62ee7f4726b601ebef" name="ad3b97595871d1f62ee7f4726b601ebef"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad3b97595871d1f62ee7f4726b601ebef">◆ </a></span>m_reactions</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="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> gridfire::GraphEngine::m_reactions</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Set of REACLIB reactions in the network. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2e22b111f6d00ecc9e3804a71f1ce876" name="a2e22b111f6d00ecc9e3804a71f1ce876"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2e22b111f6d00ecc9e3804a71f1ce876">◆ </a></span>m_rhsADFun</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">CppAD::ADFun<double> gridfire::GraphEngine::m_rhsADFun</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel mutable">mutable</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>CppAD function for the right-hand side of the ODE. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af17cf3762abac3efcab9a8e87c961210" name="af17cf3762abac3efcab9a8e87c961210"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af17cf3762abac3efcab9a8e87c961210">◆ </a></span>m_screeningModel</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unique_ptr<<a class="el" href="classgridfire_1_1screening_1_1_screening_model.html">screening::ScreeningModel</a>> gridfire::GraphEngine::m_screeningModel = <a class="el" href="namespacegridfire_1_1screening.html#a6ca8556d27ac373e176f5b23437c416e">screening::selectScreeningModel</a>(<a class="el" href="#a52edc3e88f1e8fc497e1e63972d63c80">m_screeningType</a>)</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a52edc3e88f1e8fc497e1e63972d63c80" name="a52edc3e88f1e8fc497e1e63972d63c80"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a52edc3e88f1e8fc497e1e63972d63c80">◆ </a></span>m_screeningType</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="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25">screening::ScreeningType</a> gridfire::GraphEngine::m_screeningType = <a class="el" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25ad80b95b1abb9c8659fa4cc9d3d29bb71">screening::ScreeningType::BARE</a></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Screening type for the reaction network. Default to no screening. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad8237c252145a75092202d00f5e1ddf7" name="ad8237c252145a75092202d00f5e1ddf7"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad8237c252145a75092202d00f5e1ddf7">◆ </a></span>m_speciesToIndexMap</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unordered_map<fourdst::atomic::Species, size_t> gridfire::GraphEngine::m_speciesToIndexMap</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Map from species to their index in the stoichiometry matrix. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad1cb5fd32efc37668e2d9ecf0c72ad24" name="ad1cb5fd32efc37668e2d9ecf0c72ad24"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad1cb5fd32efc37668e2d9ecf0c72ad24">◆ </a></span>m_stoichiometryMatrix</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">boost::numeric::ublas::compressed_matrix<int> gridfire::GraphEngine::m_stoichiometryMatrix</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Stoichiometry matrix (species x reactions). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a191cff35402d3c97c82c5c966a39d0de" name="a191cff35402d3c97c82c5c966a39d0de"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a191cff35402d3c97c82c5c966a39d0de">◆ </a></span>m_usePrecomputation</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::GraphEngine::m_usePrecomputation = true</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Flag to enable or disable using precomputed reactions for efficiency. Mathematically, this should not change the results. Generally end users should not need to change this. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a32d3efbf4c3d5158f87c0c732cdc26dc" name="a32d3efbf4c3d5158f87c0c732cdc26dc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a32d3efbf4c3d5158f87c0c732cdc26dc">◆ </a></span>m_useReverseReactions</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::GraphEngine::m_useReverseReactions = true</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Flag to enable or disable reverse reactions. If false, only forward reactions are considered. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9ac5893030802b0b846552949e866340" name="a9ac5893030802b0b846552949e866340"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9ac5893030802b0b846552949e866340">◆ </a></span>m_weakRateInterpolator</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="classgridfire_1_1rates_1_1weak_1_1_weak_rate_interpolator.html">rates::weak::WeakRateInterpolator</a> gridfire::GraphEngine::m_weakRateInterpolator</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Interpolator for weak reaction rates. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li>src/include/gridfire/engine/<a class="el" href="engine__graph_8h.html">engine_graph.h</a></li>
|
|
<li>src/lib/engine/<a class="el" href="engine__graph_8cpp.html">engine_graph.cpp</a></li>
|
|
</ul>
|
|
</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="namespacegridfire.html">gridfire</a></li><li class="navelem"><a class="el" href="classgridfire_1_1_graph_engine.html">GraphEngine</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>
|