3359 lines
208 KiB
HTML
3359 lines
208 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::engine::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"> v0.7.6rc4.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_1engine_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="#pri-types">Private Types</a> |
|
|
<a href="#pri-methods">Private Member Functions</a> |
|
|
<a href="#pri-attribs">Private Attributes</a> |
|
|
<a href="classgridfire_1_1engine_1_1_graph_engine-members.html">List of all members</a> </div>
|
|
<div class="headertitle"><div class="title">gridfire::engine::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::engine::GraphEngine:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="classgridfire_1_1engine_1_1_graph_engine__inherit__graph.svg" width="200" height="199"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
|
|
<div class="dynheader">
|
|
Collaboration diagram for gridfire::engine::GraphEngine:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classgridfire_1_1engine_1_1_graph_engine__coll__graph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></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_1engine_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_1engine_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_1engine_1_1_graph_engine_1_1_precomputation_kernel_results.html">PrecomputationKernelResults</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_1engine_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:a530a5563c5a7a76650edb1657868a289" id="r_a530a5563c5a7a76650edb1657868a289"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a530a5563c5a7a76650edb1657868a289">GraphEngine</a> (const fourdst::composition::Composition &composition, <a class="el" href="namespacegridfire_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">BuildDepthType</a>=<a class="el" href="namespacegridfire_1_1engine.html#a782fbc9eca00df10e4a204ae6da733e7abbd47109890259c0127154db1af26c75">NetworkBuildDepth::Full</a>)</td></tr>
|
|
<tr class="memdesc:a530a5563c5a7a76650edb1657868a289"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a <a class="el" href="classgridfire_1_1engine_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:a530a5563c5a7a76650edb1657868a289"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a885887bc4ff09c810e79eb68b79e7e2a" id="r_a885887bc4ff09c810e79eb68b79e7e2a"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a885887bc4ff09c810e79eb68b79e7e2a">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_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">BuildDepthType</a> buildDepth=<a class="el" href="namespacegridfire_1_1engine.html#a782fbc9eca00df10e4a204ae6da733e7abbd47109890259c0127154db1af26c75">NetworkBuildDepth::Full</a>)</td></tr>
|
|
<tr class="separator:a885887bc4ff09c810e79eb68b79e7e2a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad73fec5f24f5ee74020ca70cdaa104e3" id="r_ad73fec5f24f5ee74020ca70cdaa104e3"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad73fec5f24f5ee74020ca70cdaa104e3">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_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">BuildDepthType</a> buildDepth, <a class="el" href="namespacegridfire_1_1engine.html#a775506bb881280f73264db27cb8388f9">NetworkConstructionFlags</a> reactionTypes)</td></tr>
|
|
<tr class="separator:ad73fec5f24f5ee74020ca70cdaa104e3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a00f8aafa14ae665d8e556b35a7934587" id="r_a00f8aafa14ae665d8e556b35a7934587"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a00f8aafa14ae665d8e556b35a7934587">GraphEngine</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &reactions)</td></tr>
|
|
<tr class="memdesc:a00f8aafa14ae665d8e556b35a7934587"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a <a class="el" href="classgridfire_1_1engine_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:a00f8aafa14ae665d8e556b35a7934587"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0dca83ce5226859b6b605889aca8ecc9" id="r_a0dca83ce5226859b6b605889aca8ecc9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0dca83ce5226859b6b605889aca8ecc9">addReaction</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction)</td></tr>
|
|
<tr class="separator:a0dca83ce5226859b6b605889aca8ecc9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6288b4006fb9d43dc4ef199f3b9f91fe" id="r_a6288b4006fb9d43dc4ef199f3b9f91fe"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6288b4006fb9d43dc4ef199f3b9f91fe">addReaction</a> (const std::string &reaction_id)</td></tr>
|
|
<tr class="separator:a6288b4006fb9d43dc4ef199f3b9f91fe"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:acfe338ed3b10a4f116e58b2693a7fe10" id="r_acfe338ed3b10a4f116e58b2693a7fe10"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#acfe338ed3b10a4f116e58b2693a7fe10">constructStateBlob</a> (const <a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> *blob=nullptr) const override</td></tr>
|
|
<tr class="separator:acfe338ed3b10a4f116e58b2693a7fe10"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a474ba2ca2d24cb90ee73af042993dd14" id="r_a474ba2ca2d24cb90ee73af042993dd14"><td class="memItemLeft" align="right" valign="top">std::expected< <a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">engine::EngineStatus</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a474ba2ca2d24cb90ee73af042993dd14">calculateRHSAndEnergy</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho, bool trust) const override</td></tr>
|
|
<tr class="memdesc:a474ba2ca2d24cb90ee73af042993dd14"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the right-hand side (dY/dt) and energy generation rate. <br /></td></tr>
|
|
<tr class="separator:a474ba2ca2d24cb90ee73af042993dd14"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7bd6fbf8bc5256a3437ea2731fadf4e4" id="r_a7bd6fbf8bc5256a3437ea2731fadf4e4"><td class="memItemLeft" align="right" valign="top">std::expected< <a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7bd6fbf8bc5256a3437ea2731fadf4e4">calculateRHSAndEnergy</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &activeReactions) const</td></tr>
|
|
<tr class="memdesc:a7bd6fbf8bc5256a3437ea2731fadf4e4"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the right-hand side (dY/dt) and energy generation rate for a subset of reactions. <br /></td></tr>
|
|
<tr class="separator:a7bd6fbf8bc5256a3437ea2731fadf4e4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa265b90b5ec153e1e71acb2d0e8fad36" id="r_aa265b90b5ec153e1e71acb2d0e8fad36"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_energy_derivatives.html">EnergyDerivatives</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa265b90b5ec153e1e71acb2d0e8fad36">calculateEpsDerivatives</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:aa265b90b5ec153e1e71acb2d0e8fad36"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the derivatives of the energy generation rate with respect to temperature and density. <br /></td></tr>
|
|
<tr class="separator:aa265b90b5ec153e1e71acb2d0e8fad36"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a00398599c658d7c0cebfd15f6465ea7d" id="r_a00398599c658d7c0cebfd15f6465ea7d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_energy_derivatives.html">EnergyDerivatives</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a00398599c658d7c0cebfd15f6465ea7d">calculateEpsDerivatives</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &activeReactions) const</td></tr>
|
|
<tr class="memdesc:a00398599c658d7c0cebfd15f6465ea7d"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the derivatives of the energy generation rate with respect to temperature and density for a subset of reactions. <br /></td></tr>
|
|
<tr class="separator:a00398599c658d7c0cebfd15f6465ea7d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:acaef2178b6bd13ee478a9aa03bd12da9" id="r_acaef2178b6bd13ee478a9aa03bd12da9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#acaef2178b6bd13ee478a9aa03bd12da9">generate_jacobian_sparsity_pattern</a> ()</td></tr>
|
|
<tr class="separator:acaef2178b6bd13ee478a9aa03bd12da9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab7efbe72c39d2828eeed4e20f319a2c8" id="r_ab7efbe72c39d2828eeed4e20f319a2c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgridfire_1_1engine_1_1_network_jacobian.html">NetworkJacobian</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ab7efbe72c39d2828eeed4e20f319a2c8">generateJacobianMatrix</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:ab7efbe72c39d2828eeed4e20f319a2c8"><td class="mdescLeft"> </td><td class="mdescRight">Generates the Jacobian matrix for the current state. <br /></td></tr>
|
|
<tr class="separator:ab7efbe72c39d2828eeed4e20f319a2c8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a72130974401a22155dfd9a2e68192d56" id="r_a72130974401a22155dfd9a2e68192d56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgridfire_1_1engine_1_1_network_jacobian.html">NetworkJacobian</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a72130974401a22155dfd9a2e68192d56">generateJacobianMatrix</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho, const std::vector< fourdst::atomic::Species > &activeSpecies) const override</td></tr>
|
|
<tr class="memdesc:a72130974401a22155dfd9a2e68192d56"><td class="mdescLeft"> </td><td class="mdescRight">Generates the Jacobian matrix for the current state with a specified set of active species. generally this will be much faster than the full matrix generation. Here we use forward mode to generate the Jacobian only for the active species. <br /></td></tr>
|
|
<tr class="separator:a72130974401a22155dfd9a2e68192d56"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7704e02c04de922ae6b01f4ba2b88148" id="r_a7704e02c04de922ae6b01f4ba2b88148"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgridfire_1_1engine_1_1_network_jacobian.html">NetworkJacobian</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7704e02c04de922ae6b01f4ba2b88148">generateJacobianMatrix</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho, const <a class="el" href="namespacegridfire_1_1engine.html#a9de1791ec719c0a9b76b835703336870">SparsityPattern</a> &sparsityPattern) const override</td></tr>
|
|
<tr class="memdesc:a7704e02c04de922ae6b01f4ba2b88148"><td class="mdescLeft"> </td><td class="mdescRight">Generates the Jacobian matrix for the current state with a specified sparsity pattern. <br /></td></tr>
|
|
<tr class="separator:a7704e02c04de922ae6b01f4ba2b88148"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a154eda68e5df7f45b0e59b17761177b3" id="r_a154eda68e5df7f45b0e59b17761177b3"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#a154eda68e5df7f45b0e59b17761177b3">calculateMolarReactionFlow</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, const fourdst::composition::CompositionAbstract &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:a154eda68e5df7f45b0e59b17761177b3"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the molar reaction flow for a given reaction. <br /></td></tr>
|
|
<tr class="separator:a154eda68e5df7f45b0e59b17761177b3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6b7e2d8391114f25d74d986d919715c9" id="r_a6b7e2d8391114f25d74d986d919715c9"><td class="memItemLeft" align="right" valign="top">const std::vector< fourdst::atomic::Species > & </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6b7e2d8391114f25d74d986d919715c9">getNetworkSpecies</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx) const override</td></tr>
|
|
<tr class="memdesc:a6b7e2d8391114f25d74d986d919715c9"><td class="mdescLeft"> </td><td class="mdescRight">Gets the list of species in the network. <br /></td></tr>
|
|
<tr class="separator:a6b7e2d8391114f25d74d986d919715c9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a90e87465ba1e80af7124c0e4614d433b" id="r_a90e87465ba1e80af7124c0e4614d433b"><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="#a90e87465ba1e80af7124c0e4614d433b">getNetworkReactions</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &) const override</td></tr>
|
|
<tr class="memdesc:a90e87465ba1e80af7124c0e4614d433b"><td class="mdescLeft"> </td><td class="mdescRight">Gets the set of logical reactions in the network. <br /></td></tr>
|
|
<tr class="separator:a90e87465ba1e80af7124c0e4614d433b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a88ee4feaa851d047d110cd0949ed845f" id="r_a88ee4feaa851d047d110cd0949ed845f"><td class="memItemLeft" align="right" valign="top">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a88ee4feaa851d047d110cd0949ed845f">getSpeciesTimescales</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:a88ee4feaa851d047d110cd0949ed845f"><td class="mdescLeft"> </td><td class="mdescRight">Computes timescales for all species in the network. <br /></td></tr>
|
|
<tr class="separator:a88ee4feaa851d047d110cd0949ed845f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a39d800c17b054f10a47100b552364902" id="r_a39d800c17b054f10a47100b552364902"><td class="memItemLeft" align="right" valign="top">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a39d800c17b054f10a47100b552364902">getSpeciesTimescales</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &activeReactions) const</td></tr>
|
|
<tr class="memdesc:a39d800c17b054f10a47100b552364902"><td class="mdescLeft"> </td><td class="mdescRight">Computes timescales for all species in the network considering a subset of reactions. <br /></td></tr>
|
|
<tr class="separator:a39d800c17b054f10a47100b552364902"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a32ab9175e93ae29f87b0903400cb3521" id="r_a32ab9175e93ae29f87b0903400cb3521"><td class="memItemLeft" align="right" valign="top">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a32ab9175e93ae29f87b0903400cb3521">getSpeciesDestructionTimescales</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:a32ab9175e93ae29f87b0903400cb3521"><td class="mdescLeft"> </td><td class="mdescRight">Computes destruction timescales for all species in the network. <br /></td></tr>
|
|
<tr class="separator:a32ab9175e93ae29f87b0903400cb3521"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae2a9f08ef597884e61a7d8e53c23ef17" id="r_ae2a9f08ef597884e61a7d8e53c23ef17"><td class="memItemLeft" align="right" valign="top">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae2a9f08ef597884e61a7d8e53c23ef17">getSpeciesDestructionTimescales</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const fourdst::composition::CompositionAbstract &comp, double T9, double rho, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &activeReactions) const</td></tr>
|
|
<tr class="memdesc:ae2a9f08ef597884e61a7d8e53c23ef17"><td class="mdescLeft"> </td><td class="mdescRight">Computes destruction timescales for all species in the network considering a subset of reactions. <br /></td></tr>
|
|
<tr class="separator:ae2a9f08ef597884e61a7d8e53c23ef17"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a58221a92813e13e43de48525980301d4" id="r_a58221a92813e13e43de48525980301d4"><td class="memItemLeft" align="right" valign="top">fourdst::composition::Composition </td><td class="memItemRight" valign="bottom"><a class="el" href="#a58221a92813e13e43de48525980301d4">project</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) const override</td></tr>
|
|
<tr class="memdesc:a58221a92813e13e43de48525980301d4"><td class="mdescLeft"> </td><td class="mdescRight">Updates the state of the network and the composition to be usable for the current network. <br /></td></tr>
|
|
<tr class="separator:a58221a92813e13e43de48525980301d4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6c231f340fe4add5dce308a79cc0f136" id="r_a6c231f340fe4add5dce308a79cc0f136"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6c231f340fe4add5dce308a79cc0f136">involvesSpecies</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const fourdst::atomic::Species &species) const</td></tr>
|
|
<tr class="memdesc:a6c231f340fe4add5dce308a79cc0f136"><td class="mdescLeft"> </td><td class="mdescRight">Checks if a given species is involved in the network. <br /></td></tr>
|
|
<tr class="separator:a6c231f340fe4add5dce308a79cc0f136"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac5f6bbc54d65a974dce4ad407617779a" id="r_ac5f6bbc54d65a974dce4ad407617779a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac5f6bbc54d65a974dce4ad407617779a">exportToDot</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const std::string &filename) const</td></tr>
|
|
<tr class="memdesc:ac5f6bbc54d65a974dce4ad407617779a"><td class="mdescLeft"> </td><td class="mdescRight">Exports the network to a DOT file for visualization. <br /></td></tr>
|
|
<tr class="separator:ac5f6bbc54d65a974dce4ad407617779a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adab81a7a56e2d9fd1ca46c20bf971912" id="r_adab81a7a56e2d9fd1ca46c20bf971912"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#adab81a7a56e2d9fd1ca46c20bf971912">exportToCSV</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const std::string &filename) const</td></tr>
|
|
<tr class="memdesc:adab81a7a56e2d9fd1ca46c20bf971912"><td class="mdescLeft"> </td><td class="mdescRight">Exports the network to a CSV file for analysis. <br /></td></tr>
|
|
<tr class="separator:adab81a7a56e2d9fd1ca46c20bf971912"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a69b478b15844d145219c9c5a4e515e59" id="r_a69b478b15844d145219c9c5a4e515e59"><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="#a69b478b15844d145219c9c5a4e515e59">getScreeningModel</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx) const override</td></tr>
|
|
<tr class="memdesc:a69b478b15844d145219c9c5a4e515e59"><td class="mdescLeft"> </td><td class="mdescRight">Gets the current electron screening model. <br /></td></tr>
|
|
<tr class="separator:a69b478b15844d145219c9c5a4e515e59"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adc9e6e5d8bab57ff2823ad01653cf9f5" id="r_adc9e6e5d8bab57ff2823ad01653cf9f5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#adc9e6e5d8bab57ff2823ad01653cf9f5">isPrecomputationEnabled</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx) const</td></tr>
|
|
<tr class="memdesc:adc9e6e5d8bab57ff2823ad01653cf9f5"><td class="mdescLeft"> </td><td class="mdescRight">Checks if precomputation of reaction rates is enabled. <br /></td></tr>
|
|
<tr class="separator:adc9e6e5d8bab57ff2823ad01653cf9f5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3ef1320e4fb1160d37f93e3eefd38c50" id="r_a3ef1320e4fb1160d37f93e3eefd38c50"><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="#a3ef1320e4fb1160d37f93e3eefd38c50">getPartitionFunction</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx) const</td></tr>
|
|
<tr class="memdesc:a3ef1320e4fb1160d37f93e3eefd38c50"><td class="mdescLeft"> </td><td class="mdescRight">Gets the partition function used for reaction rate calculations. <br /></td></tr>
|
|
<tr class="separator:a3ef1320e4fb1160d37f93e3eefd38c50"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4dd5733c77e9a7ad8b5e541c187fabae" id="r_a4dd5733c77e9a7ad8b5e541c187fabae"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4dd5733c77e9a7ad8b5e541c187fabae">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::CompositionAbstract &comp) const</td></tr>
|
|
<tr class="memdesc:a4dd5733c77e9a7ad8b5e541c187fabae"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the reverse rate for a given reaction. <br /></td></tr>
|
|
<tr class="separator:a4dd5733c77e9a7ad8b5e541c187fabae"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa6b07108beeab1bc75c3099c25be7833" id="r_aa6b07108beeab1bc75c3099c25be7833"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa6b07108beeab1bc75c3099c25be7833">calculateReverseRateTwoBody</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, double T9, double forwardRate, double expFactor) const</td></tr>
|
|
<tr class="memdesc:aa6b07108beeab1bc75c3099c25be7833"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the reverse rate for a two-body reaction. <br /></td></tr>
|
|
<tr class="separator:aa6b07108beeab1bc75c3099c25be7833"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a83ef40080c62d667b3fee71237efd2e0" id="r_a83ef40080c62d667b3fee71237efd2e0"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#a83ef40080c62d667b3fee71237efd2e0">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="memdesc:a83ef40080c62d667b3fee71237efd2e0"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the derivative of the reverse rate for a two-body reaction with respect to temperature. <br /></td></tr>
|
|
<tr class="separator:a83ef40080c62d667b3fee71237efd2e0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af61c53c080637d8d601c0def9942a901" id="r_af61c53c080637d8d601c0def9942a901"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#af61c53c080637d8d601c0def9942a901">isUsingReverseReactions</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx) const</td></tr>
|
|
<tr class="memdesc:af61c53c080637d8d601c0def9942a901"><td class="mdescLeft"> </td><td class="mdescRight">Checks if reverse reactions are enabled. <br /></td></tr>
|
|
<tr class="separator:af61c53c080637d8d601c0def9942a901"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4d339f84e5f44af004b14d69ce10ee21" id="r_a4d339f84e5f44af004b14d69ce10ee21"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4d339f84e5f44af004b14d69ce10ee21">getSpeciesIndex</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const fourdst::atomic::Species &species) const override</td></tr>
|
|
<tr class="memdesc:a4d339f84e5f44af004b14d69ce10ee21"><td class="mdescLeft"> </td><td class="mdescRight">Gets the index of a species in the network. <br /></td></tr>
|
|
<tr class="separator:a4d339f84e5f44af004b14d69ce10ee21"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab77179dadc7c41551f8eb4a3321283d4" id="r_ab77179dadc7c41551f8eb4a3321283d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_priming_report.html">PrimingReport</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ab77179dadc7c41551f8eb4a3321283d4">primeEngine</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const <a class="el" href="structgridfire_1_1_net_in.html">NetIn</a> &netIn) const override</td></tr>
|
|
<tr class="memdesc:ab77179dadc7c41551f8eb4a3321283d4"><td class="mdescLeft"> </td><td class="mdescRight">Prepares the engine for calculations with initial conditions. <br /></td></tr>
|
|
<tr class="separator:ab77179dadc7c41551f8eb4a3321283d4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1c977a772eedae1cceeb6b50d984fde4" id="r_a1c977a772eedae1cceeb6b50d984fde4"><td class="memItemLeft" align="right" valign="top">fourdst::composition::Composition </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1c977a772eedae1cceeb6b50d984fde4">collectComposition</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::composition::CompositionAbstract &comp, double T9, double rho) const override</td></tr>
|
|
<tr class="memdesc:a1c977a772eedae1cceeb6b50d984fde4"><td class="mdescLeft"> </td><td class="mdescRight">This will return the input comp with the molar abundances of any species not registered in that but registered in the engine active species set to 0.0. <br /></td></tr>
|
|
<tr class="separator:a1c977a772eedae1cceeb6b50d984fde4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a763332410f64d2492785d2053bdad5fe" id="r_a763332410f64d2492785d2053bdad5fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegridfire_1_1engine.html#a83c9d755597668bba3cf00cd0ea10ee3">SpeciesStatus</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a763332410f64d2492785d2053bdad5fe">getSpeciesStatus</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &, const fourdst::atomic::Species &species) const override</td></tr>
|
|
<tr class="memdesc:a763332410f64d2492785d2053bdad5fe"><td class="mdescLeft"> </td><td class="mdescRight">Gets the status of a species in the network. <br /></td></tr>
|
|
<tr class="separator:a763332410f64d2492785d2053bdad5fe"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a769ac1cbf84d20afe66598aa325e7f7c" id="r_a769ac1cbf84d20afe66598aa325e7f7c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a769ac1cbf84d20afe66598aa325e7f7c">get_store_intermediate_reaction_contributions</a> () const</td></tr>
|
|
<tr class="separator:a769ac1cbf84d20afe66598aa325e7f7c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac1958cc24ff3c69eac7b5b9e7bb6e510" id="r_ac1958cc24ff3c69eac7b5b9e7bb6e510"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac1958cc24ff3c69eac7b5b9e7bb6e510">set_store_intermediate_reaction_contributions</a> (const bool value)</td></tr>
|
|
<tr class="separator:ac1958cc24ff3c69eac7b5b9e7bb6e510"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0e484a5fcabc2ced4552e92078fcc03d" id="r_a0e484a5fcabc2ced4552e92078fcc03d"><td class="memItemLeft" align="right" valign="top">std::optional< <a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double > > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0e484a5fcabc2ced4552e92078fcc03d">getMostRecentRHSCalculation</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &) const override</td></tr>
|
|
<tr class="separator:a0e484a5fcabc2ced4552e92078fcc03d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0faf9ad41f916c09e65d58890a854248" id="r_a0faf9ad41f916c09e65d58890a854248"><td class="memItemLeft" align="right" valign="top">const CppAD::ADFun< double > & </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0faf9ad41f916c09e65d58890a854248">getAuthoritativeADFun</a> () const</td></tr>
|
|
<tr class="separator:a0faf9ad41f916c09e65d58890a854248"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a23187ad3ee504de46f59e1644c715c9f" id="r_a23187ad3ee504de46f59e1644c715c9f"><td class="memTemplParams" colspan="2">template<IsArithmeticOrAD T> </td></tr>
|
|
<tr class="memitem:a23187ad3ee504de46f59e1644c715c9f"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a23187ad3ee504de46f59e1644c715c9f">calculateAllDerivatives</a> (const std::vector< T > &Y_in, const T T9, const T rho, const T Ye, const T mue, const std::function< std::optional< size_t >(const fourdst::atomic::Species &)> speciesLookup, const std::function< bool(const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &)> &reactionLookup) const</td></tr>
|
|
<tr class="separator:a23187ad3ee504de46f59e1644c715c9f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_methods_classgridfire_1_1engine_1_1_dynamic_engine"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classgridfire_1_1engine_1_1_dynamic_engine')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html">gridfire::engine::DynamicEngine</a></td></tr>
|
|
<tr class="memitem:ac87099ff654ca30a8d8224f4779e1a15 inherit pub_methods_classgridfire_1_1engine_1_1_dynamic_engine" id="r_ac87099ff654ca30a8d8224f4779e1a15"><td class="memItemLeft" align="right" valign="top">virtual <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="classgridfire_1_1engine_1_1_dynamic_engine.html#ac87099ff654ca30a8d8224f4779e1a15">getInactiveNetworkReactions</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx) const</td></tr>
|
|
<tr class="memdesc:ac87099ff654ca30a8d8224f4779e1a15 inherit pub_methods_classgridfire_1_1engine_1_1_dynamic_engine"><td class="mdescLeft"> </td><td class="mdescRight">Get the set of inactive reactions in the network. <br /></td></tr>
|
|
<tr class="separator:ac87099ff654ca30a8d8224f4779e1a15 inherit pub_methods_classgridfire_1_1engine_1_1_dynamic_engine"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adc0a33fa6e9d8de3b433fef55f3a6972 inherit pub_methods_classgridfire_1_1engine_1_1_dynamic_engine" id="r_adc0a33fa6e9d8de3b433fef55f3a6972"><td class="memItemLeft" align="right" valign="top">virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#adc0a33fa6e9d8de3b433fef55f3a6972">getInactiveReactionMolarReactionFlow</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, const fourdst::composition::CompositionAbstract &comp, const double T9, const double rho) const</td></tr>
|
|
<tr class="separator:adc0a33fa6e9d8de3b433fef55f3a6972 inherit pub_methods_classgridfire_1_1engine_1_1_dynamic_engine"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="inherit_header pub_methods_classgridfire_1_1engine_1_1_engine"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classgridfire_1_1engine_1_1_engine')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classgridfire_1_1engine_1_1_engine.html">gridfire::engine::Engine</a></td></tr>
|
|
<tr class="memitem:af0ea99416c28933d364a872fc6aff556 inherit pub_methods_classgridfire_1_1engine_1_1_engine" id="r_af0ea99416c28933d364a872fc6aff556"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1_engine.html#af0ea99416c28933d364a872fc6aff556">~Engine</a> ()=default</td></tr>
|
|
<tr class="memdesc:af0ea99416c28933d364a872fc6aff556 inherit pub_methods_classgridfire_1_1engine_1_1_engine"><td class="mdescLeft"> </td><td class="mdescRight">Virtual destructor. <br /></td></tr>
|
|
<tr class="separator:af0ea99416c28933d364a872fc6aff556 inherit pub_methods_classgridfire_1_1engine_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="pri-types" name="pri-types"></a>
|
|
Private Types</h2></td></tr>
|
|
<tr class="memitem:a19305dc4affde99bb84056c9eeda9f1e" id="r_a19305dc4affde99bb84056c9eeda9f1e"><td class="memItemLeft" align="right" valign="top">enum class  </td><td class="memItemRight" valign="bottom"><a class="el" href="#a19305dc4affde99bb84056c9eeda9f1e">JacobianMatrixState</a> { <a class="el" href="#a19305dc4affde99bb84056c9eeda9f1eadd652546039b18970b8dcf2cff824268">UNINITIALIZED</a>
|
|
, <a class="el" href="#a19305dc4affde99bb84056c9eeda9f1ea4d855a061b3066dc14a3b12ed26b5456">STALE</a>
|
|
, <a class="el" href="#a19305dc4affde99bb84056c9eeda9f1ea162cb379760275c9685281ee27025cdb">READY_DENSE</a>
|
|
, <a class="el" href="#a19305dc4affde99bb84056c9eeda9f1eabf43af1b1ac8bc6cb42296815a429ae3">READY_SPARSE</a>
|
|
}</td></tr>
|
|
<tr class="separator:a19305dc4affde99bb84056c9eeda9f1e"><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:a9af928bf8a5327d3cb45254c0e59f914" id="r_a9af928bf8a5327d3cb45254c0e59f914"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9af928bf8a5327d3cb45254c0e59f914">syncInternalMaps</a> ()</td></tr>
|
|
<tr class="memdesc:a9af928bf8a5327d3cb45254c0e59f914"><td class="mdescLeft"> </td><td class="mdescRight">Synchronizes the internal maps. <br /></td></tr>
|
|
<tr class="separator:a9af928bf8a5327d3cb45254c0e59f914"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8f29c77e777fdc6517f2c7778537ba6f" id="r_a8f29c77e777fdc6517f2c7778537ba6f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8f29c77e777fdc6517f2c7778537ba6f">collectNetworkSpecies</a> ()</td></tr>
|
|
<tr class="memdesc:a8f29c77e777fdc6517f2c7778537ba6f"><td class="mdescLeft"> </td><td class="mdescRight">Collects the unique species in the network. <br /></td></tr>
|
|
<tr class="separator:a8f29c77e777fdc6517f2c7778537ba6f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6ccfb1813ce5b5c9568434f47e06726a" id="r_a6ccfb1813ce5b5c9568434f47e06726a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6ccfb1813ce5b5c9568434f47e06726a">populateReactionIDMap</a> ()</td></tr>
|
|
<tr class="memdesc:a6ccfb1813ce5b5c9568434f47e06726a"><td class="mdescLeft"> </td><td class="mdescRight">Populates the reaction ID map. <br /></td></tr>
|
|
<tr class="separator:a6ccfb1813ce5b5c9568434f47e06726a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7e5c8d9b996e5bc7fc130d34dd196a4b" id="r_a7e5c8d9b996e5bc7fc130d34dd196a4b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7e5c8d9b996e5bc7fc130d34dd196a4b">populateSpeciesToIndexMap</a> ()</td></tr>
|
|
<tr class="memdesc:a7e5c8d9b996e5bc7fc130d34dd196a4b"><td class="mdescLeft"> </td><td class="mdescRight">Populates the species-to-index map. <br /></td></tr>
|
|
<tr class="separator:a7e5c8d9b996e5bc7fc130d34dd196a4b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af9cba639f9eeac0b746ef073670292e6" id="r_af9cba639f9eeac0b746ef073670292e6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#af9cba639f9eeac0b746ef073670292e6">recordADTape</a> ()</td></tr>
|
|
<tr class="memdesc:af9cba639f9eeac0b746ef073670292e6"><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:af9cba639f9eeac0b746ef073670292e6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5fadd1bb2692e1527ce24295c77cfc72" id="r_a5fadd1bb2692e1527ce24295c77cfc72"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a5fadd1bb2692e1527ce24295c77cfc72">collectAtomicReverseRateAtomicBases</a> ()</td></tr>
|
|
<tr class="separator:a5fadd1bb2692e1527ce24295c77cfc72"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac7814b9922c7fee4c5a2649127dcdadc" id="r_ac7814b9922c7fee4c5a2649127dcdadc"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac7814b9922c7fee4c5a2649127dcdadc">precomputeNetwork</a> ()</td></tr>
|
|
<tr class="separator:ac7814b9922c7fee4c5a2649127dcdadc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad6b75b38b3c67276ad5fe254a36bf8f6" id="r_ad6b75b38b3c67276ad5fe254a36bf8f6"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad6b75b38b3c67276ad5fe254a36bf8f6">compute_reaction_flow</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const std::vector< double > &local_abundances, const std::vector< double > &screening_factors, const std::vector< double > &bare_rates, const std::vector< double > &bare_reverse_rates, double rho, size_t reactionCounter, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, size_t reactionIndex, const <a class="el" href="structgridfire_1_1engine_1_1_graph_engine_1_1_precomputed_reaction.html">PrecomputedReaction</a> &precomputedReaction) const</td></tr>
|
|
<tr class="separator:ad6b75b38b3c67276ad5fe254a36bf8f6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a698cbb0c4e0028924b116906787e342a" id="r_a698cbb0c4e0028924b116906787e342a"><td class="memItemLeft" align="right" valign="top">std::pair< double, double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a698cbb0c4e0028924b116906787e342a">compute_neutrino_fluxes</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, double netFlow, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction) const</td></tr>
|
|
<tr class="separator:a698cbb0c4e0028924b116906787e342a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab5c4f7868ccd28fcf256e1e252c78517" id="r_ab5c4f7868ccd28fcf256e1e252c78517"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_graph_engine_1_1_precomputation_kernel_results.html">PrecomputationKernelResults</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ab5c4f7868ccd28fcf256e1e252c78517">accumulate_flows_serial</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const std::vector< double > &local_abundances, const std::vector< double > &screening_factors, const std::vector< double > &bare_rates, const std::vector< double > &bare_reverse_rates, double rho, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &activeReactions) const</td></tr>
|
|
<tr class="separator:ab5c4f7868ccd28fcf256e1e252c78517"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad3ab19d036a9f1484f527442b2dad958" id="r_ad3ab19d036a9f1484f527442b2dad958"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad3ab19d036a9f1484f527442b2dad958">calculateAllDerivativesUsingPrecomputation</a> (<a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &ctx, const fourdst::composition::CompositionAbstract &comp, const std::vector< double > &bare_rates, const std::vector< double > &bare_reverse_rates, double T9, double rho, const <a class="el" href="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &activeReactions) const</td></tr>
|
|
<tr class="separator:ad3ab19d036a9f1484f527442b2dad958"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aab80f2ab29ad9c7867e75e499148aa1f" id="r_aab80f2ab29ad9c7867e75e499148aa1f"><td class="memTemplParams" colspan="2">template<IsArithmeticOrAD T> </td></tr>
|
|
<tr class="memitem:aab80f2ab29ad9c7867e75e499148aa1f"><td class="memTemplItemLeft" align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aab80f2ab29ad9c7867e75e499148aa1f">calculateMolarReactionFlow</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &reaction, const std::vector< T > &Y, T T9, T rho, T Ye, T mue, const std::function< std::optional< size_t >(const fourdst::atomic::Species &)> &speciesIDLookup) const</td></tr>
|
|
<tr class="memdesc:aab80f2ab29ad9c7867e75e499148aa1f"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the molar reaction flow for a given reaction. <br /></td></tr>
|
|
<tr class="separator:aab80f2ab29ad9c7867e75e499148aa1f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2e7012382ee44473478ebc37ac36695c" id="r_a2e7012382ee44473478ebc37ac36695c"><td class="memTemplParams" colspan="2">template<IsArithmeticOrAD T> </td></tr>
|
|
<tr class="memitem:a2e7012382ee44473478ebc37ac36695c"><td class="memTemplItemLeft" align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a2e7012382ee44473478ebc37ac36695c">calculateReverseMolarReactionFlow</a> (T T9, 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:a2e7012382ee44473478ebc37ac36695c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5970c97be4c7b5b764ce1155b5c7f870" id="r_a5970c97be4c7b5b764ce1155b5c7f870"><td class="memTemplParams" colspan="2">template<IsArithmeticOrAD T> </td></tr>
|
|
<tr class="memitem:a5970c97be4c7b5b764ce1155b5c7f870"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a5970c97be4c7b5b764ce1155b5c7f870">calculateAllDerivatives</a> (const std::vector< T > &Y_in, T T9, T rho, T Ye, T mue, std::function< std::optional< size_t >(const fourdst::atomic::Species &)> speciesLookup, const std::function< bool(const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &)> &reactionLookup) const</td></tr>
|
|
<tr class="memdesc:a5970c97be4c7b5b764ce1155b5c7f870"><td class="mdescLeft"> </td><td class="mdescRight">Calculates all derivatives (dY/dt) and the energy generation rate. <br /></td></tr>
|
|
<tr class="separator:a5970c97be4c7b5b764ce1155b5c7f870"><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:a0a8d12341ecf52446faef9dd8c7dc81e" id="r_a0a8d12341ecf52446faef9dd8c7dc81e"><td class="memItemLeft" align="right" valign="top">std::unordered_map< <a class="el" href="#a19305dc4affde99bb84056c9eeda9f1e">JacobianMatrixState</a>, std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0a8d12341ecf52446faef9dd8c7dc81e">m_jacobianMatrixStateNameMap</a></td></tr>
|
|
<tr class="separator:a0a8d12341ecf52446faef9dd8c7dc81e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a77527b049b97b2611f5da5279780f5ec" id="r_a77527b049b97b2611f5da5279780f5ec"><td class="memItemLeft" align="right" valign="top">Config< <a class="el" href="structgridfire_1_1config_1_1_grid_fire_config.html">config::GridFireConfig</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a77527b049b97b2611f5da5279780f5ec">m_config</a></td></tr>
|
|
<tr class="separator:a77527b049b97b2611f5da5279780f5ec"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8a121839fe3a7a35e4214fd20e753f9f" id="r_a8a121839fe3a7a35e4214fd20e753f9f"><td class="memItemLeft" align="right" valign="top">quill::Logger * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8a121839fe3a7a35e4214fd20e753f9f">m_logger</a> = LogManager::getInstance().getLogger("log")</td></tr>
|
|
<tr class="separator:a8a121839fe3a7a35e4214fd20e753f9f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aab2701ed1d1262071072175647674b43" id="r_aab2701ed1d1262071072175647674b43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1engine_1_1_graph_engine_1_1constants.html">constants</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#aab2701ed1d1262071072175647674b43">m_constants</a></td></tr>
|
|
<tr class="separator:aab2701ed1d1262071072175647674b43"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4fd4daf4f4ef658e7c0617223a74d824" id="r_a4fd4daf4f4ef658e7c0617223a74d824"><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="#a4fd4daf4f4ef658e7c0617223a74d824">m_weakRateInterpolator</a></td></tr>
|
|
<tr class="memdesc:a4fd4daf4f4ef658e7c0617223a74d824"><td class="mdescLeft"> </td><td class="mdescRight">Interpolator for weak reaction rates. <br /></td></tr>
|
|
<tr class="separator:a4fd4daf4f4ef658e7c0617223a74d824"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a249a9237865b0cf6906b360e4cb7c1ec" id="r_a249a9237865b0cf6906b360e4cb7c1ec"><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="#a249a9237865b0cf6906b360e4cb7c1ec">m_reactions</a></td></tr>
|
|
<tr class="memdesc:a249a9237865b0cf6906b360e4cb7c1ec"><td class="mdescLeft"> </td><td class="mdescRight">Set of REACLIB reactions in the network. <br /></td></tr>
|
|
<tr class="separator:a249a9237865b0cf6906b360e4cb7c1ec"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af7dab9063bb92aac64b6dfa755074739" id="r_af7dab9063bb92aac64b6dfa755074739"><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="#af7dab9063bb92aac64b6dfa755074739">m_reactionIDMap</a></td></tr>
|
|
<tr class="memdesc:af7dab9063bb92aac64b6dfa755074739"><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:af7dab9063bb92aac64b6dfa755074739"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a544299e2495c6cac339b767e932e37b3" id="r_a544299e2495c6cac339b767e932e37b3"><td class="memItemLeft" align="right" valign="top">std::vector< fourdst::atomic::Species > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a544299e2495c6cac339b767e932e37b3">m_networkSpecies</a></td></tr>
|
|
<tr class="memdesc:a544299e2495c6cac339b767e932e37b3"><td class="mdescLeft"> </td><td class="mdescRight">Vector of unique species in the network. <br /></td></tr>
|
|
<tr class="separator:a544299e2495c6cac339b767e932e37b3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3413c72ee010534a510160e38c3b2a0c" id="r_a3413c72ee010534a510160e38c3b2a0c"><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="#a3413c72ee010534a510160e38c3b2a0c">m_networkSpeciesMap</a></td></tr>
|
|
<tr class="memdesc:a3413c72ee010534a510160e38c3b2a0c"><td class="mdescLeft"> </td><td class="mdescRight">Map from species name to Species object. <br /></td></tr>
|
|
<tr class="separator:a3413c72ee010534a510160e38c3b2a0c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2421bbbdcc9fb02d9cb6e584da393c83" id="r_a2421bbbdcc9fb02d9cb6e584da393c83"><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="#a2421bbbdcc9fb02d9cb6e584da393c83">m_speciesToIndexMap</a></td></tr>
|
|
<tr class="memdesc:a2421bbbdcc9fb02d9cb6e584da393c83"><td class="mdescLeft"> </td><td class="mdescRight">Map from species to their index in the stoichiometry matrix. <br /></td></tr>
|
|
<tr class="separator:a2421bbbdcc9fb02d9cb6e584da393c83"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aac9f28dd58bc0d40a643885c95c2ab52" id="r_aac9f28dd58bc0d40a643885c95c2ab52"><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="#aac9f28dd58bc0d40a643885c95c2ab52">m_indexToSpeciesMap</a></td></tr>
|
|
<tr class="memdesc:aac9f28dd58bc0d40a643885c95c2ab52"><td class="mdescLeft"> </td><td class="mdescRight">Map from index to species in the stoichiometry matrix. <br /></td></tr>
|
|
<tr class="separator:aac9f28dd58bc0d40a643885c95c2ab52"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9f0e38be889a964d0b6e62934a1220db" id="r_a9f0e38be889a964d0b6e62934a1220db"><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="#a9f0e38be889a964d0b6e62934a1220db">m_partitionFunction</a></td></tr>
|
|
<tr class="memdesc:a9f0e38be889a964d0b6e62934a1220db"><td class="mdescLeft"> </td><td class="mdescRight">Partition function for the network. <br /></td></tr>
|
|
<tr class="separator:a9f0e38be889a964d0b6e62934a1220db"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a636caa7f8085153424e17dc6e343a326" id="r_a636caa7f8085153424e17dc6e343a326"><td class="memItemLeft" align="right" valign="top">CppAD::sparse_rc< std::vector< size_t > > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a636caa7f8085153424e17dc6e343a326">m_full_jacobian_sparsity_pattern</a></td></tr>
|
|
<tr class="memdesc:a636caa7f8085153424e17dc6e343a326"><td class="mdescLeft"> </td><td class="mdescRight">Full sparsity pattern for the Jacobian matrix. <br /></td></tr>
|
|
<tr class="separator:a636caa7f8085153424e17dc6e343a326"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af68112da3edc1a8c88289b8e7242180e" id="r_af68112da3edc1a8c88289b8e7242180e"><td class="memItemLeft" align="right" valign="top">std::set< std::pair< size_t, size_t > > </td><td class="memItemRight" valign="bottom"><a class="el" href="#af68112da3edc1a8c88289b8e7242180e">m_full_sparsity_set</a></td></tr>
|
|
<tr class="memdesc:af68112da3edc1a8c88289b8e7242180e"><td class="mdescLeft"> </td><td class="mdescRight">For quick lookups of the base sparsity pattern. <br /></td></tr>
|
|
<tr class="separator:af68112da3edc1a8c88289b8e7242180e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac02ff3a8828e281209013f5c564083d0" id="r_ac02ff3a8828e281209013f5c564083d0"><td class="memItemLeft" align="right" valign="top">std::vector< std::unique_ptr< <a class="el" href="classgridfire_1_1engine_1_1_graph_engine_1_1_atomic_reverse_rate.html">AtomicReverseRate</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac02ff3a8828e281209013f5c564083d0">m_atomicReverseRates</a></td></tr>
|
|
<tr class="separator:ac02ff3a8828e281209013f5c564083d0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:abdff5b7eeb73ed327ba6b758038ef776" id="r_abdff5b7eeb73ed327ba6b758038ef776"><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="#abdff5b7eeb73ed327ba6b758038ef776">m_screeningType</a> = <a class="el" href="namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25ad80b95b1abb9c8659fa4cc9d3d29bb71">screening::ScreeningType::BARE</a></td></tr>
|
|
<tr class="memdesc:abdff5b7eeb73ed327ba6b758038ef776"><td class="mdescLeft"> </td><td class="mdescRight">Screening type for the reaction network. Default to no screening. <br /></td></tr>
|
|
<tr class="separator:abdff5b7eeb73ed327ba6b758038ef776"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3e91570fbffc48748ad352e4554a728b" id="r_a3e91570fbffc48748ad352e4554a728b"><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="#a3e91570fbffc48748ad352e4554a728b">m_screeningModel</a> = <a class="el" href="namespacegridfire_1_1screening.html#a6ca8556d27ac373e176f5b23437c416e">screening::selectScreeningModel</a>(<a class="el" href="#abdff5b7eeb73ed327ba6b758038ef776">m_screeningType</a>)</td></tr>
|
|
<tr class="separator:a3e91570fbffc48748ad352e4554a728b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1f4e11a70ce65d544e9800d552a65cc8" id="r_a1f4e11a70ce65d544e9800d552a65cc8"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1f4e11a70ce65d544e9800d552a65cc8">m_usePrecomputation</a> = true</td></tr>
|
|
<tr class="memdesc:a1f4e11a70ce65d544e9800d552a65cc8"><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:a1f4e11a70ce65d544e9800d552a65cc8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0afa15c074fa830e00d981c5786d3ac1" id="r_a0afa15c074fa830e00d981c5786d3ac1"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="structgridfire_1_1engine_1_1_graph_engine_1_1_precomputed_reaction.html">PrecomputedReaction</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0afa15c074fa830e00d981c5786d3ac1">m_precomputed_reactions</a></td></tr>
|
|
<tr class="separator:a0afa15c074fa830e00d981c5786d3ac1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2f2e2c700288af48f6fe50a61bb86624" id="r_a2f2e2c700288af48f6fe50a61bb86624"><td class="memItemLeft" align="right" valign="top">std::unordered_map< uint64_t, size_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a2f2e2c700288af48f6fe50a61bb86624">m_precomputed_reaction_index_map</a></td></tr>
|
|
<tr class="separator:a2f2e2c700288af48f6fe50a61bb86624"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac9a0d4d0eec32145bf8f2b688a1d988d" id="r_ac9a0d4d0eec32145bf8f2b688a1d988d"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac9a0d4d0eec32145bf8f2b688a1d988d">m_useReverseReactions</a> = false</td></tr>
|
|
<tr class="memdesc:ac9a0d4d0eec32145bf8f2b688a1d988d"><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:ac9a0d4d0eec32145bf8f2b688a1d988d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aadd0e4ba48fa8daaff3372cb5efa5dcb" id="r_aadd0e4ba48fa8daaff3372cb5efa5dcb"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#aadd0e4ba48fa8daaff3372cb5efa5dcb">m_store_intermediate_reaction_contributions</a> = false</td></tr>
|
|
<tr class="memdesc:aadd0e4ba48fa8daaff3372cb5efa5dcb"><td class="mdescLeft"> </td><td class="mdescRight">Flag to enable or disable storing intermediate reaction contributions for debugging. <br /></td></tr>
|
|
<tr class="separator:aadd0e4ba48fa8daaff3372cb5efa5dcb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae2fef545142356c7f2f2f5ae3cba6d90" id="r_ae2fef545142356c7f2f2f5ae3cba6d90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegridfire_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">BuildDepthType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae2fef545142356c7f2f2f5ae3cba6d90">m_depth</a></td></tr>
|
|
<tr class="separator:ae2fef545142356c7f2f2f5ae3cba6d90"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a83fa78621f43397373f35108f580abab" id="r_a83fa78621f43397373f35108f580abab"><td class="memItemLeft" align="right" valign="top">CppAD::ADFun< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a83fa78621f43397373f35108f580abab">m_authoritativeADFun</a></td></tr>
|
|
<tr class="separator:a83fa78621f43397373f35108f580abab"><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_1engine_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_1engine_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">Member Enumeration Documentation</h2>
|
|
<a id="a19305dc4affde99bb84056c9eeda9f1e" name="a19305dc4affde99bb84056c9eeda9f1e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a19305dc4affde99bb84056c9eeda9f1e">◆ </a></span>JacobianMatrixState</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">enum class <a class="el" href="#a19305dc4affde99bb84056c9eeda9f1e">gridfire::engine::GraphEngine::JacobianMatrixState</a></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel strong">strong</span><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<table class="fieldtable">
|
|
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a19305dc4affde99bb84056c9eeda9f1eadd652546039b18970b8dcf2cff824268" name="a19305dc4affde99bb84056c9eeda9f1eadd652546039b18970b8dcf2cff824268"></a>UNINITIALIZED </td><td class="fielddoc"></td></tr>
|
|
<tr><td class="fieldname"><a id="a19305dc4affde99bb84056c9eeda9f1ea4d855a061b3066dc14a3b12ed26b5456" name="a19305dc4affde99bb84056c9eeda9f1ea4d855a061b3066dc14a3b12ed26b5456"></a>STALE </td><td class="fielddoc"></td></tr>
|
|
<tr><td class="fieldname"><a id="a19305dc4affde99bb84056c9eeda9f1ea162cb379760275c9685281ee27025cdb" name="a19305dc4affde99bb84056c9eeda9f1ea162cb379760275c9685281ee27025cdb"></a>READY_DENSE </td><td class="fielddoc"></td></tr>
|
|
<tr><td class="fieldname"><a id="a19305dc4affde99bb84056c9eeda9f1eabf43af1b1ac8bc6cb42296815a429ae3" name="a19305dc4affde99bb84056c9eeda9f1eabf43af1b1ac8bc6cb42296815a429ae3"></a>READY_SPARSE </td><td class="fielddoc"></td></tr>
|
|
</table>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="a530a5563c5a7a76650edb1657868a289" name="a530a5563c5a7a76650edb1657868a289"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a530a5563c5a7a76650edb1657868a289">◆ </a></span>GraphEngine() <span class="overload">[1/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::engine::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_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">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_1_1engine.html#a782fbc9eca00df10e4a204ae6da733e7abbd47109890259c0127154db1af26c75">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_1engine_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>build_reaclib_nuclear_network </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a885887bc4ff09c810e79eb68b79e7e2a" name="a885887bc4ff09c810e79eb68b79e7e2a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a885887bc4ff09c810e79eb68b79e7e2a">◆ </a></span>GraphEngine() <span class="overload">[2/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::engine::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_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">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_1_1engine.html#a782fbc9eca00df10e4a204ae6da733e7abbd47109890259c0127154db1af26c75">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="ad73fec5f24f5ee74020ca70cdaa104e3" name="ad73fec5f24f5ee74020ca70cdaa104e3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad73fec5f24f5ee74020ca70cdaa104e3">◆ </a></span>GraphEngine() <span class="overload">[3/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::engine::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_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">BuildDepthType</a></td> <td class="paramname"><span class="paramname"><em>buildDepth</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="namespacegridfire_1_1engine.html#a775506bb881280f73264db27cb8388f9">NetworkConstructionFlags</a></td> <td class="paramname"><span class="paramname"><em>reactionTypes</em></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="a00f8aafa14ae665d8e556b35a7934587" name="a00f8aafa14ae665d8e556b35a7934587"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a00f8aafa14ae665d8e556b35a7934587">◆ </a></span>GraphEngine() <span class="overload">[4/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::engine::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_1engine_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="ab5c4f7868ccd28fcf256e1e252c78517" name="ab5c4f7868ccd28fcf256e1e252c78517"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab5c4f7868ccd28fcf256e1e252c78517">◆ </a></span>accumulate_flows_serial()</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_1engine_1_1_graph_engine_1_1_precomputation_kernel_results.html">GraphEngine::PrecomputationKernelResults</a> gridfire::engine::GraphEngine::accumulate_flows_serial </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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>local_abundances</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>screening_factors</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>rho</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_set.html">reaction::ReactionSet</a> &</td> <td class="paramname"><span class="paramname"><em>activeReactions</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="a0dca83ce5226859b6b605889aca8ecc9" name="a0dca83ce5226859b6b605889aca8ecc9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0dca83ce5226859b6b605889aca8ecc9">◆ </a></span>addReaction() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::GraphEngine::addReaction </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>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6288b4006fb9d43dc4ef199f3b9f91fe" name="a6288b4006fb9d43dc4ef199f3b9f91fe"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6288b4006fb9d43dc4ef199f3b9f91fe">◆ </a></span>addReaction() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::GraphEngine::addReaction </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>reaction_id</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a23187ad3ee504de46f59e1644c715c9f" name="a23187ad3ee504de46f59e1644c715c9f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a23187ad3ee504de46f59e1644c715c9f">◆ </a></span>calculateAllDerivatives() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<IsArithmeticOrAD T> </div>
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< T > gridfire::engine::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">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">const T</td> <td class="paramname"><span class="paramname"><em>Ye</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>mue</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::function< std::optional< size_t >(const fourdst::atomic::Species &)></td> <td class="paramname"><span class="paramname"><em>speciesLookup</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::function< bool(const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &)> &</td> <td class="paramname"><span class="paramname"><em>reactionLookup</em></span> ) const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5970c97be4c7b5b764ce1155b5c7f870" name="a5970c97be4c7b5b764ce1155b5c7f870"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5970c97be4c7b5b764ce1155b5c7f870">◆ </a></span>calculateAllDerivatives() <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"><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< T > gridfire::engine::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>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">std::function< std::optional< size_t >(const fourdst::atomic::Species &)></td> <td class="paramname"><span class="paramname"><em>speciesLookup</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::function< bool(const <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">reaction::Reaction</a> &)> &</td> <td class="paramname"><span class="paramname"><em>reactionLookup</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>
|
|
<tr><td class="paramname">speciesLookup</td><td></td></tr>
|
|
<tr><td class="paramname">reactionLookup</td><td></td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="structgridfire_1_1engine_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="ad3ab19d036a9f1484f527442b2dad958" name="ad3ab19d036a9f1484f527442b2dad958"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad3ab19d036a9f1484f527442b2dad958">◆ </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_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double > gridfire::engine::GraphEngine::calculateAllDerivativesUsingPrecomputation </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></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>activeReactions</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="aa265b90b5ec153e1e71acb2d0e8fad36" name="aa265b90b5ec153e1e71acb2d0e8fad36"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa265b90b5ec153e1e71acb2d0e8fad36">◆ </a></span>calculateEpsDerivatives() <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"><a class="el" href="structgridfire_1_1engine_1_1_energy_derivatives.html">EnergyDerivatives</a> gridfire::engine::GraphEngine::calculateEpsDerivatives </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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 derivatives of the energy generation rate with respect to temperature and density. </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_1engine_1_1_energy_derivatives.html" title="Structure holding derivatives of energy generation rate with respect to T and rho.">EnergyDerivatives</a> struct containing the derivatives.</dd></dl>
|
|
<p>This method computes the partial derivatives of the specific nuclear energy generation rate with respect to temperature (∂ε/∂T) and density (∂ε/∂ρ)</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="structgridfire_1_1engine_1_1_energy_derivatives.html" title="Structure holding derivatives of energy generation rate with respect to T and rho.">EnergyDerivatives</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a3fd5d4f3c58d1790b7a517b5ef888eaf">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a00398599c658d7c0cebfd15f6465ea7d" name="a00398599c658d7c0cebfd15f6465ea7d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a00398599c658d7c0cebfd15f6465ea7d">◆ </a></span>calculateEpsDerivatives() <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"><a class="el" href="structgridfire_1_1engine_1_1_energy_derivatives.html">EnergyDerivatives</a> gridfire::engine::GraphEngine::calculateEpsDerivatives </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &</td> <td class="paramname"><span class="paramname"><em>activeReactions</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 derivatives of the energy generation rate with respect to temperature and density for a subset of reactions. </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>
|
|
<tr><td class="paramname">activeReactions</td><td>The set of reactions to include in the calculation. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="structgridfire_1_1engine_1_1_energy_derivatives.html" title="Structure holding derivatives of energy generation rate with respect to T and rho.">EnergyDerivatives</a> struct containing the derivatives.</dd></dl>
|
|
<p>This method computes the partial derivatives of the specific nuclear energy generation rate with respect to temperature (∂ε/∂T) and density (∂ε/∂ρ) considering only the specified subset of reactions. This allows for flexible calculations with different reaction sets without modifying the engine's internal state.</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="structgridfire_1_1engine_1_1_energy_derivatives.html" title="Structure holding derivatives of energy generation rate with respect to T and rho.">EnergyDerivatives</a> </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aab80f2ab29ad9c7867e75e499148aa1f" name="aab80f2ab29ad9c7867e75e499148aa1f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aab80f2ab29ad9c7867e75e499148aa1f">◆ </a></span>calculateMolarReactionFlow() <span class="overload">[1/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::engine::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">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>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::function< std::optional< size_t >(const fourdst::atomic::Species &)> &</td> <td class="paramname"><span class="paramname"><em>speciesIDLookup</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>
|
|
<tr><td class="paramname">speciesIDLookup</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="a154eda68e5df7f45b0e59b17761177b3" name="a154eda68e5df7f45b0e59b17761177b3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a154eda68e5df7f45b0e59b17761177b3">◆ </a></span>calculateMolarReactionFlow() <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">double gridfire::engine::GraphEngine::calculateMolarReactionFlow </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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_1engine_1_1_dynamic_engine.html#abf0f13b9eae66da6119e6fca826379e8">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2e7012382ee44473478ebc37ac36695c" name="a2e7012382ee44473478ebc37ac36695c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2e7012382ee44473478ebc37ac36695c">◆ </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::engine::GraphEngine::calculateReverseMolarReactionFlow </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">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="a4dd5733c77e9a7ad8b5e541c187fabae" name="a4dd5733c77e9a7ad8b5e541c187fabae"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4dd5733c77e9a7ad8b5e541c187fabae">◆ </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::engine::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::CompositionAbstract &</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="aa6b07108beeab1bc75c3099c25be7833" name="aa6b07108beeab1bc75c3099c25be7833"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa6b07108beeab1bc75c3099c25be7833">◆ </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::engine::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">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>forwardRate</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">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="a83ef40080c62d667b3fee71237efd2e0" name="a83ef40080c62d667b3fee71237efd2e0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a83ef40080c62d667b3fee71237efd2e0">◆ </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::engine::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">
|
|
|
|
<p>Calculates the derivative of the reverse rate for a two-body reaction with respect to temperature. </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 derivative. </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">comp</td><td>Composition object containing current abundances. </td></tr>
|
|
<tr><td class="paramname">reverseRate</td><td>The reverse rate of the reaction. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Derivative of the reverse rate with respect to temperature.</dd></dl>
|
|
<p>This method computes the derivative of the reverse rate using automatic differentiation. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a474ba2ca2d24cb90ee73af042993dd14" name="a474ba2ca2d24cb90ee73af042993dd14"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a474ba2ca2d24cb90ee73af042993dd14">◆ </a></span>calculateRHSAndEnergy() <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">std::expected< <a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > gridfire::engine::GraphEngine::calculateRHSAndEnergy </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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">bool</td> <td class="paramname"><span class="paramname"><em>trust</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>
|
|
<tr><td class="paramname">trust</td><td></td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">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_1engine_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_1engine_1_1_engine.html#a71c9ed5e0810799cd6af1d8ffbc8a918">gridfire::engine::Engine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7bd6fbf8bc5256a3437ea2731fadf4e4" name="a7bd6fbf8bc5256a3437ea2731fadf4e4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7bd6fbf8bc5256a3437ea2731fadf4e4">◆ </a></span>calculateRHSAndEnergy() <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">std::expected< <a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > gridfire::engine::GraphEngine::calculateRHSAndEnergy </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &</td> <td class="paramname"><span class="paramname"><em>activeReactions</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 right-hand side (dY/dt) and energy generation rate for a subset of reactions. </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>
|
|
<tr><td class="paramname">activeReactions</td><td>The set of reactions to include in the calculation. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">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 considering only the specified subset of reactions. This allows for flexible calculations with different reaction sets without modifying the engine's internal state.</p>
|
|
<dl class="section see"><dt>See also</dt><dd><a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html" title="Structure holding derivatives and energy generation for a network step.">StepDerivatives</a> </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5fadd1bb2692e1527ce24295c77cfc72" name="a5fadd1bb2692e1527ce24295c77cfc72"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5fadd1bb2692e1527ce24295c77cfc72">◆ </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::engine::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="a1c977a772eedae1cceeb6b50d984fde4" name="a1c977a772eedae1cceeb6b50d984fde4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1c977a772eedae1cceeb6b50d984fde4">◆ </a></span>collectComposition()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">fourdst::composition::Composition gridfire::engine::GraphEngine::collectComposition </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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>This will return the input comp with the molar abundances of any species not registered in that but registered in the engine active species set to 0.0. </p>
|
|
<dl class="section note"><dt>Note</dt><dd>Effectively this method does not change input composition; rather it ensures that all species which can be tracked by an instance of <a class="el" href="classgridfire_1_1engine_1_1_graph_engine.html" title="A reaction network engine that uses a graph-based representation.">GraphEngine</a> are registered in the composition object. </dd>
|
|
<dd>
|
|
If a species is in the input comp but not in the network </dd></dl>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">comp</td><td>Input Composition </td></tr>
|
|
<tr><td class="paramname">T9</td><td></td></tr>
|
|
<tr><td class="paramname">rho</td><td></td></tr>
|
|
<tr><td class="paramname">T9</td><td></td></tr>
|
|
<tr><td class="paramname">rho</td><td></td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>A new composition where all members of the active species set are registered. And any members not in comp have a molar abundance set to 0. </dd></dl>
|
|
<dl class="exception"><dt>Exceptions</dt><dd>
|
|
<table class="exception">
|
|
<tr><td class="paramname">BadCollectionError</td><td>If the input composition contains species not present in the network species set </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a078a16d21f2d7de9636c5bc6a05ddfec">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8f29c77e777fdc6517f2c7778537ba6f" name="a8f29c77e777fdc6517f2c7778537ba6f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8f29c77e777fdc6517f2c7778537ba6f">◆ </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::engine::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="a698cbb0c4e0028924b116906787e342a" name="a698cbb0c4e0028924b116906787e342a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a698cbb0c4e0028924b116906787e342a">◆ </a></span>compute_neutrino_fluxes()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::pair< double, double > gridfire::engine::GraphEngine::compute_neutrino_fluxes </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>netFlow</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="ad6b75b38b3c67276ad5fe254a36bf8f6" name="ad6b75b38b3c67276ad5fe254a36bf8f6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad6b75b38b3c67276ad5fe254a36bf8f6">◆ </a></span>compute_reaction_flow()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::engine::GraphEngine::compute_reaction_flow </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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>local_abundances</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>screening_factors</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>rho</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>reactionCounter</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>, </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="structgridfire_1_1engine_1_1_graph_engine_1_1_precomputed_reaction.html">PrecomputedReaction</a> &</td> <td class="paramname"><span class="paramname"><em>precomputedReaction</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="acfe338ed3b10a4f116e58b2693a7fe10" name="acfe338ed3b10a4f116e58b2693a7fe10"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#acfe338ed3b10a4f116e58b2693a7fe10">◆ </a></span>constructStateBlob()</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_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> > gridfire::engine::GraphEngine::constructStateBlob </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> *</td> <td class="paramname"><span class="paramname"><em>blob</em></span><span class="paramdefsep"> = </span><span class="paramdefval">nullptr</span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a675024091dc64f8784204a78bab46d90">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="adab81a7a56e2d9fd1ca46c20bf971912" name="adab81a7a56e2d9fd1ca46c20bf971912"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adab81a7a56e2d9fd1ca46c20bf971912">◆ </a></span>exportToCSV()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::GraphEngine::exportToCSV </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>filename</em></span> ) 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"><a class="code hl_namespace" href="namespacegridfire_1_1engine.html">engine</a>.exportToCSV(<span class="stringliteral">"network.csv"</span>);</div>
|
|
<div class="ttc" id="anamespacegridfire_1_1engine_html"><div class="ttname"><a href="namespacegridfire_1_1engine.html">gridfire::engine</a></div><div class="ttdef"><b>Definition</b> dynamic_engine_diagnostics.h:39</div></div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a id="ac5f6bbc54d65a974dce4ad407617779a" name="ac5f6bbc54d65a974dce4ad407617779a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac5f6bbc54d65a974dce4ad407617779a">◆ </a></span>exportToDot()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::GraphEngine::exportToDot </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>filename</em></span> ) 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"><a class="code hl_namespace" href="namespacegridfire_1_1engine.html">engine</a>.exportToDot(<span class="stringliteral">"network.dot"</span>);</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a id="acaef2178b6bd13ee478a9aa03bd12da9" name="acaef2178b6bd13ee478a9aa03bd12da9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#acaef2178b6bd13ee478a9aa03bd12da9">◆ </a></span>generate_jacobian_sparsity_pattern()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::GraphEngine::generate_jacobian_sparsity_pattern </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab7efbe72c39d2828eeed4e20f319a2c8" name="ab7efbe72c39d2828eeed4e20f319a2c8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab7efbe72c39d2828eeed4e20f319a2c8">◆ </a></span>generateJacobianMatrix() <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"><a class="el" href="classgridfire_1_1engine_1_1_network_jacobian.html">NetworkJacobian</a> gridfire::engine::GraphEngine::generateJacobianMatrix </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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>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>getJacobianMatrixEntry()</code>.</p>
|
|
<dl class="section see"><dt>See also</dt><dd>getJacobianMatrixEntry() </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#ab6d95491f017feb4c43d9fa05739fcd0">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7704e02c04de922ae6b01f4ba2b88148" name="a7704e02c04de922ae6b01f4ba2b88148"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7704e02c04de922ae6b01f4ba2b88148">◆ </a></span>generateJacobianMatrix() <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"><a class="el" href="classgridfire_1_1engine_1_1_network_jacobian.html">NetworkJacobian</a> gridfire::engine::GraphEngine::generateJacobianMatrix </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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_1_1engine.html#a9de1791ec719c0a9b76b835703336870">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 nodiscard">nodiscard</span><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 with a specified sparsity pattern. </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>
|
|
<tr><td class="paramname">sparsityPattern</td><td>The sparsity pattern to use for the Jacobian matrix.</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, taking into account the provided sparsity pattern. The matrix can then be accessed via <code>getJacobianMatrixEntry()</code>.</p>
|
|
<dl class="section see"><dt>See also</dt><dd>getJacobianMatrixEntry() </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a78f7b315bfa0a1f34d8fd5ab652b6934">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a72130974401a22155dfd9a2e68192d56" name="a72130974401a22155dfd9a2e68192d56"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a72130974401a22155dfd9a2e68192d56">◆ </a></span>generateJacobianMatrix() <span class="overload">[3/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classgridfire_1_1engine_1_1_network_jacobian.html">NetworkJacobian</a> gridfire::engine::GraphEngine::generateJacobianMatrix </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</td> <td class="paramname"><span class="paramname"><em>comp</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>rho</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::vector< fourdst::atomic::Species > &</td> <td class="paramname"><span class="paramname"><em>activeSpecies</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>Generates the Jacobian matrix for the current state with a specified set of active species. generally this will be much faster than the full matrix generation. Here we use forward mode to generate the Jacobian only for the active species. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">comp</td><td>The Composition object containing current abundances. </td></tr>
|
|
<tr><td class="paramname">T9</td><td>The temperature in units of 10^9 K. </td></tr>
|
|
<tr><td class="paramname">rho</td><td>The density in g/cm^3. </td></tr>
|
|
<tr><td class="paramname">activeSpecies</td><td>A vector of Species objects representing the active species.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section see"><dt>See also</dt><dd>getJacobianMatrixEntry() </dd>
|
|
<dd>
|
|
<a class="el" href="#ab7efbe72c39d2828eeed4e20f319a2c8" title="Generates the Jacobian matrix for the current state.">generateJacobianMatrix()</a> </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a983551b5fef4610799c062cb5be2b1c7">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a769ac1cbf84d20afe66598aa325e7f7c" name="a769ac1cbf84d20afe66598aa325e7f7c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a769ac1cbf84d20afe66598aa325e7f7c">◆ </a></span>get_store_intermediate_reaction_contributions()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::engine::GraphEngine::get_store_intermediate_reaction_contributions </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 inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0faf9ad41f916c09e65d58890a854248" name="a0faf9ad41f916c09e65d58890a854248"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0faf9ad41f916c09e65d58890a854248">◆ </a></span>getAuthoritativeADFun()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const CppAD::ADFun< double > & gridfire::engine::GraphEngine::getAuthoritativeADFun </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 inline">inline</span><span class="mlabel nodiscard">nodiscard</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0e484a5fcabc2ced4552e92078fcc03d" name="a0e484a5fcabc2ced4552e92078fcc03d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0e484a5fcabc2ced4552e92078fcc03d">◆ </a></span>getMostRecentRHSCalculation()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::optional< <a class="el" href="structgridfire_1_1engine_1_1_step_derivatives.html">StepDerivatives</a>< double > > gridfire::engine::GraphEngine::getMostRecentRHSCalculation </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a30cc7809d53540bd3407d971de8eec48">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a90e87465ba1e80af7124c0e4614d433b" name="a90e87465ba1e80af7124c0e4614d433b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a90e87465ba1e80af7124c0e4614d433b">◆ </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::engine::GraphEngine::getNetworkReactions </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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_1engine_1_1_dynamic_engine.html#a77a889cbc3791beca4abb95cb663a4d6">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6b7e2d8391114f25d74d986d919715c9" name="a6b7e2d8391114f25d74d986d919715c9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6b7e2d8391114f25d74d986d919715c9">◆ </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::engine::GraphEngine::getNetworkSpecies </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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_1engine_1_1_engine.html#afa8b1970e20f4bab61e4d31ead09f930">gridfire::engine::Engine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3ef1320e4fb1160d37f93e3eefd38c50" name="a3ef1320e4fb1160d37f93e3eefd38c50"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3ef1320e4fb1160d37f93e3eefd38c50">◆ </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::engine::GraphEngine::getPartitionFunction </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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="a69b478b15844d145219c9c5a4e515e59" name="a69b478b15844d145219c9c5a4e515e59"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a69b478b15844d145219c9c5a4e515e59">◆ </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::engine::GraphEngine::getScreeningModel </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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 = <a class="code hl_namespace" href="namespacegridfire_1_1engine.html">engine</a>.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_1engine_1_1_dynamic_engine.html#a60834e4bcfb2e4ec21a9cbf7bb9f7363">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a32ab9175e93ae29f87b0903400cb3521" name="a32ab9175e93ae29f87b0903400cb3521"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a32ab9175e93ae29f87b0903400cb3521">◆ </a></span>getSpeciesDestructionTimescales() <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">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > gridfire::engine::GraphEngine::getSpeciesDestructionTimescales </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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 destruction 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 destruction timescales (s).</dd></dl>
|
|
<p>This method estimates the destruction timescale for each species, which can be useful for understanding reaction flows and equilibrium states. </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a128dd0a7f738f93092c437eeda983fdf">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae2a9f08ef597884e61a7d8e53c23ef17" name="ae2a9f08ef597884e61a7d8e53c23ef17"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae2a9f08ef597884e61a7d8e53c23ef17">◆ </a></span>getSpeciesDestructionTimescales() <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">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > gridfire::engine::GraphEngine::getSpeciesDestructionTimescales </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &</td> <td class="paramname"><span class="paramname"><em>activeReactions</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>Computes destruction timescales for all species in the network considering a subset of reactions. </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>
|
|
<tr><td class="paramname">activeReactions</td><td>The set of reactions to include in the calculation. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Map from Species to their destruction timescales (s).</dd></dl>
|
|
<p>This method estimates the destruction timescale for each species, considering only the specified subset of reactions. This allows for flexible calculations with different reaction sets without modifying the engine's internal state. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4d339f84e5f44af004b14d69ce10ee21" name="a4d339f84e5f44af004b14d69ce10ee21"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4d339f84e5f44af004b14d69ce10ee21">◆ </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::engine::GraphEngine::getSpeciesIndex </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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>species</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 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_1engine_1_1_dynamic_engine.html#a16bd2fae51fa738da62f2a767f6875d2">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a763332410f64d2492785d2053bdad5fe" name="a763332410f64d2492785d2053bdad5fe"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a763332410f64d2492785d2053bdad5fe">◆ </a></span>getSpeciesStatus()</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_1engine.html#a83c9d755597668bba3cf00cd0ea10ee3">SpeciesStatus</a> gridfire::engine::GraphEngine::getSpeciesStatus </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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>species</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 the status 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 status. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="namespacegridfire_1_1engine.html#a83c9d755597668bba3cf00cd0ea10ee3" title="Enumerates the status of a species in the simulation.">SpeciesStatus</a> indicating the status of the species.</dd></dl>
|
|
<p>This method checks if the given species is part of the network and returns its status (e.g., Active, Inactive, NotFound). </p>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a1fefd34491959f9936b7a065fc2d6274">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a88ee4feaa851d047d110cd0949ed845f" name="a88ee4feaa851d047d110cd0949ed845f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a88ee4feaa851d047d110cd0949ed845f">◆ </a></span>getSpeciesTimescales() <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">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > gridfire::engine::GraphEngine::getSpeciesTimescales </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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_1engine_1_1_dynamic_engine.html#a92be21f072b61fcf291559246045801f">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a39d800c17b054f10a47100b552364902" name="a39d800c17b054f10a47100b552364902"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a39d800c17b054f10a47100b552364902">◆ </a></span>getSpeciesTimescales() <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">std::expected< std::unordered_map< fourdst::atomic::Species, double >, <a class="el" href="namespacegridfire_1_1engine.html#a4d057e41b489bf20744dfa8d2958ad5a">EngineStatus</a> > gridfire::engine::GraphEngine::getSpeciesTimescales </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::composition::CompositionAbstract &</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="classgridfire_1_1reaction_1_1_reaction_set.html">reaction::ReactionSet</a> &</td> <td class="paramname"><span class="paramname"><em>activeReactions</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>Computes timescales for all species in the network considering a subset of reactions. </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>
|
|
<tr><td class="paramname">activeReactions</td><td>The set of reactions to include in the calculation. </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, considering only the specified subset of reactions. This allows for flexible calculations with different reaction sets without modifying the engine's internal state. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6c231f340fe4add5dce308a79cc0f136" name="a6c231f340fe4add5dce308a79cc0f136"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6c231f340fe4add5dce308a79cc0f136">◆ </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::engine::GraphEngine::involvesSpecies </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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>species</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>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="adc9e6e5d8bab57ff2823ad01653cf9f5" name="adc9e6e5d8bab57ff2823ad01653cf9f5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adc9e6e5d8bab57ff2823ad01653cf9f5">◆ </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::engine::GraphEngine::isPrecomputationEnabled </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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="af61c53c080637d8d601c0def9942a901" name="af61c53c080637d8d601c0def9942a901"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af61c53c080637d8d601c0def9942a901">◆ </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::engine::GraphEngine::isUsingReverseReactions </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</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="a6ccfb1813ce5b5c9568434f47e06726a" name="a6ccfb1813ce5b5c9568434f47e06726a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6ccfb1813ce5b5c9568434f47e06726a">◆ </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::engine::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="a7e5c8d9b996e5bc7fc130d34dd196a4b" name="a7e5c8d9b996e5bc7fc130d34dd196a4b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7e5c8d9b996e5bc7fc130d34dd196a4b">◆ </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::engine::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="ac7814b9922c7fee4c5a2649127dcdadc" name="ac7814b9922c7fee4c5a2649127dcdadc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac7814b9922c7fee4c5a2649127dcdadc">◆ </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::engine::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="ab77179dadc7c41551f8eb4a3321283d4" name="ab77179dadc7c41551f8eb4a3321283d4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab77179dadc7c41551f8eb4a3321283d4">◆ </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_1engine_1_1_priming_report.html">PrimingReport</a> gridfire::engine::GraphEngine::primeEngine </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></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> ) 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>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_1engine_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_1engine_1_1_dynamic_engine.html#a30df09678c3de1a55b7c6ac5eae35004">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a58221a92813e13e43de48525980301d4" name="a58221a92813e13e43de48525980301d4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a58221a92813e13e43de48525980301d4">◆ </a></span>project()</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::engine::GraphEngine::project </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1scratch_1_1_state_blob.html">scratch::StateBlob</a> &</td> <td class="paramname"><span class="paramname"><em>ctx</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></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> ) 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>Updates the state of the network and the composition to be usable for the current network. </p>
|
|
<p>For graph engine all this does is ensure that the returned composition has all the species in the network registered. if a species was already in the composition is will keep its abundance, otherwise it will be added with zero abundance.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">netIn</td><td>The input netIn to use, this includes the composition, temperature, and density</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>The updated composition that includes all species in the network. </dd></dl>
|
|
|
|
<p>Implements <a class="el" href="classgridfire_1_1engine_1_1_dynamic_engine.html#a260d36cc1e14ca8eda0309745e9134d9">gridfire::engine::DynamicEngine</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af9cba639f9eeac0b746ef073670292e6" name="af9cba639f9eeac0b746ef073670292e6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af9cba639f9eeac0b746ef073670292e6">◆ </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::engine::GraphEngine::recordADTape </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>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="ac1958cc24ff3c69eac7b5b9e7bb6e510" name="ac1958cc24ff3c69eac7b5b9e7bb6e510"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac1958cc24ff3c69eac7b5b9e7bb6e510">◆ </a></span>set_store_intermediate_reaction_contributions()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::GraphEngine::set_store_intermediate_reaction_contributions </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const bool</td> <td class="paramname"><span class="paramname"><em>value</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9af928bf8a5327d3cb45254c0e59f914" name="a9af928bf8a5327d3cb45254c0e59f914"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9af928bf8a5327d3cb45254c0e59f914">◆ </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::engine::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>
|
|
<h2 class="groupheader">Member Data Documentation</h2>
|
|
<a id="ac02ff3a8828e281209013f5c564083d0" name="ac02ff3a8828e281209013f5c564083d0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac02ff3a8828e281209013f5c564083d0">◆ </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_1engine_1_1_graph_engine_1_1_atomic_reverse_rate.html">AtomicReverseRate</a>> > gridfire::engine::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="a83fa78621f43397373f35108f580abab" name="a83fa78621f43397373f35108f580abab"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a83fa78621f43397373f35108f580abab">◆ </a></span>m_authoritativeADFun</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::engine::GraphEngine::m_authoritativeADFun</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="a77527b049b97b2611f5da5279780f5ec" name="a77527b049b97b2611f5da5279780f5ec"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a77527b049b97b2611f5da5279780f5ec">◆ </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<<a class="el" href="structgridfire_1_1config_1_1_grid_fire_config.html">config::GridFireConfig</a>> gridfire::engine::GraphEngine::m_config</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="aab2701ed1d1262071072175647674b43" name="aab2701ed1d1262071072175647674b43"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aab2701ed1d1262071072175647674b43">◆ </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_1engine_1_1_graph_engine_1_1constants.html">constants</a> gridfire::engine::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="ae2fef545142356c7f2f2f5ae3cba6d90" name="ae2fef545142356c7f2f2f5ae3cba6d90"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae2fef545142356c7f2f2f5ae3cba6d90">◆ </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_1_1engine.html#a55cd7c313bbfafd5b6a1bcd6329ed99b">BuildDepthType</a> gridfire::engine::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="a636caa7f8085153424e17dc6e343a326" name="a636caa7f8085153424e17dc6e343a326"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a636caa7f8085153424e17dc6e343a326">◆ </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::engine::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="af68112da3edc1a8c88289b8e7242180e" name="af68112da3edc1a8c88289b8e7242180e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af68112da3edc1a8c88289b8e7242180e">◆ </a></span>m_full_sparsity_set</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::set<std::pair<size_t, size_t> > gridfire::engine::GraphEngine::m_full_sparsity_set</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>For quick lookups of the base sparsity pattern. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aac9f28dd58bc0d40a643885c95c2ab52" name="aac9f28dd58bc0d40a643885c95c2ab52"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aac9f28dd58bc0d40a643885c95c2ab52">◆ </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::engine::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="a0a8d12341ecf52446faef9dd8c7dc81e" name="a0a8d12341ecf52446faef9dd8c7dc81e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0a8d12341ecf52446faef9dd8c7dc81e">◆ </a></span>m_jacobianMatrixStateNameMap</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<<a class="el" href="#a19305dc4affde99bb84056c9eeda9f1e">JacobianMatrixState</a>, std::string> gridfire::engine::GraphEngine::m_jacobianMatrixStateNameMap</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">
|
|
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
|
|
<div class="line"> {<a class="code hl_enumvalue" href="#a19305dc4affde99bb84056c9eeda9f1eadd652546039b18970b8dcf2cff824268">JacobianMatrixState::UNINITIALIZED</a>, <span class="stringliteral">"Uninitialized"</span>},</div>
|
|
<div class="line"> {<a class="code hl_enumvalue" href="#a19305dc4affde99bb84056c9eeda9f1ea4d855a061b3066dc14a3b12ed26b5456">JacobianMatrixState::STALE</a>, <span class="stringliteral">"Stale"</span>},</div>
|
|
<div class="line"> {<a class="code hl_enumvalue" href="#a19305dc4affde99bb84056c9eeda9f1ea162cb379760275c9685281ee27025cdb">JacobianMatrixState::READY_DENSE</a>, <span class="stringliteral">"Ready (dense)"</span>},</div>
|
|
<div class="line"> {<a class="code hl_enumvalue" href="#a19305dc4affde99bb84056c9eeda9f1eabf43af1b1ac8bc6cb42296815a429ae3">JacobianMatrixState::READY_SPARSE</a>, <span class="stringliteral">"Ready (sparse)"</span>},</div>
|
|
<div class="line"> }</div>
|
|
<div class="ttc" id="aclassgridfire_1_1engine_1_1_graph_engine_html_a19305dc4affde99bb84056c9eeda9f1ea162cb379760275c9685281ee27025cdb"><div class="ttname"><a href="#a19305dc4affde99bb84056c9eeda9f1ea162cb379760275c9685281ee27025cdb">gridfire::engine::GraphEngine::JacobianMatrixState::READY_DENSE</a></div><div class="ttdeci">@ READY_DENSE</div><div class="ttdef"><b>Definition</b> engine_graph.h:717</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1engine_1_1_graph_engine_html_a19305dc4affde99bb84056c9eeda9f1ea4d855a061b3066dc14a3b12ed26b5456"><div class="ttname"><a href="#a19305dc4affde99bb84056c9eeda9f1ea4d855a061b3066dc14a3b12ed26b5456">gridfire::engine::GraphEngine::JacobianMatrixState::STALE</a></div><div class="ttdeci">@ STALE</div><div class="ttdef"><b>Definition</b> engine_graph.h:716</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1engine_1_1_graph_engine_html_a19305dc4affde99bb84056c9eeda9f1eabf43af1b1ac8bc6cb42296815a429ae3"><div class="ttname"><a href="#a19305dc4affde99bb84056c9eeda9f1eabf43af1b1ac8bc6cb42296815a429ae3">gridfire::engine::GraphEngine::JacobianMatrixState::READY_SPARSE</a></div><div class="ttdeci">@ READY_SPARSE</div><div class="ttdef"><b>Definition</b> engine_graph.h:718</div></div>
|
|
<div class="ttc" id="aclassgridfire_1_1engine_1_1_graph_engine_html_a19305dc4affde99bb84056c9eeda9f1eadd652546039b18970b8dcf2cff824268"><div class="ttname"><a href="#a19305dc4affde99bb84056c9eeda9f1eadd652546039b18970b8dcf2cff824268">gridfire::engine::GraphEngine::JacobianMatrixState::UNINITIALIZED</a></div><div class="ttdeci">@ UNINITIALIZED</div><div class="ttdef"><b>Definition</b> engine_graph.h:715</div></div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a id="a8a121839fe3a7a35e4214fd20e753f9f" name="a8a121839fe3a7a35e4214fd20e753f9f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8a121839fe3a7a35e4214fd20e753f9f">◆ </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::engine::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="a544299e2495c6cac339b767e932e37b3" name="a544299e2495c6cac339b767e932e37b3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a544299e2495c6cac339b767e932e37b3">◆ </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::engine::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="a3413c72ee010534a510160e38c3b2a0c" name="a3413c72ee010534a510160e38c3b2a0c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3413c72ee010534a510160e38c3b2a0c">◆ </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::engine::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="a9f0e38be889a964d0b6e62934a1220db" name="a9f0e38be889a964d0b6e62934a1220db"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9f0e38be889a964d0b6e62934a1220db">◆ </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::engine::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="a2f2e2c700288af48f6fe50a61bb86624" name="a2f2e2c700288af48f6fe50a61bb86624"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2f2e2c700288af48f6fe50a61bb86624">◆ </a></span>m_precomputed_reaction_index_map</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<uint64_t, size_t> gridfire::engine::GraphEngine::m_precomputed_reaction_index_map</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="a0afa15c074fa830e00d981c5786d3ac1" name="a0afa15c074fa830e00d981c5786d3ac1"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0afa15c074fa830e00d981c5786d3ac1">◆ </a></span>m_precomputed_reactions</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_1engine_1_1_graph_engine_1_1_precomputed_reaction.html">PrecomputedReaction</a>> gridfire::engine::GraphEngine::m_precomputed_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">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af7dab9063bb92aac64b6dfa755074739" name="af7dab9063bb92aac64b6dfa755074739"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af7dab9063bb92aac64b6dfa755074739">◆ </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::engine::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="a249a9237865b0cf6906b360e4cb7c1ec" name="a249a9237865b0cf6906b360e4cb7c1ec"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a249a9237865b0cf6906b360e4cb7c1ec">◆ </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::engine::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="a3e91570fbffc48748ad352e4554a728b" name="a3e91570fbffc48748ad352e4554a728b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3e91570fbffc48748ad352e4554a728b">◆ </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::engine::GraphEngine::m_screeningModel = <a class="el" href="namespacegridfire_1_1screening.html#a6ca8556d27ac373e176f5b23437c416e">screening::selectScreeningModel</a>(<a class="el" href="#abdff5b7eeb73ed327ba6b758038ef776">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="abdff5b7eeb73ed327ba6b758038ef776" name="abdff5b7eeb73ed327ba6b758038ef776"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#abdff5b7eeb73ed327ba6b758038ef776">◆ </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::engine::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="a2421bbbdcc9fb02d9cb6e584da393c83" name="a2421bbbdcc9fb02d9cb6e584da393c83"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2421bbbdcc9fb02d9cb6e584da393c83">◆ </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::engine::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="aadd0e4ba48fa8daaff3372cb5efa5dcb" name="aadd0e4ba48fa8daaff3372cb5efa5dcb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aadd0e4ba48fa8daaff3372cb5efa5dcb">◆ </a></span>m_store_intermediate_reaction_contributions</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::engine::GraphEngine::m_store_intermediate_reaction_contributions = false</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 storing intermediate reaction contributions for debugging. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1f4e11a70ce65d544e9800d552a65cc8" name="a1f4e11a70ce65d544e9800d552a65cc8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1f4e11a70ce65d544e9800d552a65cc8">◆ </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::engine::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="ac9a0d4d0eec32145bf8f2b688a1d988d" name="ac9a0d4d0eec32145bf8f2b688a1d988d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac9a0d4d0eec32145bf8f2b688a1d988d">◆ </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::engine::GraphEngine::m_useReverseReactions = false</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="a4fd4daf4f4ef658e7c0617223a74d824" name="a4fd4daf4f4ef658e7c0617223a74d824"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4fd4daf4f4ef658e7c0617223a74d824">◆ </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::engine::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="namespacegridfire_1_1engine.html">engine</a></li><li class="navelem"><a class="el" href="classgridfire_1_1engine_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>
|