2025-07-24 11:10:45 -04:00
<!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 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" >
2025-07-31 15:04:57 -04:00
< div id = "projectname" > GridFire< span id = "projectnumber" >   0.6.0< / span >
2025-07-24 11:10:45 -04:00
< / div >
< div id = "projectbrief" > General Purpose Nuclear Network< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
< / script >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
< / script >
< script type = "text/javascript" src = "menudata.js" > < / script >
< script type = "text/javascript" src = "menu.js" > < / script >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
< / script >
< div id = "main-nav" > < / div >
< / div > <!-- top -->
< div id = "side-nav" class = "ui-resizable side-nav-resizable" >
< div id = "nav-tree" >
< div id = "nav-tree-contents" >
< div id = "nav-sync" class = "sync" > < / div >
< / div >
< / div >
< div id = "splitbar" style = "-moz-user-select:none;"
class="ui-resizable-handle">
< / div >
< / div >
< script type = "text/javascript" >
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(function(){initNavTree('classgridfire_1_1_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 > |
< a href = "#pro-attribs" > Protected Attributes< / a > |
< a href = "#pri-methods" > Private Member Functions< / a > |
< a href = "#friends" > Friends< / a > |
< a href = "classgridfire_1_1_reaction-members.html" > List of all members< / a > < / div >
< div class = "headertitle" > < div class = "title" > gridfire::Reaction Class Reference< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< p > Represents a single nuclear reaction from a specific data source.
< a href = "#details" > More...< / a > < / p >
2025-07-31 10:54:31 -04:00
< p > < code > #include < reaction.h> < / code > < / p >
2025-07-24 11:10:45 -04:00
< div class = "dynheader" >
Inheritance diagram for gridfire::Reaction:< / div >
< div class = "dyncontent" >
< div class = "center" >
< img src = "classgridfire_1_1_reaction.png" usemap = "#gridfire::Reaction_map" alt = "" / >
< map id = "gridfire::Reaction_map" name = "gridfire::Reaction_map" >
< area href = "classgridfire_1_1reaction_1_1_logical_reaction.html" title = "Represents a "logical" reaction that aggregates rates from multiple sources." alt = "gridfire::reaction::LogicalReaction" shape = "rect" coords = "0,56,201,80" / >
< / 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:ab1860df84843be70f97469761e11ab6a" id = "r_ab1860df84843be70f97469761e11ab6a" > < td class = "memItemLeft" align = "right" valign = "top" > virtual  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ab1860df84843be70f97469761e11ab6a" > ~Reaction< / a > ()=default< / td > < / tr >
< tr class = "memdesc:ab1860df84843be70f97469761e11ab6a" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Virtual destructor. < br / > < / td > < / tr >
< tr class = "separator:ab1860df84843be70f97469761e11ab6a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7dff19d387e771d96c26e98d75ee9d5c" id = "r_a7dff19d387e771d96c26e98d75ee9d5c" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a7dff19d387e771d96c26e98d75ee9d5c" > Reaction< / a > (const std::string_view < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html#a084c38181408ed5e6fa2a2dd4d0ec905" > id< / a > , const std::string_view < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html#a78f42664cc957e266b6cf15fda09be97" > peName< / a > , const int < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html#a5cb438adfefb640e4bc58e09053bd629" > chapter< / a > , const std::vector< fourdst::atomic::Species > & < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html#a0b543e9b0bb4a21efe4b29780d9bdf5b" > reactants< / a > , const std::vector< fourdst::atomic::Species > & < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html#a6e2ff61b9e8409f2a561663628b8ce02" > products< / a > , const double < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html#abda0b4e4313e6d4ba57acf37d5976fb8" > qValue< / a > , const std::string_view label, const RateCoefficientSet & sets, const bool reverse=false)< / td > < / tr >
< tr class = "memdesc:a7dff19d387e771d96c26e98d75ee9d5c" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Constructs a < a class = "el" href = "classgridfire_1_1_reaction.html" title = "Represents a single nuclear reaction from a specific data source." > Reaction< / a > object. < br / > < / td > < / tr >
< tr class = "separator:a7dff19d387e771d96c26e98d75ee9d5c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ad81e9b2a1773470059ca6989c60556ec" id = "r_ad81e9b2a1773470059ca6989c60556ec" > < td class = "memItemLeft" align = "right" valign = "top" > virtual double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ad81e9b2a1773470059ca6989c60556ec" > calculate_rate< / a > (const double T9) const< / td > < / tr >
< tr class = "memdesc:ad81e9b2a1773470059ca6989c60556ec" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Calculates the reaction rate for a given temperature. < br / > < / td > < / tr >
< tr class = "separator:ad81e9b2a1773470059ca6989c60556ec" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a735192a42f72cd68f289493753e1a616" id = "r_a735192a42f72cd68f289493753e1a616" > < td class = "memItemLeft" align = "right" valign = "top" > virtual CppAD::AD< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a735192a42f72cd68f289493753e1a616" > calculate_rate< / a > (const CppAD::AD< double > T9) const< / td > < / tr >
< tr class = "memdesc:a735192a42f72cd68f289493753e1a616" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Calculates the reaction rate for a given temperature using CppAD types. < br / > < / td > < / tr >
< tr class = "separator:a735192a42f72cd68f289493753e1a616" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3a8ba9212d76d5ce51f20df6892c6061" id = "r_a3a8ba9212d76d5ce51f20df6892c6061" > < td class = "memItemLeft" align = "right" valign = "top" > virtual double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a3a8ba9212d76d5ce51f20df6892c6061" > calculate_forward_rate_log_derivative< / a > (const double T9) const< / td > < / tr >
< tr class = "separator:a3a8ba9212d76d5ce51f20df6892c6061" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a78f42664cc957e266b6cf15fda09be97" id = "r_a78f42664cc957e266b6cf15fda09be97" > < td class = "memItemLeft" align = "right" valign = "top" > virtual std::string_view  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a78f42664cc957e266b6cf15fda09be97" > peName< / a > () const< / td > < / tr >
< tr class = "memdesc:a78f42664cc957e266b6cf15fda09be97" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the reaction name in (projectile, ejectile) notation. < br / > < / td > < / tr >
< tr class = "separator:a78f42664cc957e266b6cf15fda09be97" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5cb438adfefb640e4bc58e09053bd629" id = "r_a5cb438adfefb640e4bc58e09053bd629" > < td class = "memItemLeft" align = "right" valign = "top" > int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a5cb438adfefb640e4bc58e09053bd629" > chapter< / a > () const< / td > < / tr >
< tr class = "memdesc:a5cb438adfefb640e4bc58e09053bd629" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the REACLIB chapter number. < br / > < / td > < / tr >
< tr class = "separator:a5cb438adfefb640e4bc58e09053bd629" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a410e2ab0784ad751f82bbe55be603db0" id = "r_a410e2ab0784ad751f82bbe55be603db0" > < td class = "memItemLeft" align = "right" valign = "top" > std::string_view  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a410e2ab0784ad751f82bbe55be603db0" > sourceLabel< / a > () const< / td > < / tr >
< tr class = "memdesc:a410e2ab0784ad751f82bbe55be603db0" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the source label for the rate data. < br / > < / td > < / tr >
< tr class = "separator:a410e2ab0784ad751f82bbe55be603db0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a85968076e686e67763f4fdf4f72a892e" id = "r_a85968076e686e67763f4fdf4f72a892e" > < td class = "memItemLeft" align = "right" valign = "top" > const RateCoefficientSet &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a85968076e686e67763f4fdf4f72a892e" > rateCoefficients< / a > () const< / td > < / tr >
< tr class = "memdesc:a85968076e686e67763f4fdf4f72a892e" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the set of rate coefficients. < br / > < / td > < / tr >
< tr class = "separator:a85968076e686e67763f4fdf4f72a892e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab92785f331a446e51a0960b75d60b37b" id = "r_ab92785f331a446e51a0960b75d60b37b" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ab92785f331a446e51a0960b75d60b37b" > contains< / a > (const fourdst::atomic::Species & species) const< / td > < / tr >
< tr class = "memdesc:ab92785f331a446e51a0960b75d60b37b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Checks if the reaction involves a given species as a reactant or product. < br / > < / td > < / tr >
< tr class = "separator:ab92785f331a446e51a0960b75d60b37b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:abbe243affa61ba9b2cd2a7b905cd5e45" id = "r_abbe243affa61ba9b2cd2a7b905cd5e45" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#abbe243affa61ba9b2cd2a7b905cd5e45" > contains_reactant< / a > (const fourdst::atomic::Species & species) const< / td > < / tr >
< tr class = "memdesc:abbe243affa61ba9b2cd2a7b905cd5e45" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Checks if the reaction involves a given species as a reactant. < br / > < / td > < / tr >
< tr class = "separator:abbe243affa61ba9b2cd2a7b905cd5e45" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a074d3cd2421fd5d0133e47f0522403e2" id = "r_a074d3cd2421fd5d0133e47f0522403e2" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a074d3cd2421fd5d0133e47f0522403e2" > contains_product< / a > (const fourdst::atomic::Species & species) const< / td > < / tr >
< tr class = "memdesc:a074d3cd2421fd5d0133e47f0522403e2" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Checks if the reaction involves a given species as a product. < br / > < / td > < / tr >
< tr class = "separator:a074d3cd2421fd5d0133e47f0522403e2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7dc8fda87e0581fde6da0a81cf4d7224" id = "r_a7dc8fda87e0581fde6da0a81cf4d7224" > < td class = "memItemLeft" align = "right" valign = "top" > std::unordered_set< fourdst::atomic::Species >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a7dc8fda87e0581fde6da0a81cf4d7224" > all_species< / a > () const< / td > < / tr >
< tr class = "memdesc:a7dc8fda87e0581fde6da0a81cf4d7224" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets a set of all unique species involved in the reaction. < br / > < / td > < / tr >
< tr class = "separator:a7dc8fda87e0581fde6da0a81cf4d7224" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a855ea65e4b62fb0cddc550424a4bc923" id = "r_a855ea65e4b62fb0cddc550424a4bc923" > < td class = "memItemLeft" align = "right" valign = "top" > std::unordered_set< fourdst::atomic::Species >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a855ea65e4b62fb0cddc550424a4bc923" > reactant_species< / a > () const< / td > < / tr >
< tr class = "memdesc:a855ea65e4b62fb0cddc550424a4bc923" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets a set of all unique reactant species. < br / > < / td > < / tr >
< tr class = "separator:a855ea65e4b62fb0cddc550424a4bc923" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a01c67726efbaa2ff8e4d6f2c965f485c" id = "r_a01c67726efbaa2ff8e4d6f2c965f485c" > < td class = "memItemLeft" align = "right" valign = "top" > std::unordered_set< fourdst::atomic::Species >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a01c67726efbaa2ff8e4d6f2c965f485c" > product_species< / a > () const< / td > < / tr >
< tr class = "memdesc:a01c67726efbaa2ff8e4d6f2c965f485c" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets a set of all unique product species. < br / > < / td > < / tr >
< tr class = "separator:a01c67726efbaa2ff8e4d6f2c965f485c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a1d3c8ab6d55155f9a21ad80ed8b9ef97" id = "r_a1d3c8ab6d55155f9a21ad80ed8b9ef97" > < td class = "memItemLeft" align = "right" valign = "top" > size_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a1d3c8ab6d55155f9a21ad80ed8b9ef97" > num_species< / a > () const< / td > < / tr >
< tr class = "memdesc:a1d3c8ab6d55155f9a21ad80ed8b9ef97" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the number of unique species involved in the reaction. < br / > < / td > < / tr >
< tr class = "separator:a1d3c8ab6d55155f9a21ad80ed8b9ef97" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aaf0c94db6536b4a9ac1ec08a5c8f01ac" id = "r_aaf0c94db6536b4a9ac1ec08a5c8f01ac" > < td class = "memItemLeft" align = "right" valign = "top" > int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aaf0c94db6536b4a9ac1ec08a5c8f01ac" > stoichiometry< / a > (const fourdst::atomic::Species & species) const< / td > < / tr >
< tr class = "memdesc:aaf0c94db6536b4a9ac1ec08a5c8f01ac" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Calculates the stoichiometric coefficient for a given species. < br / > < / td > < / tr >
< tr class = "separator:aaf0c94db6536b4a9ac1ec08a5c8f01ac" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ad359c06d7196c1a7a955a7b66a51dbe3" id = "r_ad359c06d7196c1a7a955a7b66a51dbe3" > < td class = "memItemLeft" align = "right" valign = "top" > std::unordered_map< fourdst::atomic::Species, int >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ad359c06d7196c1a7a955a7b66a51dbe3" > stoichiometry< / a > () const< / td > < / tr >
< tr class = "memdesc:ad359c06d7196c1a7a955a7b66a51dbe3" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets a map of all species to their stoichiometric coefficients. < br / > < / td > < / tr >
< tr class = "separator:ad359c06d7196c1a7a955a7b66a51dbe3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a084c38181408ed5e6fa2a2dd4d0ec905" id = "r_a084c38181408ed5e6fa2a2dd4d0ec905" > < td class = "memItemLeft" align = "right" valign = "top" > std::string_view  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a084c38181408ed5e6fa2a2dd4d0ec905" > id< / a > () const< / td > < / tr >
< tr class = "memdesc:a084c38181408ed5e6fa2a2dd4d0ec905" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the unique identifier of the reaction. < br / > < / td > < / tr >
< tr class = "separator:a084c38181408ed5e6fa2a2dd4d0ec905" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:abda0b4e4313e6d4ba57acf37d5976fb8" id = "r_abda0b4e4313e6d4ba57acf37d5976fb8" > < td class = "memItemLeft" align = "right" valign = "top" > double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#abda0b4e4313e6d4ba57acf37d5976fb8" > qValue< / a > () const< / td > < / tr >
< tr class = "memdesc:abda0b4e4313e6d4ba57acf37d5976fb8" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the Q-value of the reaction. < br / > < / td > < / tr >
< tr class = "separator:abda0b4e4313e6d4ba57acf37d5976fb8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a0b543e9b0bb4a21efe4b29780d9bdf5b" id = "r_a0b543e9b0bb4a21efe4b29780d9bdf5b" > < td class = "memItemLeft" align = "right" valign = "top" > const std::vector< fourdst::atomic::Species > &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a0b543e9b0bb4a21efe4b29780d9bdf5b" > reactants< / a > () const< / td > < / tr >
< tr class = "memdesc:a0b543e9b0bb4a21efe4b29780d9bdf5b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the vector of reactant species. < br / > < / td > < / tr >
< tr class = "separator:a0b543e9b0bb4a21efe4b29780d9bdf5b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6e2ff61b9e8409f2a561663628b8ce02" id = "r_a6e2ff61b9e8409f2a561663628b8ce02" > < td class = "memItemLeft" align = "right" valign = "top" > const std::vector< fourdst::atomic::Species > &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a6e2ff61b9e8409f2a561663628b8ce02" > products< / a > () const< / td > < / tr >
< tr class = "memdesc:a6e2ff61b9e8409f2a561663628b8ce02" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Gets the vector of product species. < br / > < / td > < / tr >
< tr class = "separator:a6e2ff61b9e8409f2a561663628b8ce02" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aa67d05dfabf007c1acad34052d9a1dba" id = "r_aa67d05dfabf007c1acad34052d9a1dba" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aa67d05dfabf007c1acad34052d9a1dba" > is_reverse< / a > () const< / td > < / tr >
< tr class = "memdesc:aa67d05dfabf007c1acad34052d9a1dba" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Checks if this is a reverse reaction rate. < br / > < / td > < / tr >
< tr class = "separator:aa67d05dfabf007c1acad34052d9a1dba" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aa1d71e38fc55ae691dbb9ec459a612a5" id = "r_aa1d71e38fc55ae691dbb9ec459a612a5" > < td class = "memItemLeft" align = "right" valign = "top" > double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aa1d71e38fc55ae691dbb9ec459a612a5" > excess_energy< / a > () const< / td > < / tr >
< tr class = "memdesc:aa1d71e38fc55ae691dbb9ec459a612a5" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Calculates the excess energy from the mass difference of reactants and products. < br / > < / td > < / tr >
< tr class = "separator:aa1d71e38fc55ae691dbb9ec459a612a5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac426457cf0a54a15b206549422083bac" id = "r_ac426457cf0a54a15b206549422083bac" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ac426457cf0a54a15b206549422083bac" > operator==< / a > (const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > Reaction< / a > & other) const< / td > < / tr >
< tr class = "memdesc:ac426457cf0a54a15b206549422083bac" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Compares this reaction with another for equality based on their IDs. < br / > < / td > < / tr >
< tr class = "separator:ac426457cf0a54a15b206549422083bac" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a2f1c115a99bc7c477a2e858ff18b1b51" id = "r_a2f1c115a99bc7c477a2e858ff18b1b51" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a2f1c115a99bc7c477a2e858ff18b1b51" > operator!=< / a > (const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > Reaction< / a > & other) const< / td > < / tr >
< tr class = "memdesc:a2f1c115a99bc7c477a2e858ff18b1b51" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Compares this reaction with another for inequality. < br / > < / td > < / tr >
< tr class = "separator:a2f1c115a99bc7c477a2e858ff18b1b51" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af6c20e6d03a2d9f87632f71a90b88cb5" id = "r_af6c20e6d03a2d9f87632f71a90b88cb5" > < td class = "memItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#af6c20e6d03a2d9f87632f71a90b88cb5" > hash< / a > (uint64_t seed=0) const< / td > < / tr >
< tr class = "memdesc:af6c20e6d03a2d9f87632f71a90b88cb5" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Computes a hash for the reaction based on its ID. < br / > < / td > < / tr >
< tr class = "separator:af6c20e6d03a2d9f87632f71a90b88cb5" > < td class = "memSeparator" colspan = "2" >   < / 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:a7044d0a1d59d85502ce554e4ec2167e4" id = "r_a7044d0a1d59d85502ce554e4ec2167e4" > < td class = "memItemLeft" align = "right" valign = "top" > quill::Logger *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a7044d0a1d59d85502ce554e4ec2167e4" > m_logger< / a > = fourdst::logging::LogManager::getInstance().getLogger(" log" )< / td > < / tr >
< tr class = "separator:a7044d0a1d59d85502ce554e4ec2167e4" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5c685e5a736b51799e5b9f6746c4126b" id = "r_a5c685e5a736b51799e5b9f6746c4126b" > < td class = "memItemLeft" align = "right" valign = "top" > std::string  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a5c685e5a736b51799e5b9f6746c4126b" > m_id< / a > < / td > < / tr >
< tr class = "memdesc:a5c685e5a736b51799e5b9f6746c4126b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Unique identifier for the reaction (e.g., "h1+h1=> h2+e+nu"). < br / > < / td > < / tr >
< tr class = "separator:a5c685e5a736b51799e5b9f6746c4126b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6124aa9fc2306349e1dd879a37923248" id = "r_a6124aa9fc2306349e1dd879a37923248" > < td class = "memItemLeft" align = "right" valign = "top" > std::string  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a6124aa9fc2306349e1dd879a37923248" > m_peName< / a > < / td > < / tr >
< tr class = "memdesc:a6124aa9fc2306349e1dd879a37923248" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Name of the reaction in (projectile, ejectile) notation (e.g. "p(p,g)d"). < br / > < / td > < / tr >
< tr class = "separator:a6124aa9fc2306349e1dd879a37923248" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a16f9cbb6269817099d3dc07d4e63da7b" id = "r_a16f9cbb6269817099d3dc07d4e63da7b" > < td class = "memItemLeft" align = "right" valign = "top" > int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a16f9cbb6269817099d3dc07d4e63da7b" > m_chapter< / a > < / td > < / tr >
< tr class = "memdesc:a16f9cbb6269817099d3dc07d4e63da7b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Chapter number from the REACLIB database, defining the reaction structure. < br / > < / td > < / tr >
< tr class = "separator:a16f9cbb6269817099d3dc07d4e63da7b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a59122a2898bb9af640cc3e9aeb49028b" id = "r_a59122a2898bb9af640cc3e9aeb49028b" > < td class = "memItemLeft" align = "right" valign = "top" > double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a59122a2898bb9af640cc3e9aeb49028b" > m_qValue< / a > = 0.0< / td > < / tr >
< tr class = "memdesc:a59122a2898bb9af640cc3e9aeb49028b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Q-value of the reaction in MeV. < br / > < / td > < / tr >
< tr class = "separator:a59122a2898bb9af640cc3e9aeb49028b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a87a065b3c7806bcdb5eadb7de2978a11" id = "r_a87a065b3c7806bcdb5eadb7de2978a11" > < td class = "memItemLeft" align = "right" valign = "top" > std::vector< fourdst::atomic::Species >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a87a065b3c7806bcdb5eadb7de2978a11" > m_reactants< / a > < / td > < / tr >
< tr class = "memdesc:a87a065b3c7806bcdb5eadb7de2978a11" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Reactants of the reaction. < br / > < / td > < / tr >
< tr class = "separator:a87a065b3c7806bcdb5eadb7de2978a11" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a4b5607ed413acdf29539b8a57461e49e" id = "r_a4b5607ed413acdf29539b8a57461e49e" > < td class = "memItemLeft" align = "right" valign = "top" > std::vector< fourdst::atomic::Species >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a4b5607ed413acdf29539b8a57461e49e" > m_products< / a > < / td > < / tr >
< tr class = "memdesc:a4b5607ed413acdf29539b8a57461e49e" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Products of the reaction. < br / > < / td > < / tr >
< tr class = "separator:a4b5607ed413acdf29539b8a57461e49e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a0185c6be5465d113f25e00aee1297cd6" id = "r_a0185c6be5465d113f25e00aee1297cd6" > < td class = "memItemLeft" align = "right" valign = "top" > std::string  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a0185c6be5465d113f25e00aee1297cd6" > m_sourceLabel< / a > < / td > < / tr >
< tr class = "memdesc:a0185c6be5465d113f25e00aee1297cd6" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Source label for the rate data (e.g., "wc12w", "st08"). < br / > < / td > < / tr >
< tr class = "separator:a0185c6be5465d113f25e00aee1297cd6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aa61a9a024d7c4ff66a351ccd0277ec72" id = "r_aa61a9a024d7c4ff66a351ccd0277ec72" > < td class = "memItemLeft" align = "right" valign = "top" > RateCoefficientSet  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aa61a9a024d7c4ff66a351ccd0277ec72" > m_rateCoefficients< / a > < / td > < / tr >
< tr class = "memdesc:aa61a9a024d7c4ff66a351ccd0277ec72" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The seven rate coefficients. < br / > < / td > < / tr >
< tr class = "separator:aa61a9a024d7c4ff66a351ccd0277ec72" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a0b0b9ac498080aae91ffd466d1ae85a9" id = "r_a0b0b9ac498080aae91ffd466d1ae85a9" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a0b0b9ac498080aae91ffd466d1ae85a9" > m_reverse< / a > = false< / td > < / tr >
< tr class = "memdesc:a0b0b9ac498080aae91ffd466d1ae85a9" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Flag indicating if this is a reverse reaction rate. < br / > < / td > < / tr >
< tr class = "separator:a0b0b9ac498080aae91ffd466d1ae85a9" > < 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:a648b9ed6108bed2469dc028fb7e351af" id = "r_a648b9ed6108bed2469dc028fb7e351af" > < td class = "memTemplParams" colspan = "2" > template< typename T> < / td > < / tr >
< tr class = "memitem:a648b9ed6108bed2469dc028fb7e351af" > < td class = "memTemplItemLeft" align = "right" valign = "top" > T  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "#a648b9ed6108bed2469dc028fb7e351af" > calculate_rate< / a > (const T T9) const< / td > < / tr >
< tr class = "memdesc:a648b9ed6108bed2469dc028fb7e351af" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Template implementation for calculating the reaction rate. < br / > < / td > < / tr >
< tr class = "separator:a648b9ed6108bed2469dc028fb7e351af" > < td class = "memSeparator" colspan = "2" >   < / 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:a2b05ab608187216fc751bd2e42e8b7d8" id = "r_a2b05ab608187216fc751bd2e42e8b7d8" > < td class = "memItemLeft" align = "right" valign = "top" > std::ostream &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a2b05ab608187216fc751bd2e42e8b7d8" > operator< < < / a > (std::ostream & os, const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > Reaction< / a > & r)< / td > < / tr >
< tr class = "separator:a2b05ab608187216fc751bd2e42e8b7d8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table >
< a name = "details" id = "details" > < / a > < h2 class = "groupheader" > Detailed Description< / h2 >
< div class = "textblock" > < p > Represents a single nuclear reaction from a specific data source. < / p >
< p > This class encapsulates all properties of a single nuclear reaction as defined in formats like REACLIB, including reactants, products, Q-value, and rate coefficients from a particular evaluation (source).< / p >
< p > Example: < / p > < div class = "fragment" > < div class = "line" > < span class = "comment" > // Assuming species and rate coefficients are defined< / span > < / div >
< div class = "line" > < a class = "code hl_function" href = "#a7dff19d387e771d96c26e98d75ee9d5c" > Reaction< / a > p_gamma_d(< / div >
< div class = "line" > < span class = "stringliteral" > " H_1_H_1_to_H_2" < / span > , < span class = "stringliteral" > " p(p,g)d" < / span > , 1, {H_1, H_1}, {H_2}, 5.493, < span class = "stringliteral" > " st08" < / span > , rate_coeffs< / div >
< div class = "line" > );< / div >
< div class = "line" > < span class = "keywordtype" > double< / span > rate = p_gamma_d.calculate_rate(0.1); < span class = "comment" > // T9 = 0.1< / span > < / div >
2025-07-31 10:54:31 -04:00
< div class = "ttc" id = "aclassgridfire_1_1_reaction_html_a7dff19d387e771d96c26e98d75ee9d5c" > < div class = "ttname" > < a href = "#a7dff19d387e771d96c26e98d75ee9d5c" > gridfire::Reaction::Reaction< / a > < / div > < div class = "ttdeci" > Reaction(const std::string_view id, const std::string_view peName, const int chapter, const std::vector< fourdst::atomic::Species > & reactants, const std::vector< fourdst::atomic::Species > & products, const double qValue, const std::string_view label, const RateCoefficientSet & sets, const bool reverse=false)< / div > < div class = "ttdoc" > Constructs a Reaction object.< / div > < div class = "ttdef" > < b > Definition< / b > reaction.cpp:19< / div > < / div >
< / div > <!-- fragment --> < / div > < h2 class = "groupheader" > Constructor & Destructor Documentation< / h2 >
2025-07-24 11:10:45 -04:00
< a id = "ab1860df84843be70f97469761e11ab6a" name = "ab1860df84843be70f97469761e11ab6a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab1860df84843be70f97469761e11ab6a" > ◆   < / a > < / span > ~Reaction()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > virtual gridfire::reaction::Reaction::~Reaction < / 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 virtual" > virtual< / span > < span class = "mlabel default" > default< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Virtual destructor. < / p >
< / div >
< / div >
< a id = "a7dff19d387e771d96c26e98d75ee9d5c" name = "a7dff19d387e771d96c26e98d75ee9d5c" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a7dff19d387e771d96c26e98d75ee9d5c" > ◆   < / a > < / span > Reaction()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > gridfire::reaction::Reaction::Reaction < / td >
< td > (< / td >
< td class = "paramtype" > const 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" > const 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" > const 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< fourdst::atomic::Species > & < / 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< fourdst::atomic::Species > & < / td > < td class = "paramname" > < span class = "paramname" > < em > products< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const double< / td > < td class = "paramname" > < span class = "paramname" > < em > qValue< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const 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 RateCoefficientSet & < / td > < td class = "paramname" > < span class = "paramname" > < em > sets< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const bool< / td > < td class = "paramname" > < span class = "paramname" > < em > reverse< / em > < / span > < span class = "paramdefsep" > = < / span > < span class = "paramdefval" > false< / span >   )< / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Constructs a < a class = "el" href = "classgridfire_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 = "a7dc8fda87e0581fde6da0a81cf4d7224" name = "a7dc8fda87e0581fde6da0a81cf4d7224" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a7dc8fda87e0581fde6da0a81cf4d7224" > ◆   < / 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< Species > gridfire::reaction::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "a3a8ba9212d76d5ce51f20df6892c6061" name = "a3a8ba9212d76d5ce51f20df6892c6061" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3a8ba9212d76d5ce51f20df6892c6061" > ◆   < / a > < / span > calculate_forward_rate_log_derivative()< / 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::Reaction::calculate_forward_rate_log_derivative < / td >
< td > (< / td >
< td class = "paramtype" > const double< / 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 nodiscard" > nodiscard< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a735192a42f72cd68f289493753e1a616" name = "a735192a42f72cd68f289493753e1a616" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a735192a42f72cd68f289493753e1a616" > ◆   < / a > < / span > calculate_rate() < 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" > CppAD::AD< double > gridfire::reaction::Reaction::calculate_rate < / td >
< td > (< / td >
< td class = "paramtype" > const CppAD::AD< double > < / 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 nodiscard" > nodiscard< / 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< double> . < / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "section return" > < dt > Returns< / dt > < dd > The calculated reaction rate, as a CppAD::AD< double> . < / dd > < / dl >
< / div >
< / div >
< a id = "ad81e9b2a1773470059ca6989c60556ec" name = "ad81e9b2a1773470059ca6989c60556ec" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ad81e9b2a1773470059ca6989c60556ec" > ◆   < / 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" > double gridfire::reaction::Reaction::calculate_rate < / td >
< td > (< / td >
< td class = "paramtype" > const double< / 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 nodiscard" > nodiscard< / 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 >
< / table >
< / dd >
< / dl >
< dl class = "section return" > < dt > Returns< / dt > < dd > The calculated reaction rate. < / dd > < / dl >
< / div >
< / div >
< a id = "a648b9ed6108bed2469dc028fb7e351af" name = "a648b9ed6108bed2469dc028fb7e351af" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a648b9ed6108bed2469dc028fb7e351af" > ◆   < / a > < / span > calculate_rate() < span class = "overload" > [3/3]< / span > < / h2 >
< div class = "memitem" >
< div class = "memproto" >
< div class = "memtemplate" >
template< typename T> < / div >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > T gridfire::reaction::Reaction::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< double> ). < / 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 = "a5cb438adfefb640e4bc58e09053bd629" name = "a5cb438adfefb640e4bc58e09053bd629" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5cb438adfefb640e4bc58e09053bd629" > ◆   < / 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::Reaction::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 = "ab92785f331a446e51a0960b75d60b37b" name = "ab92785f331a446e51a0960b75d60b37b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab92785f331a446e51a0960b75d60b37b" > ◆   < / 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::Reaction::contains < / td >
< td > (< / td >
< td class = "paramtype" > const fourdst::atomic::Species & < / td > < td class = "paramname" > < span class = "paramname" > < em > species< / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel nodiscard" > nodiscard< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Checks if 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 >
< / div >
< / div >
< a id = "a074d3cd2421fd5d0133e47f0522403e2" name = "a074d3cd2421fd5d0133e47f0522403e2" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a074d3cd2421fd5d0133e47f0522403e2" > ◆   < / 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::Reaction::contains_product < / td >
< td > (< / td >
< td class = "paramtype" > const fourdst::atomic::Species & < / td > < td class = "paramname" > < span class = "paramname" > < em > species< / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel nodiscard" > nodiscard< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Checks if 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 >
< / div >
< / div >
< a id = "abbe243affa61ba9b2cd2a7b905cd5e45" name = "abbe243affa61ba9b2cd2a7b905cd5e45" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#abbe243affa61ba9b2cd2a7b905cd5e45" > ◆   < / 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::Reaction::contains_reactant < / td >
< td > (< / td >
< td class = "paramtype" > const fourdst::atomic::Species & < / td > < td class = "paramname" > < span class = "paramname" > < em > species< / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel nodiscard" > nodiscard< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Checks if 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 >
< / div >
< / div >
< a id = "aa1d71e38fc55ae691dbb9ec459a612a5" name = "aa1d71e38fc55ae691dbb9ec459a612a5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa1d71e38fc55ae691dbb9ec459a612a5" > ◆   < / 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::Reaction::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 = "af6c20e6d03a2d9f87632f71a90b88cb5" name = "af6c20e6d03a2d9f87632f71a90b88cb5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#af6c20e6d03a2d9f87632f71a90b88cb5" > ◆   < / 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::Reaction::hash < / td >
< td > (< / td >
< td class = "paramtype" > uint64_t< / td > < td class = "paramname" > < span class = "paramname" > < em > seed< / em > < / span > < span class = "paramdefsep" > = < / span > < span class = "paramdefval" > 0< / 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 > 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 >
< / div >
< / div >
< a id = "a084c38181408ed5e6fa2a2dd4d0ec905" name = "a084c38181408ed5e6fa2a2dd4d0ec905" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a084c38181408ed5e6fa2a2dd4d0ec905" > ◆   < / 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::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "aa67d05dfabf007c1acad34052d9a1dba" name = "aa67d05dfabf007c1acad34052d9a1dba" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa67d05dfabf007c1acad34052d9a1dba" > ◆   < / 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::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "a1d3c8ab6d55155f9a21ad80ed8b9ef97" name = "a1d3c8ab6d55155f9a21ad80ed8b9ef97" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1d3c8ab6d55155f9a21ad80ed8b9ef97" > ◆   < / 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::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "a2f1c115a99bc7c477a2e858ff18b1b51" name = "a2f1c115a99bc7c477a2e858ff18b1b51" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2f1c115a99bc7c477a2e858ff18b1b51" > ◆   < / 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::Reaction::operator!= < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > Reaction< / a > & < / 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_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 = "ac426457cf0a54a15b206549422083bac" name = "ac426457cf0a54a15b206549422083bac" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac426457cf0a54a15b206549422083bac" > ◆   < / 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::Reaction::operator== < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > Reaction< / a > & < / 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_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 = "a78f42664cc957e266b6cf15fda09be97" name = "a78f42664cc957e266b6cf15fda09be97" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a78f42664cc957e266b6cf15fda09be97" > ◆   < / 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::Reaction::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 = "a01c67726efbaa2ff8e4d6f2c965f485c" name = "a01c67726efbaa2ff8e4d6f2c965f485c" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a01c67726efbaa2ff8e4d6f2c965f485c" > ◆   < / 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< Species > gridfire::reaction::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "a6e2ff61b9e8409f2a561663628b8ce02" name = "a6e2ff61b9e8409f2a561663628b8ce02" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6e2ff61b9e8409f2a561663628b8ce02" > ◆   < / 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< fourdst::atomic::Species > & gridfire::reaction::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "abda0b4e4313e6d4ba57acf37d5976fb8" name = "abda0b4e4313e6d4ba57acf37d5976fb8" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#abda0b4e4313e6d4ba57acf37d5976fb8" > ◆   < / 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::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "a85968076e686e67763f4fdf4f72a892e" name = "a85968076e686e67763f4fdf4f72a892e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a85968076e686e67763f4fdf4f72a892e" > ◆   < / 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 RateCoefficientSet & gridfire::reaction::Reaction::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 = "a855ea65e4b62fb0cddc550424a4bc923" name = "a855ea65e4b62fb0cddc550424a4bc923" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a855ea65e4b62fb0cddc550424a4bc923" > ◆   < / 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< Species > gridfire::reaction::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "a0b543e9b0bb4a21efe4b29780d9bdf5b" name = "a0b543e9b0bb4a21efe4b29780d9bdf5b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a0b543e9b0bb4a21efe4b29780d9bdf5b" > ◆   < / 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< fourdst::atomic::Species > & gridfire::reaction::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "a410e2ab0784ad751f82bbe55be603db0" name = "a410e2ab0784ad751f82bbe55be603db0" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a410e2ab0784ad751f82bbe55be603db0" > ◆   < / 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::Reaction::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 = "ad359c06d7196c1a7a955a7b66a51dbe3" name = "ad359c06d7196c1a7a955a7b66a51dbe3" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ad359c06d7196c1a7a955a7b66a51dbe3" > ◆   < / 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< Species, int > gridfire::reaction::Reaction::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 > < / 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 >
< / div >
< / div >
< a id = "aaf0c94db6536b4a9ac1ec08a5c8f01ac" name = "aaf0c94db6536b4a9ac1ec08a5c8f01ac" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aaf0c94db6536b4a9ac1ec08a5c8f01ac" > ◆   < / 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::Reaction::stoichiometry < / td >
< td > (< / td >
< td class = "paramtype" > const fourdst::atomic::Species & < / td > < td class = "paramname" > < span class = "paramname" > < em > species< / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel nodiscard" > nodiscard< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > 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 >
< / div >
< / div >
< h2 class = "groupheader" > Friends And Related Symbol Documentation< / h2 >
< a id = "a2b05ab608187216fc751bd2e42e8b7d8" name = "a2b05ab608187216fc751bd2e42e8b7d8" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2b05ab608187216fc751bd2e42e8b7d8" > ◆   < / 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" > std::ostream & operator< < < / td >
< td > (< / td >
< td class = "paramtype" > std::ostream & < / 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_reaction.html" > Reaction< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > r< / em > < / span >   )< / 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 = "a16f9cbb6269817099d3dc07d4e63da7b" name = "a16f9cbb6269817099d3dc07d4e63da7b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a16f9cbb6269817099d3dc07d4e63da7b" > ◆   < / 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::Reaction::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 = "a5c685e5a736b51799e5b9f6746c4126b" name = "a5c685e5a736b51799e5b9f6746c4126b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5c685e5a736b51799e5b9f6746c4126b" > ◆   < / 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::Reaction::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=> h2+e+nu"). < / p >
< / div >
< / div >
< a id = "a7044d0a1d59d85502ce554e4ec2167e4" name = "a7044d0a1d59d85502ce554e4ec2167e4" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a7044d0a1d59d85502ce554e4ec2167e4" > ◆   < / 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::Reaction::m_logger = fourdst::logging::LogManager::getInstance().getLogger(" log" )< / 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 = "a6124aa9fc2306349e1dd879a37923248" name = "a6124aa9fc2306349e1dd879a37923248" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6124aa9fc2306349e1dd879a37923248" > ◆   < / 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::Reaction::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 = "a4b5607ed413acdf29539b8a57461e49e" name = "a4b5607ed413acdf29539b8a57461e49e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a4b5607ed413acdf29539b8a57461e49e" > ◆   < / 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< fourdst::atomic::Species> gridfire::reaction::Reaction::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 = "a59122a2898bb9af640cc3e9aeb49028b" name = "a59122a2898bb9af640cc3e9aeb49028b" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a59122a2898bb9af640cc3e9aeb49028b" > ◆   < / 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::Reaction::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 = "aa61a9a024d7c4ff66a351ccd0277ec72" name = "aa61a9a024d7c4ff66a351ccd0277ec72" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa61a9a024d7c4ff66a351ccd0277ec72" > ◆   < / 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" > RateCoefficientSet gridfire::reaction::Reaction::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 = "a87a065b3c7806bcdb5eadb7de2978a11" name = "a87a065b3c7806bcdb5eadb7de2978a11" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a87a065b3c7806bcdb5eadb7de2978a11" > ◆   < / 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< fourdst::atomic::Species> gridfire::reaction::Reaction::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 = "a0b0b9ac498080aae91ffd466d1ae85a9" name = "a0b0b9ac498080aae91ffd466d1ae85a9" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a0b0b9ac498080aae91ffd466d1ae85a9" > ◆   < / 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::Reaction::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 = "a0185c6be5465d113f25e00aee1297cd6" name = "a0185c6be5465d113f25e00aee1297cd6" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a0185c6be5465d113f25e00aee1297cd6" > ◆   < / 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::Reaction::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 >
2025-07-31 10:54:31 -04:00
< 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 >
2025-07-24 11:10:45 -04:00
< / ul >
< / div > <!-- contents -->
< / div > <!-- doc - content -->
<!-- start footer part -->
< div id = "nav-path" class = "navpath" > <!-- id is needed for treeview function! -->
< ul >
< li class = "navelem" > < a class = "el" href = "namespacegridfire.html" > gridfire< / a > < / li > < li class = "navelem" > < a class = "el" href = "classgridfire_1_1_reaction.html" > Reaction< / 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 >