Files
GridFire/docs/html/classgridfire_1_1reaction_1_1_reaclib_reaction.html

1632 lines
90 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::reaction::ReaclibReaction 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">&#160;v0.7.0-alpha</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classgridfire_1_1reaction_1_1_reaclib_reaction.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="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classgridfire_1_1reaction_1_1_reaclib_reaction-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">gridfire::reaction::ReaclibReaction Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;reaction.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for gridfire::reaction::ReaclibReaction:</div>
<div class="dyncontent">
<div class="center">
<img src="classgridfire_1_1reaction_1_1_reaclib_reaction.png" usemap="#gridfire::reaction::ReaclibReaction_map" alt=""/>
<map id="gridfire::reaction::ReaclibReaction_map" name="gridfire::reaction::ReaclibReaction_map">
<area href="classgridfire_1_1reaction_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source." alt="gridfire::reaction::Reaction" shape="rect" coords="0,0,243,24"/>
<area href="classgridfire_1_1reaction_1_1_logical_reaclib_reaction.html" title="Represents a &quot;logical&quot; reaction that aggregates rates from multiple sources." alt="gridfire::reaction::LogicalReaclibReaction" shape="rect" coords="0,112,243,136"/>
</map>
</div></div>
<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:ae2b9b41a598c5f0dcd050b32985ea44e" id="r_ae2b9b41a598c5f0dcd050b32985ea44e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae2b9b41a598c5f0dcd050b32985ea44e">~ReaclibReaction</a> () override=default</td></tr>
<tr class="separator:ae2b9b41a598c5f0dcd050b32985ea44e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a264112a230817a6080c770686e5bcc01" id="r_a264112a230817a6080c770686e5bcc01"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a264112a230817a6080c770686e5bcc01">ReaclibReaction</a> (std::string_view <a class="el" href="#a06312f834439ccf93012dea53cab47ce">id</a>, std::string_view <a class="el" href="#af775f97f4d5e144e33bc6e0ba58a5851">peName</a>, int <a class="el" href="#abe189c43e4d509d9d05dd205861ceddc">chapter</a>, const std::vector&lt; fourdst::atomic::Species &gt; &amp;<a class="el" href="#ad095aba46860fec0e68386bf04f7f142">reactants</a>, const std::vector&lt; fourdst::atomic::Species &gt; &amp;<a class="el" href="#a5f563b99bb550d5bafa2a989502de019">products</a>, double <a class="el" href="#ae47931948f12816eb890c0db4fff4d68">qValue</a>, std::string_view label, const <a class="el" href="structgridfire_1_1reaction_1_1_rate_coefficient_set.html">RateCoefficientSet</a> &amp;sets, bool reverse=false)</td></tr>
<tr class="memdesc:a264112a230817a6080c770686e5bcc01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> object. <br /></td></tr>
<tr class="separator:a264112a230817a6080c770686e5bcc01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd16b1daf13456b3523362a37b1bf9b0" id="r_acd16b1daf13456b3523362a37b1bf9b0"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acd16b1daf13456b3523362a37b1bf9b0">calculate_rate</a> (double T9, double rho, double Ye, double mue, const std::vector&lt; double &gt; &amp;Y, const std::unordered_map&lt; size_t, fourdst::atomic::Species &gt; &amp;index_to_species_map) const override</td></tr>
<tr class="memdesc:acd16b1daf13456b3523362a37b1bf9b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the reaction rate for a given temperature. <br /></td></tr>
<tr class="separator:acd16b1daf13456b3523362a37b1bf9b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afec5ccf7a8fb1ba56c8cc852ce858c5e" id="r_afec5ccf7a8fb1ba56c8cc852ce858c5e"><td class="memItemLeft" align="right" valign="top">CppAD::AD&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afec5ccf7a8fb1ba56c8cc852ce858c5e">calculate_rate</a> (CppAD::AD&lt; double &gt; T9, CppAD::AD&lt; double &gt; rho, CppAD::AD&lt; double &gt; Ye, CppAD::AD&lt; double &gt; mue, const std::vector&lt; CppAD::AD&lt; double &gt; &gt; &amp;Y, const std::unordered_map&lt; size_t, fourdst::atomic::Species &gt; &amp;index_to_species_map) const override</td></tr>
<tr class="memdesc:afec5ccf7a8fb1ba56c8cc852ce858c5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the reaction rate for a given temperature using CppAD types. <br /></td></tr>
<tr class="separator:afec5ccf7a8fb1ba56c8cc852ce858c5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada6ec1ae05b9a92b58e6a4ecdf5a1656" id="r_ada6ec1ae05b9a92b58e6a4ecdf5a1656"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ada6ec1ae05b9a92b58e6a4ecdf5a1656">calculate_log_rate_partial_deriv_wrt_T9</a> (double T9, double rho, double Ye, double mue, const fourdst::composition::Composition &amp;comp) const override</td></tr>
<tr class="memdesc:ada6ec1ae05b9a92b58e6a4ecdf5a1656"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logarithmic partial derivative of the rate with respect to temperature. <br /></td></tr>
<tr class="separator:ada6ec1ae05b9a92b58e6a4ecdf5a1656"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af775f97f4d5e144e33bc6e0ba58a5851" id="r_af775f97f4d5e144e33bc6e0ba58a5851"><td class="memItemLeft" align="right" valign="top">virtual std::string_view&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af775f97f4d5e144e33bc6e0ba58a5851">peName</a> () const</td></tr>
<tr class="memdesc:af775f97f4d5e144e33bc6e0ba58a5851"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the reaction name in (projectile, ejectile) notation. <br /></td></tr>
<tr class="separator:af775f97f4d5e144e33bc6e0ba58a5851"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe189c43e4d509d9d05dd205861ceddc" id="r_abe189c43e4d509d9d05dd205861ceddc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abe189c43e4d509d9d05dd205861ceddc">chapter</a> () const</td></tr>
<tr class="memdesc:abe189c43e4d509d9d05dd205861ceddc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the REACLIB chapter number. <br /></td></tr>
<tr class="separator:abe189c43e4d509d9d05dd205861ceddc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96d4ab87de02e9b0be3c248e2e955b4b" id="r_a96d4ab87de02e9b0be3c248e2e955b4b"><td class="memItemLeft" align="right" valign="top">std::string_view&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a96d4ab87de02e9b0be3c248e2e955b4b">sourceLabel</a> () const</td></tr>
<tr class="memdesc:a96d4ab87de02e9b0be3c248e2e955b4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the source label for the rate data. <br /></td></tr>
<tr class="separator:a96d4ab87de02e9b0be3c248e2e955b4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c0fbdd07f9a837bd031c5bdc58e0e8f" id="r_a3c0fbdd07f9a837bd031c5bdc58e0e8f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegridfire_1_1reaction.html#a026997f11e811fa7754ac9121c4ba74e">ReactionType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3c0fbdd07f9a837bd031c5bdc58e0e8f">type</a> () const override</td></tr>
<tr class="memdesc:a3c0fbdd07f9a837bd031c5bdc58e0e8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Category of this reaction (e.g., REACLIB, WEAK, LOGICAL_REACLIB). <br /></td></tr>
<tr class="separator:a3c0fbdd07f9a837bd031c5bdc58e0e8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfed51cf788a7ed4770cbd5945ddab2f" id="r_adfed51cf788a7ed4770cbd5945ddab2f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgridfire_1_1reaction_1_1_rate_coefficient_set.html">RateCoefficientSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adfed51cf788a7ed4770cbd5945ddab2f">rateCoefficients</a> () const</td></tr>
<tr class="memdesc:adfed51cf788a7ed4770cbd5945ddab2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the set of rate coefficients. <br /></td></tr>
<tr class="separator:adfed51cf788a7ed4770cbd5945ddab2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a171b690e1abaf23f11a94c39e9f8c944" id="r_a171b690e1abaf23f11a94c39e9f8c944"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a171b690e1abaf23f11a94c39e9f8c944">contains</a> (const fourdst::atomic::Species &amp;species) const override</td></tr>
<tr class="memdesc:a171b690e1abaf23f11a94c39e9f8c944"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the reaction involves a given species as a reactant or product. <br /></td></tr>
<tr class="separator:a171b690e1abaf23f11a94c39e9f8c944"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65a12e5f6180873866cfaaf130fd1156" id="r_a65a12e5f6180873866cfaaf130fd1156"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a65a12e5f6180873866cfaaf130fd1156">contains_reactant</a> (const fourdst::atomic::Species &amp;species) const override</td></tr>
<tr class="memdesc:a65a12e5f6180873866cfaaf130fd1156"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the reaction involves a given species as a reactant. <br /></td></tr>
<tr class="separator:a65a12e5f6180873866cfaaf130fd1156"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e4811436d09afaa4a14c51d9af71f88" id="r_a4e4811436d09afaa4a14c51d9af71f88"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4e4811436d09afaa4a14c51d9af71f88">contains_product</a> (const fourdst::atomic::Species &amp;species) const override</td></tr>
<tr class="memdesc:a4e4811436d09afaa4a14c51d9af71f88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the reaction involves a given species as a product. <br /></td></tr>
<tr class="separator:a4e4811436d09afaa4a14c51d9af71f88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a445777acbbee2032d83a256181a90e3c" id="r_a445777acbbee2032d83a256181a90e3c"><td class="memItemLeft" align="right" valign="top">std::unordered_set&lt; fourdst::atomic::Species &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a445777acbbee2032d83a256181a90e3c">all_species</a> () const override</td></tr>
<tr class="memdesc:a445777acbbee2032d83a256181a90e3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a set of all unique species involved in the reaction. <br /></td></tr>
<tr class="separator:a445777acbbee2032d83a256181a90e3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad85ca288289b25d482cbb8e3ff270028" id="r_ad85ca288289b25d482cbb8e3ff270028"><td class="memItemLeft" align="right" valign="top">std::unordered_set&lt; fourdst::atomic::Species &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad85ca288289b25d482cbb8e3ff270028">reactant_species</a> () const override</td></tr>
<tr class="memdesc:ad85ca288289b25d482cbb8e3ff270028"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a set of all unique reactant species. <br /></td></tr>
<tr class="separator:ad85ca288289b25d482cbb8e3ff270028"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67c8fa4d5929c7a8cbca9b3d9dd2b704" id="r_a67c8fa4d5929c7a8cbca9b3d9dd2b704"><td class="memItemLeft" align="right" valign="top">std::unordered_set&lt; fourdst::atomic::Species &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a67c8fa4d5929c7a8cbca9b3d9dd2b704">product_species</a> () const override</td></tr>
<tr class="memdesc:a67c8fa4d5929c7a8cbca9b3d9dd2b704"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a set of all unique product species. <br /></td></tr>
<tr class="separator:a67c8fa4d5929c7a8cbca9b3d9dd2b704"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9205126955ad38f56e8aca3112bc150a" id="r_a9205126955ad38f56e8aca3112bc150a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9205126955ad38f56e8aca3112bc150a">num_species</a> () const override</td></tr>
<tr class="memdesc:a9205126955ad38f56e8aca3112bc150a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of unique species involved in the reaction. <br /></td></tr>
<tr class="separator:a9205126955ad38f56e8aca3112bc150a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57b2695d152360a6ba08776cc760e3a1" id="r_a57b2695d152360a6ba08776cc760e3a1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a57b2695d152360a6ba08776cc760e3a1">stoichiometry</a> (const fourdst::atomic::Species &amp;species) const override</td></tr>
<tr class="memdesc:a57b2695d152360a6ba08776cc760e3a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the stoichiometric coefficient for a given species. <br /></td></tr>
<tr class="separator:a57b2695d152360a6ba08776cc760e3a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f629cbfe95dc5643b5e3724be0db2f9" id="r_a0f629cbfe95dc5643b5e3724be0db2f9"><td class="memItemLeft" align="right" valign="top">std::unordered_map&lt; fourdst::atomic::Species, int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0f629cbfe95dc5643b5e3724be0db2f9">stoichiometry</a> () const override</td></tr>
<tr class="memdesc:a0f629cbfe95dc5643b5e3724be0db2f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a map of all species to their stoichiometric coefficients. <br /></td></tr>
<tr class="separator:a0f629cbfe95dc5643b5e3724be0db2f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06312f834439ccf93012dea53cab47ce" id="r_a06312f834439ccf93012dea53cab47ce"><td class="memItemLeft" align="right" valign="top">std::string_view&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a06312f834439ccf93012dea53cab47ce">id</a> () const override</td></tr>
<tr class="memdesc:a06312f834439ccf93012dea53cab47ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the unique identifier of the reaction. <br /></td></tr>
<tr class="separator:a06312f834439ccf93012dea53cab47ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae47931948f12816eb890c0db4fff4d68" id="r_ae47931948f12816eb890c0db4fff4d68"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae47931948f12816eb890c0db4fff4d68">qValue</a> () const override</td></tr>
<tr class="memdesc:ae47931948f12816eb890c0db4fff4d68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the Q-value of the reaction. <br /></td></tr>
<tr class="separator:ae47931948f12816eb890c0db4fff4d68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad095aba46860fec0e68386bf04f7f142" id="r_ad095aba46860fec0e68386bf04f7f142"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; fourdst::atomic::Species &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad095aba46860fec0e68386bf04f7f142">reactants</a> () const override</td></tr>
<tr class="memdesc:ad095aba46860fec0e68386bf04f7f142"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the vector of reactant species. <br /></td></tr>
<tr class="separator:ad095aba46860fec0e68386bf04f7f142"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f563b99bb550d5bafa2a989502de019" id="r_a5f563b99bb550d5bafa2a989502de019"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; fourdst::atomic::Species &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5f563b99bb550d5bafa2a989502de019">products</a> () const override</td></tr>
<tr class="memdesc:a5f563b99bb550d5bafa2a989502de019"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the vector of product species. <br /></td></tr>
<tr class="separator:a5f563b99bb550d5bafa2a989502de019"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a181b2c75af1f2701c43594c5bb2bac2d" id="r_a181b2c75af1f2701c43594c5bb2bac2d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a181b2c75af1f2701c43594c5bb2bac2d">is_reverse</a> () const override</td></tr>
<tr class="memdesc:a181b2c75af1f2701c43594c5bb2bac2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if this is a reverse reaction rate. <br /></td></tr>
<tr class="separator:a181b2c75af1f2701c43594c5bb2bac2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b30c49925823c87980b4fca17c8282e" id="r_a0b30c49925823c87980b4fca17c8282e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0b30c49925823c87980b4fca17c8282e">excess_energy</a> () const</td></tr>
<tr class="memdesc:a0b30c49925823c87980b4fca17c8282e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the excess energy from the mass difference of reactants and products. <br /></td></tr>
<tr class="separator:a0b30c49925823c87980b4fca17c8282e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7c930525db447e39b4de18fbc1251a8" id="r_ae7c930525db447e39b4de18fbc1251a8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae7c930525db447e39b4de18fbc1251a8">operator==</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaclib_reaction.html">ReaclibReaction</a> &amp;other) const</td></tr>
<tr class="memdesc:ae7c930525db447e39b4de18fbc1251a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares this reaction with another for equality based on their IDs. <br /></td></tr>
<tr class="separator:ae7c930525db447e39b4de18fbc1251a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b6008e0f629329bfc62256f4f081b77" id="r_a8b6008e0f629329bfc62256f4f081b77"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8b6008e0f629329bfc62256f4f081b77">operator!=</a> (const <a class="el" href="classgridfire_1_1reaction_1_1_reaclib_reaction.html">ReaclibReaction</a> &amp;other) const</td></tr>
<tr class="memdesc:a8b6008e0f629329bfc62256f4f081b77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares this reaction with another for inequality. <br /></td></tr>
<tr class="separator:a8b6008e0f629329bfc62256f4f081b77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a661dd461e51c37133f7f9931389fd3cc" id="r_a661dd461e51c37133f7f9931389fd3cc"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a661dd461e51c37133f7f9931389fd3cc">hash</a> (uint64_t seed) const override</td></tr>
<tr class="memdesc:a661dd461e51c37133f7f9931389fd3cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes a hash for the reaction based on its ID. <br /></td></tr>
<tr class="separator:a661dd461e51c37133f7f9931389fd3cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54fde02e7010e806136f976ab64b1740" id="r_a54fde02e7010e806136f976ab64b1740"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a54fde02e7010e806136f976ab64b1740">clone</a> () const override</td></tr>
<tr class="memdesc:a54fde02e7010e806136f976ab64b1740"><td class="mdescLeft">&#160;</td><td class="mdescRight">Polymorphic deep copy. <br /></td></tr>
<tr class="separator:a54fde02e7010e806136f976ab64b1740"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classgridfire_1_1reaction_1_1_reaction"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classgridfire_1_1reaction_1_1_reaction')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">gridfire::reaction::Reaction</a></td></tr>
<tr class="memitem:ab1860df84843be70f97469761e11ab6a inherit pub_methods_classgridfire_1_1reaction_1_1_reaction" id="r_ab1860df84843be70f97469761e11ab6a"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ab1860df84843be70f97469761e11ab6a">~Reaction</a> ()=default</td></tr>
<tr class="memdesc:ab1860df84843be70f97469761e11ab6a inherit pub_methods_classgridfire_1_1reaction_1_1_reaction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual destructor for correct polymorphic cleanup. <br /></td></tr>
<tr class="separator:ab1860df84843be70f97469761e11ab6a inherit pub_methods_classgridfire_1_1reaction_1_1_reaction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66b446c98add7e00a1d960f4e7c60dd inherit pub_methods_classgridfire_1_1reaction_1_1_reaction" id="r_ae66b446c98add7e00a1d960f4e7c60dd"><td class="memItemLeft" align="right" valign="top">virtual double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ae66b446c98add7e00a1d960f4e7c60dd">calculate_energy_generation_rate</a> (const double T9, const double rho, const double Ye, double mue, const std::vector&lt; double &gt; &amp;Y, const std::unordered_map&lt; size_t, fourdst::atomic::Species &gt; &amp;index_to_species_map) const</td></tr>
<tr class="memdesc:ae66b446c98add7e00a1d960f4e7c60dd inherit pub_methods_classgridfire_1_1reaction_1_1_reaction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convenience: energy generation rate from this reaction (double version). <br /></td></tr>
<tr class="separator:ae66b446c98add7e00a1d960f4e7c60dd inherit pub_methods_classgridfire_1_1reaction_1_1_reaction"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4282f85c34d6db1994c07e7a40f66d80 inherit pub_methods_classgridfire_1_1reaction_1_1_reaction" id="r_a4282f85c34d6db1994c07e7a40f66d80"><td class="memItemLeft" align="right" valign="top">virtual CppAD::AD&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a4282f85c34d6db1994c07e7a40f66d80">calculate_energy_generation_rate</a> (const CppAD::AD&lt; double &gt; &amp;T9, const CppAD::AD&lt; double &gt; &amp;rho, const CppAD::AD&lt; double &gt; &amp;Ye, const CppAD::AD&lt; double &gt; &amp;mue, const std::vector&lt; CppAD::AD&lt; double &gt; &gt; &amp;Y, const std::unordered_map&lt; size_t, fourdst::atomic::Species &gt; &amp;index_to_species_map) const</td></tr>
<tr class="memdesc:a4282f85c34d6db1994c07e7a40f66d80 inherit pub_methods_classgridfire_1_1reaction_1_1_reaction"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convenience: AD-enabled energy generation rate (AD version). <br /></td></tr>
<tr class="separator:a4282f85c34d6db1994c07e7a40f66d80 inherit pub_methods_classgridfire_1_1reaction_1_1_reaction"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:abab0ed78925789856ebb119d60c6a53d" id="r_abab0ed78925789856ebb119d60c6a53d"><td class="memItemLeft" align="right" valign="top">quill::Logger *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abab0ed78925789856ebb119d60c6a53d">m_logger</a> = fourdst::logging::LogManager::getInstance().getLogger(&quot;log&quot;)</td></tr>
<tr class="separator:abab0ed78925789856ebb119d60c6a53d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ca86e0f8f95ffb6d87ca295e44f14c5" id="r_a8ca86e0f8f95ffb6d87ca295e44f14c5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ca86e0f8f95ffb6d87ca295e44f14c5">m_id</a></td></tr>
<tr class="memdesc:a8ca86e0f8f95ffb6d87ca295e44f14c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unique identifier for the reaction (e.g., "h1+h1=&gt;h2+e+nu"). <br /></td></tr>
<tr class="separator:a8ca86e0f8f95ffb6d87ca295e44f14c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51f658789f34f96e0e6bd42cef5cbfe4" id="r_a51f658789f34f96e0e6bd42cef5cbfe4"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a51f658789f34f96e0e6bd42cef5cbfe4">m_peName</a></td></tr>
<tr class="memdesc:a51f658789f34f96e0e6bd42cef5cbfe4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of the reaction in (projectile, ejectile) notation (e.g. "p(p,g)d"). <br /></td></tr>
<tr class="separator:a51f658789f34f96e0e6bd42cef5cbfe4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbcb383bac0f47c66251ee1b7c5f539d" id="r_adbcb383bac0f47c66251ee1b7c5f539d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adbcb383bac0f47c66251ee1b7c5f539d">m_chapter</a></td></tr>
<tr class="memdesc:adbcb383bac0f47c66251ee1b7c5f539d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Chapter number from the REACLIB database, defining the reaction structure. <br /></td></tr>
<tr class="separator:adbcb383bac0f47c66251ee1b7c5f539d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a498c202a259cbc315997ec68a2cb8a59" id="r_a498c202a259cbc315997ec68a2cb8a59"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a498c202a259cbc315997ec68a2cb8a59">m_qValue</a> = 0.0</td></tr>
<tr class="memdesc:a498c202a259cbc315997ec68a2cb8a59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Q-value of the reaction in MeV. <br /></td></tr>
<tr class="separator:a498c202a259cbc315997ec68a2cb8a59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cf403bc519ce39a1af886432a653826" id="r_a7cf403bc519ce39a1af886432a653826"><td class="memItemLeft" align="right" valign="top">std::vector&lt; fourdst::atomic::Species &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7cf403bc519ce39a1af886432a653826">m_reactants</a></td></tr>
<tr class="memdesc:a7cf403bc519ce39a1af886432a653826"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reactants of the reaction. <br /></td></tr>
<tr class="separator:a7cf403bc519ce39a1af886432a653826"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac350a26bdf19d7c1d20db55a226e6063" id="r_ac350a26bdf19d7c1d20db55a226e6063"><td class="memItemLeft" align="right" valign="top">std::vector&lt; fourdst::atomic::Species &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac350a26bdf19d7c1d20db55a226e6063">m_products</a></td></tr>
<tr class="memdesc:ac350a26bdf19d7c1d20db55a226e6063"><td class="mdescLeft">&#160;</td><td class="mdescRight">Products of the reaction. <br /></td></tr>
<tr class="separator:ac350a26bdf19d7c1d20db55a226e6063"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e79437a68947e176b8dd7dcbe27baab" id="r_a7e79437a68947e176b8dd7dcbe27baab"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7e79437a68947e176b8dd7dcbe27baab">m_sourceLabel</a></td></tr>
<tr class="memdesc:a7e79437a68947e176b8dd7dcbe27baab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Source label for the rate data (e.g., "wc12w", "st08"). <br /></td></tr>
<tr class="separator:a7e79437a68947e176b8dd7dcbe27baab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ea3de0412395b7b617c4b71cbc2ab68" id="r_a8ea3de0412395b7b617c4b71cbc2ab68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgridfire_1_1reaction_1_1_rate_coefficient_set.html">RateCoefficientSet</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ea3de0412395b7b617c4b71cbc2ab68">m_rateCoefficients</a></td></tr>
<tr class="memdesc:a8ea3de0412395b7b617c4b71cbc2ab68"><td class="mdescLeft">&#160;</td><td class="mdescRight">The seven rate coefficients. <br /></td></tr>
<tr class="separator:a8ea3de0412395b7b617c4b71cbc2ab68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af52b42d940f6a09dba5d28898d2b0b1f" id="r_af52b42d940f6a09dba5d28898d2b0b1f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af52b42d940f6a09dba5d28898d2b0b1f">m_reverse</a> = false</td></tr>
<tr class="memdesc:af52b42d940f6a09dba5d28898d2b0b1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag indicating if this is a reverse reaction rate. <br /></td></tr>
<tr class="separator:af52b42d940f6a09dba5d28898d2b0b1f"><td class="memSeparator" colspan="2">&#160;</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:aeb177f9cf69e4f97c4518a27e6480523" id="r_aeb177f9cf69e4f97c4518a27e6480523"><td class="memTemplParams" colspan="2">template&lt;typename T&gt; </td></tr>
<tr class="memitem:aeb177f9cf69e4f97c4518a27e6480523"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aeb177f9cf69e4f97c4518a27e6480523">calculate_rate</a> (const T T9) const</td></tr>
<tr class="memdesc:aeb177f9cf69e4f97c4518a27e6480523"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template implementation for calculating the reaction rate. <br /></td></tr>
<tr class="separator:aeb177f9cf69e4f97c4518a27e6480523"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:ae24ad1e38daab536aec6ac72c67e8615" id="r_ae24ad1e38daab536aec6ac72c67e8615"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae24ad1e38daab536aec6ac72c67e8615">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classgridfire_1_1reaction_1_1_reaclib_reaction.html">ReaclibReaction</a> &amp;r)</td></tr>
<tr class="separator:ae24ad1e38daab536aec6ac72c67e8615"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ae2b9b41a598c5f0dcd050b32985ea44e" name="ae2b9b41a598c5f0dcd050b32985ea44e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2b9b41a598c5f0dcd050b32985ea44e">&#9670;&#160;</a></span>~ReaclibReaction()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">gridfire::reaction::ReaclibReaction::~ReaclibReaction </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel default">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a264112a230817a6080c770686e5bcc01" name="a264112a230817a6080c770686e5bcc01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a264112a230817a6080c770686e5bcc01">&#9670;&#160;</a></span>ReaclibReaction()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">gridfire::reaction::ReaclibReaction::ReaclibReaction </td>
<td>(</td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>peName</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>chapter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; fourdst::atomic::Species &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>reactants</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; fourdst::atomic::Species &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>products</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>qValue</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::string_view</td> <td class="paramname"><span class="paramname"><em>label</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structgridfire_1_1reaction_1_1_rate_coefficient_set.html">RateCoefficientSet</a> &amp;</td> <td class="paramname"><span class="paramname"><em>sets</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>reverse</em></span><span class="paramdefsep"> = </span><span class="paramdefval">false</span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructs a <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> object. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>A unique identifier for the reaction. </td></tr>
<tr><td class="paramname">peName</td><td>The name in (projectile, ejectile) notation (e.g., "p(p,g)d"). </td></tr>
<tr><td class="paramname">chapter</td><td>The REACLIB chapter number, defining reaction structure. </td></tr>
<tr><td class="paramname">reactants</td><td>A vector of reactant species. </td></tr>
<tr><td class="paramname">products</td><td>A vector of product species. </td></tr>
<tr><td class="paramname">qValue</td><td>The Q-value of the reaction in MeV. </td></tr>
<tr><td class="paramname">label</td><td>The source label for the rate data (e.g., "wc12", "st08"). </td></tr>
<tr><td class="paramname">sets</td><td>The set of rate coefficients. </td></tr>
<tr><td class="paramname">reverse</td><td>True if this is a reverse reaction rate. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a445777acbbee2032d83a256181a90e3c" name="a445777acbbee2032d83a256181a90e3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a445777acbbee2032d83a256181a90e3c">&#9670;&#160;</a></span>all_species()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unordered_set&lt; Species &gt; gridfire::reaction::ReaclibReaction::all_species </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets a set of all unique species involved in the reaction. </p>
<dl class="section return"><dt>Returns</dt><dd>An unordered_set of all reactant and product species. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#aa13cd9097229fcc99128d9286b8f17e6">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="ada6ec1ae05b9a92b58e6a4ecdf5a1656" name="ada6ec1ae05b9a92b58e6a4ecdf5a1656"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada6ec1ae05b9a92b58e6a4ecdf5a1656">&#9670;&#160;</a></span>calculate_log_rate_partial_deriv_wrt_T9()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double gridfire::reaction::ReaclibReaction::calculate_log_rate_partial_deriv_wrt_T9 </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">double</td> <td class="paramname"><span class="paramname"><em>Ye</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>mue</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const fourdst::composition::Composition &amp;</td> <td class="paramname"><span class="paramname"><em>comp</em></span>&#160;) const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Logarithmic partial derivative of the rate with respect to temperature. </p>
<p>Implementations return d(ln rate)/d(ln T9) or an equivalent measure (as documented by the concrete class), evaluated at the provided state.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">T9</td><td>Temperature in GK (10^9 K). </td></tr>
<tr><td class="paramname">rho</td><td>Mass density (g cm^-3). </td></tr>
<tr><td class="paramname">Ye</td><td>Electron fraction. </td></tr>
<tr><td class="paramname">mue</td><td>Electron chemical potential. </td></tr>
<tr><td class="paramname">comp</td><td>Composition object providing composition in a convenient form. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The logarithmic temperature derivative of the rate. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#aa2b615e764bb005e526ca9327319c735">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="aeb177f9cf69e4f97c4518a27e6480523" name="aeb177f9cf69e4f97c4518a27e6480523"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb177f9cf69e4f97c4518a27e6480523">&#9670;&#160;</a></span>calculate_rate() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">T gridfire::reaction::ReaclibReaction::calculate_rate </td>
<td>(</td>
<td class="paramtype">const T</td> <td class="paramname"><span class="paramname"><em>T9</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 class="mlabel private">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Template implementation for calculating the reaction rate. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td>The numeric type (double or CppAD::AD&lt;double&gt;). </td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">T9</td><td>The temperature in units of 10^9 K. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The calculated reaction rate.</dd></dl>
<p>The rate is calculated using the standard REACLIB formula: <code>rate = exp(a0 + a1/T9 + a2/T9^(1/3) + a3*T9^(1/3) + a4*T9 + a5*T9^(5/3) + a6*ln(T9))</code> </p>
</div>
</div>
<a id="afec5ccf7a8fb1ba56c8cc852ce858c5e" name="afec5ccf7a8fb1ba56c8cc852ce858c5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afec5ccf7a8fb1ba56c8cc852ce858c5e">&#9670;&#160;</a></span>calculate_rate() <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">CppAD::AD&lt; double &gt; gridfire::reaction::ReaclibReaction::calculate_rate </td>
<td>(</td>
<td class="paramtype">CppAD::AD&lt; double &gt;</td> <td class="paramname"><span class="paramname"><em>T9</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">CppAD::AD&lt; double &gt;</td> <td class="paramname"><span class="paramname"><em>rho</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">CppAD::AD&lt; double &gt;</td> <td class="paramname"><span class="paramname"><em>Ye</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">CppAD::AD&lt; double &gt;</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::vector&lt; CppAD::AD&lt; double &gt; &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::unordered_map&lt; size_t, fourdst::atomic::Species &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>index_to_species_map</em></span>&#160;) const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculates the reaction rate for a given temperature using CppAD types. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">T9</td><td>The temperature in units of 10^9 K, as a CppAD::AD&lt;double&gt;. </td></tr>
<tr><td class="paramname">rho</td><td>Density, as a CppAD::AD&lt;double&gt; [Not used in this implementation]. </td></tr>
<tr><td class="paramname">Ye</td><td></td></tr>
<tr><td class="paramname">mue</td><td></td></tr>
<tr><td class="paramname">Y</td><td>Molar abundances of species, as a vector of CppAD::AD&lt;double&gt; [Not used in this implementation]. </td></tr>
<tr><td class="paramname">index_to_species_map</td><td></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The calculated reaction rate, as a CppAD::AD&lt;double&gt;. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#af8303d67df61fc9e31ce054f0e8a3e14">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="acd16b1daf13456b3523362a37b1bf9b0" name="acd16b1daf13456b3523362a37b1bf9b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd16b1daf13456b3523362a37b1bf9b0">&#9670;&#160;</a></span>calculate_rate() <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">double gridfire::reaction::ReaclibReaction::calculate_rate </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">double</td> <td class="paramname"><span class="paramname"><em>Ye</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double</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::vector&lt; double &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>Y</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::unordered_map&lt; size_t, fourdst::atomic::Species &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>index_to_species_map</em></span>&#160;) const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculates the reaction rate for a given temperature. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">T9</td><td>The temperature in units of 10^9 K. </td></tr>
<tr><td class="paramname">rho</td><td>Density [Not used in this implementation]. </td></tr>
<tr><td class="paramname">Ye</td><td></td></tr>
<tr><td class="paramname">mue</td><td></td></tr>
<tr><td class="paramname">Y</td><td></td></tr>
<tr><td class="paramname">index_to_species_map</td><td></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The calculated reaction rate. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a83c121480533593adfd68c4a67a649f1">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="abe189c43e4d509d9d05dd205861ceddc" name="abe189c43e4d509d9d05dd205861ceddc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe189c43e4d509d9d05dd205861ceddc">&#9670;&#160;</a></span>chapter()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int gridfire::reaction::ReaclibReaction::chapter </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">
<p>Gets the REACLIB chapter number. </p>
<dl class="section return"><dt>Returns</dt><dd>The chapter number. </dd></dl>
</div>
</div>
<a id="a54fde02e7010e806136f976ab64b1740" name="a54fde02e7010e806136f976ab64b1740"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a54fde02e7010e806136f976ab64b1740">&#9670;&#160;</a></span>clone()</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&lt; <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html">Reaction</a> &gt; gridfire::reaction::ReaclibReaction::clone </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Polymorphic deep copy. </p>
<dl class="section return"><dt>Returns</dt><dd>A std::unique_ptr owning a new <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> equal to this one. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ab95ce7fb022a9432bdc77f14679221ee">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a171b690e1abaf23f11a94c39e9f8c944" name="a171b690e1abaf23f11a94c39e9f8c944"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a171b690e1abaf23f11a94c39e9f8c944">&#9670;&#160;</a></span>contains()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReaclibReaction::contains </td>
<td>(</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if the reaction involves a given species as a reactant or product. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>The species to check for. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the species is involved, false otherwise. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a768db057d358240d4825c21869af0792">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a4e4811436d09afaa4a14c51d9af71f88" name="a4e4811436d09afaa4a14c51d9af71f88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e4811436d09afaa4a14c51d9af71f88">&#9670;&#160;</a></span>contains_product()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReaclibReaction::contains_product </td>
<td>(</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if the reaction involves a given species as a product. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>The species to check for. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the species is a product, false otherwise. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a2708d2e8f42159df6605a5948b13c4c5">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a65a12e5f6180873866cfaaf130fd1156" name="a65a12e5f6180873866cfaaf130fd1156"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65a12e5f6180873866cfaaf130fd1156">&#9670;&#160;</a></span>contains_reactant()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReaclibReaction::contains_reactant </td>
<td>(</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if the reaction involves a given species as a reactant. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>The species to check for. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the species is a reactant, false otherwise. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ab28bf4f9417ecabcc8350bae449fedd5">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a0b30c49925823c87980b4fca17c8282e" name="a0b30c49925823c87980b4fca17c8282e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b30c49925823c87980b4fca17c8282e">&#9670;&#160;</a></span>excess_energy()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double gridfire::reaction::ReaclibReaction::excess_energy </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculates the excess energy from the mass difference of reactants and products. </p>
<dl class="section return"><dt>Returns</dt><dd>The excess energy in MeV. </dd></dl>
</div>
</div>
<a id="a661dd461e51c37133f7f9931389fd3cc" name="a661dd461e51c37133f7f9931389fd3cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a661dd461e51c37133f7f9931389fd3cc">&#9670;&#160;</a></span>hash()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint64_t gridfire::reaction::ReaclibReaction::hash </td>
<td>(</td>
<td class="paramtype">uint64_t</td> <td class="paramname"><span class="paramname"><em>seed</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>Computes a hash for the reaction based on its ID. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">seed</td><td>The seed for the hash function. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A 64-bit hash value.</dd></dl>
<p>Uses the XXHash64 algorithm on the reaction's ID string. </p>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a7ba8c18cd5445aa3499a6fd351183f7a">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a06312f834439ccf93012dea53cab47ce" name="a06312f834439ccf93012dea53cab47ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06312f834439ccf93012dea53cab47ce">&#9670;&#160;</a></span>id()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string_view gridfire::reaction::ReaclibReaction::id </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 class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the unique identifier of the reaction. </p>
<dl class="section return"><dt>Returns</dt><dd>The reaction ID. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a94b92308b9619ec20c690e55157786ba">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a181b2c75af1f2701c43594c5bb2bac2d" name="a181b2c75af1f2701c43594c5bb2bac2d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a181b2c75af1f2701c43594c5bb2bac2d">&#9670;&#160;</a></span>is_reverse()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReaclibReaction::is_reverse </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 class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if this is a reverse reaction rate. </p>
<dl class="section return"><dt>Returns</dt><dd>True if it is a reverse rate, false otherwise. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a3906a668410e02239f9031b5fc580214">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a9205126955ad38f56e8aca3112bc150a" name="a9205126955ad38f56e8aca3112bc150a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9205126955ad38f56e8aca3112bc150a">&#9670;&#160;</a></span>num_species()</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::reaction::ReaclibReaction::num_species </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the number of unique species involved in the reaction. </p>
<dl class="section return"><dt>Returns</dt><dd>The count of unique species. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ae2a1b0395ac127c792a8049cd0bcc249">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a8b6008e0f629329bfc62256f4f081b77" name="a8b6008e0f629329bfc62256f4f081b77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b6008e0f629329bfc62256f4f081b77">&#9670;&#160;</a></span>operator!=()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReaclibReaction::operator!= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaclib_reaction.html">ReaclibReaction</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</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> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Compares this reaction with another for inequality. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The other <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> to compare with. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the reactions are not equal. </dd></dl>
</div>
</div>
<a id="ae7c930525db447e39b4de18fbc1251a8" name="ae7c930525db447e39b4de18fbc1251a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7c930525db447e39b4de18fbc1251a8">&#9670;&#160;</a></span>operator==()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReaclibReaction::operator== </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaclib_reaction.html">ReaclibReaction</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</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> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Compares this reaction with another for equality based on their IDs. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">other</td><td>The other <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html" title="Represents a single nuclear reaction from a specific data source.">Reaction</a> to compare with. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if the reaction IDs are the same. </dd></dl>
</div>
</div>
<a id="af775f97f4d5e144e33bc6e0ba58a5851" name="af775f97f4d5e144e33bc6e0ba58a5851"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af775f97f4d5e144e33bc6e0ba58a5851">&#9670;&#160;</a></span>peName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual std::string_view gridfire::reaction::ReaclibReaction::peName </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 class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the reaction name in (projectile, ejectile) notation. </p>
<dl class="section return"><dt>Returns</dt><dd>The reaction name (e.g., "p(p,g)d"). </dd></dl>
</div>
</div>
<a id="a67c8fa4d5929c7a8cbca9b3d9dd2b704" name="a67c8fa4d5929c7a8cbca9b3d9dd2b704"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67c8fa4d5929c7a8cbca9b3d9dd2b704">&#9670;&#160;</a></span>product_species()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unordered_set&lt; Species &gt; gridfire::reaction::ReaclibReaction::product_species </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets a set of all unique product species. </p>
<dl class="section return"><dt>Returns</dt><dd>An unordered_set of product species. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a0d16572ae2b664374d32ee6c4e22123a">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a5f563b99bb550d5bafa2a989502de019" name="a5f563b99bb550d5bafa2a989502de019"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f563b99bb550d5bafa2a989502de019">&#9670;&#160;</a></span>products()</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&lt; fourdst::atomic::Species &gt; &amp; gridfire::reaction::ReaclibReaction::products </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 class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the vector of product species. </p>
<dl class="section return"><dt>Returns</dt><dd>A const reference to the vector of products. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a3d7451045d8df41ea98b5e419e0e5ab0">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="ae47931948f12816eb890c0db4fff4d68" name="ae47931948f12816eb890c0db4fff4d68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae47931948f12816eb890c0db4fff4d68">&#9670;&#160;</a></span>qValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double gridfire::reaction::ReaclibReaction::qValue </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 class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the Q-value of the reaction. </p>
<dl class="section return"><dt>Returns</dt><dd>The Q-value in whatever units the reaction was defined in (usually MeV). </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a7e06936f9e8bb74e68eaa10e708e5d3c">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="adfed51cf788a7ed4770cbd5945ddab2f" name="adfed51cf788a7ed4770cbd5945ddab2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfed51cf788a7ed4770cbd5945ddab2f">&#9670;&#160;</a></span>rateCoefficients()</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="structgridfire_1_1reaction_1_1_rate_coefficient_set.html">RateCoefficientSet</a> &amp; gridfire::reaction::ReaclibReaction::rateCoefficients </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">
<p>Gets the set of rate coefficients. </p>
<dl class="section return"><dt>Returns</dt><dd>A const reference to the <a class="el" href="structgridfire_1_1reaction_1_1_rate_coefficient_set.html" title="Holds the seven coefficients for the REACLIB rate equation.">RateCoefficientSet</a>. </dd></dl>
</div>
</div>
<a id="ad85ca288289b25d482cbb8e3ff270028" name="ad85ca288289b25d482cbb8e3ff270028"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad85ca288289b25d482cbb8e3ff270028">&#9670;&#160;</a></span>reactant_species()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unordered_set&lt; Species &gt; gridfire::reaction::ReaclibReaction::reactant_species </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets a set of all unique reactant species. </p>
<dl class="section return"><dt>Returns</dt><dd>An unordered_set of reactant species. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a82c14096308cdc9126ab6d9667febcd2">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="ad095aba46860fec0e68386bf04f7f142" name="ad095aba46860fec0e68386bf04f7f142"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad095aba46860fec0e68386bf04f7f142">&#9670;&#160;</a></span>reactants()</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&lt; fourdst::atomic::Species &gt; &amp; gridfire::reaction::ReaclibReaction::reactants </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 class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the vector of reactant species. </p>
<dl class="section return"><dt>Returns</dt><dd>A const reference to the vector of reactants. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ac7b08c61cdc97268b9442afec4d08dad">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a96d4ab87de02e9b0be3c248e2e955b4b" name="a96d4ab87de02e9b0be3c248e2e955b4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96d4ab87de02e9b0be3c248e2e955b4b">&#9670;&#160;</a></span>sourceLabel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string_view gridfire::reaction::ReaclibReaction::sourceLabel </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">
<p>Gets the source label for the rate data. </p>
<dl class="section return"><dt>Returns</dt><dd>The source label (e.g., "wc12w", "st08"). </dd></dl>
</div>
</div>
<a id="a0f629cbfe95dc5643b5e3724be0db2f9" name="a0f629cbfe95dc5643b5e3724be0db2f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f629cbfe95dc5643b5e3724be0db2f9">&#9670;&#160;</a></span>stoichiometry() <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::unordered_map&lt; Species, int &gt; gridfire::reaction::ReaclibReaction::stoichiometry </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets a map of all species to their stoichiometric coefficients. </p>
<dl class="section return"><dt>Returns</dt><dd>An unordered_map from species to their integer coefficients. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ad49f4cad024db72c966d949c75f1ce4d">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a57b2695d152360a6ba08776cc760e3a1" name="a57b2695d152360a6ba08776cc760e3a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a57b2695d152360a6ba08776cc760e3a1">&#9670;&#160;</a></span>stoichiometry() <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">int gridfire::reaction::ReaclibReaction::stoichiometry </td>
<td>(</td>
<td class="paramtype">const fourdst::atomic::Species &amp;</td> <td class="paramname"><span class="paramname"><em>species</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel nodiscard">nodiscard</span><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Calculates the stoichiometric coefficient for a given species. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">species</td><td>The species for which to find the coefficient. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The stoichiometric coefficient (negative for reactants, positive for products). </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#ab7888b57507d6d27de6e5fcaea40fff5">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<a id="a3c0fbdd07f9a837bd031c5bdc58e0e8f" name="a3c0fbdd07f9a837bd031c5bdc58e0e8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c0fbdd07f9a837bd031c5bdc58e0e8f">&#9670;&#160;</a></span>type()</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_1reaction.html#a026997f11e811fa7754ac9121c4ba74e">ReactionType</a> gridfire::reaction::ReaclibReaction::type </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 class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Category of this reaction (e.g., REACLIB, WEAK, LOGICAL_REACLIB). </p>
<dl class="section return"><dt>Returns</dt><dd>Enumerated reaction type for runtime dispatch and filtering. </dd></dl>
<p>Implements <a class="el" href="classgridfire_1_1reaction_1_1_reaction.html#a7f2590eee9f0dfb7b73cd92170a844b7">gridfire::reaction::Reaction</a>.</p>
</div>
</div>
<h2 class="groupheader">Friends And Related Symbol Documentation</h2>
<a id="ae24ad1e38daab536aec6ac72c67e8615" name="ae24ad1e38daab536aec6ac72c67e8615"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae24ad1e38daab536aec6ac72c67e8615">&#9670;&#160;</a></span>operator&lt;&lt;</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::ostream &amp; operator&lt;&lt; </td>
<td>(</td>
<td class="paramtype">std::ostream &amp;</td> <td class="paramname"><span class="paramname"><em>os</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classgridfire_1_1reaction_1_1_reaclib_reaction.html">ReaclibReaction</a> &amp;</td> <td class="paramname"><span class="paramname"><em>r</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel friend">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="adbcb383bac0f47c66251ee1b7c5f539d" name="adbcb383bac0f47c66251ee1b7c5f539d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adbcb383bac0f47c66251ee1b7c5f539d">&#9670;&#160;</a></span>m_chapter</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int gridfire::reaction::ReaclibReaction::m_chapter</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Chapter number from the REACLIB database, defining the reaction structure. </p>
</div>
</div>
<a id="a8ca86e0f8f95ffb6d87ca295e44f14c5" name="a8ca86e0f8f95ffb6d87ca295e44f14c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ca86e0f8f95ffb6d87ca295e44f14c5">&#9670;&#160;</a></span>m_id</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string gridfire::reaction::ReaclibReaction::m_id</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Unique identifier for the reaction (e.g., "h1+h1=&gt;h2+e+nu"). </p>
</div>
</div>
<a id="abab0ed78925789856ebb119d60c6a53d" name="abab0ed78925789856ebb119d60c6a53d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abab0ed78925789856ebb119d60c6a53d">&#9670;&#160;</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::reaction::ReaclibReaction::m_logger = fourdst::logging::LogManager::getInstance().getLogger(&quot;log&quot;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a51f658789f34f96e0e6bd42cef5cbfe4" name="a51f658789f34f96e0e6bd42cef5cbfe4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51f658789f34f96e0e6bd42cef5cbfe4">&#9670;&#160;</a></span>m_peName</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string gridfire::reaction::ReaclibReaction::m_peName</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Name of the reaction in (projectile, ejectile) notation (e.g. "p(p,g)d"). </p>
</div>
</div>
<a id="ac350a26bdf19d7c1d20db55a226e6063" name="ac350a26bdf19d7c1d20db55a226e6063"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac350a26bdf19d7c1d20db55a226e6063">&#9670;&#160;</a></span>m_products</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;fourdst::atomic::Species&gt; gridfire::reaction::ReaclibReaction::m_products</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Products of the reaction. </p>
</div>
</div>
<a id="a498c202a259cbc315997ec68a2cb8a59" name="a498c202a259cbc315997ec68a2cb8a59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a498c202a259cbc315997ec68a2cb8a59">&#9670;&#160;</a></span>m_qValue</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double gridfire::reaction::ReaclibReaction::m_qValue = 0.0</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Q-value of the reaction in MeV. </p>
</div>
</div>
<a id="a8ea3de0412395b7b617c4b71cbc2ab68" name="a8ea3de0412395b7b617c4b71cbc2ab68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ea3de0412395b7b617c4b71cbc2ab68">&#9670;&#160;</a></span>m_rateCoefficients</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_1reaction_1_1_rate_coefficient_set.html">RateCoefficientSet</a> gridfire::reaction::ReaclibReaction::m_rateCoefficients</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>The seven rate coefficients. </p>
</div>
</div>
<a id="a7cf403bc519ce39a1af886432a653826" name="a7cf403bc519ce39a1af886432a653826"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7cf403bc519ce39a1af886432a653826">&#9670;&#160;</a></span>m_reactants</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;fourdst::atomic::Species&gt; gridfire::reaction::ReaclibReaction::m_reactants</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reactants of the reaction. </p>
</div>
</div>
<a id="af52b42d940f6a09dba5d28898d2b0b1f" name="af52b42d940f6a09dba5d28898d2b0b1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af52b42d940f6a09dba5d28898d2b0b1f">&#9670;&#160;</a></span>m_reverse</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool gridfire::reaction::ReaclibReaction::m_reverse = false</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Flag indicating if this is a reverse reaction rate. </p>
</div>
</div>
<a id="a7e79437a68947e176b8dd7dcbe27baab" name="a7e79437a68947e176b8dd7dcbe27baab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e79437a68947e176b8dd7dcbe27baab">&#9670;&#160;</a></span>m_sourceLabel</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::string gridfire::reaction::ReaclibReaction::m_sourceLabel</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel protected">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Source label for the rate data (e.g., "wc12w", "st08"). </p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/include/gridfire/reaction/<a class="el" href="reaction_8h.html">reaction.h</a></li>
<li>src/lib/reaction/<a class="el" href="reaction_8cpp.html">reaction.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_1reaction.html">reaction</a></li><li class="navelem"><a class="el" href="classgridfire_1_1reaction_1_1_reaclib_reaction.html">ReaclibReaction</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>