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: PyDynamicEngine 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('class_py_dynamic_engine.html',''); initResizable(true); });
/* @license-end */
< / script >
< div id = "doc-content" >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< div id = "MSearchResults" >
< div class = "SRPage" >
< div id = "SRIndex" >
< div id = "SRResults" > < / div >
< div class = "SRStatus" id = "Loading" > Loading...< / div >
< div class = "SRStatus" id = "Searching" > Searching...< / div >
< div class = "SRStatus" id = "NoMatches" > No Matches< / div >
< / div >
< / div >
< / div >
< / div >
< div class = "header" >
< div class = "summary" >
< a href = "#pub-methods" > Public Member Functions< / a > |
< a href = "#pri-attribs" > Private Attributes< / a > |
< a href = "class_py_dynamic_engine-members.html" > List of all members< / a > < / div >
< div class = "headertitle" > < div class = "title" > PyDynamicEngine Class Reference< span class = "mlabels" > < span class = "mlabel final" > final< / span > < / span > < / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
2025-07-31 10:54:31 -04:00
< p > < code > #include < py_engine.h> < / code > < / p >
2025-07-24 11:10:45 -04:00
< div class = "dynheader" >
Inheritance diagram for PyDynamicEngine:< / div >
< div class = "dyncontent" >
< div class = "center" >
< img src = "class_py_dynamic_engine.png" usemap = "#PyDynamicEngine_map" alt = "" / >
< map id = "PyDynamicEngine_map" name = "PyDynamicEngine_map" >
< area href = "classgridfire_1_1_dynamic_engine.html" title = "Abstract class for engines supporting Jacobian and stoichiometry operations." alt = "gridfire::DynamicEngine" shape = "rect" coords = "0,56,147,80" / >
< area href = "classgridfire_1_1_engine.html" title = "Abstract base class for a reaction network engine." alt = "gridfire::Engine" shape = "rect" coords = "0,0,147,24" / >
< / map >
< / div > < / div >
< table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "pub-methods" name = "pub-methods" > < / a >
Public Member Functions< / h2 > < / td > < / tr >
< tr class = "memitem:afc745e7ab5da5d8b3cf916044515cd7d" id = "r_afc745e7ab5da5d8b3cf916044515cd7d" > < td class = "memItemLeft" align = "right" valign = "top" > const std::vector< fourdst::atomic::Species > &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#afc745e7ab5da5d8b3cf916044515cd7d" > getNetworkSpecies< / a > () const override< / td > < / tr >
< tr class = "memdesc:afc745e7ab5da5d8b3cf916044515cd7d" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "class_py_dynamic_engine.html" > PyDynamicEngine< / a > Implementation ///. < br / > < / td > < / tr >
< tr class = "separator:afc745e7ab5da5d8b3cf916044515cd7d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5b7f0cfe327c634ec125303256de8b9a" id = "r_a5b7f0cfe327c634ec125303256de8b9a" > < td class = "memItemLeft" align = "right" valign = "top" > std::expected< < a class = "el" href = "structgridfire_1_1_step_derivatives.html" > gridfire::StepDerivatives< / a > < double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > gridfire::expectations::StaleEngineError< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a5b7f0cfe327c634ec125303256de8b9a" > calculateRHSAndEnergy< / a > (const std::vector< double > & Y, double T9, double rho) const override< / td > < / tr >
< tr class = "separator:a5b7f0cfe327c634ec125303256de8b9a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5bd40c752db1badcd600797c9113121d" id = "r_a5bd40c752db1badcd600797c9113121d" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a5bd40c752db1badcd600797c9113121d" > generateJacobianMatrix< / a > (const std::vector< double > & Y_dynamic, double T9, double rho) const override< / td > < / tr >
< tr class = "separator:a5bd40c752db1badcd600797c9113121d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aa0f1fd3f0c0185395193d1b6897d64c5" id = "r_aa0f1fd3f0c0185395193d1b6897d64c5" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#aa0f1fd3f0c0185395193d1b6897d64c5" > generateJacobianMatrix< / a > (const std::vector< double > & Y_dynamic, double T9, double rho, const < a class = "el" href = "namespacegridfire.html#a898dfe22579e649935645cbd6f073178" > gridfire::SparsityPattern< / a > & sparsityPattern) const override< / td > < / tr >
< tr class = "separator:aa0f1fd3f0c0185395193d1b6897d64c5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a1c888bbc0618f1ae02d9a53e45f3c159" id = "r_a1c888bbc0618f1ae02d9a53e45f3c159" > < td class = "memItemLeft" align = "right" valign = "top" > double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a1c888bbc0618f1ae02d9a53e45f3c159" > getJacobianMatrixEntry< / a > (int i, int j) const override< / td > < / tr >
< tr class = "separator:a1c888bbc0618f1ae02d9a53e45f3c159" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a2066649ca11a869c054079ea12d8d0e9" id = "r_a2066649ca11a869c054079ea12d8d0e9" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a2066649ca11a869c054079ea12d8d0e9" > generateStoichiometryMatrix< / a > () override< / td > < / tr >
< tr class = "memdesc:a2066649ca11a869c054079ea12d8d0e9" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Generate the stoichiometry matrix for the network. < br / > < / td > < / tr >
< tr class = "separator:a2066649ca11a869c054079ea12d8d0e9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab48ef6db18da20024aa563a91fa16f83" id = "r_ab48ef6db18da20024aa563a91fa16f83" > < td class = "memItemLeft" align = "right" valign = "top" > int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ab48ef6db18da20024aa563a91fa16f83" > getStoichiometryMatrixEntry< / a > (int speciesIndex, int reactionIndex) const override< / td > < / tr >
< tr class = "separator:ab48ef6db18da20024aa563a91fa16f83" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6224f546ba66b1257506b1fc9f47195a" id = "r_a6224f546ba66b1257506b1fc9f47195a" > < td class = "memItemLeft" align = "right" valign = "top" > double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a6224f546ba66b1257506b1fc9f47195a" > calculateMolarReactionFlow< / a > (const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > gridfire::reaction::Reaction< / a > & reaction, const std::vector< double > & Y, double T9, double rho) const override< / td > < / tr >
< tr class = "separator:a6224f546ba66b1257506b1fc9f47195a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-10-08 11:17:09 -04:00
< tr class = "memitem:a1d5143640666631501cf229bc491516e" id = "r_a1d5143640666631501cf229bc491516e" > < td class = "memItemLeft" align = "right" valign = "top" > const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction_set.html" > gridfire::reaction::ReactionSet< / a > &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a1d5143640666631501cf229bc491516e" > getNetworkReactions< / a > () const override< / td > < / tr >
< tr class = "memdesc:a1d5143640666631501cf229bc491516e" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Get the set of logical reactions in the network. < br / > < / td > < / tr >
< tr class = "separator:a1d5143640666631501cf229bc491516e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af469cba3be850d53f659ec173f0eb4e4" id = "r_af469cba3be850d53f659ec173f0eb4e4" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#af469cba3be850d53f659ec173f0eb4e4" > setNetworkReactions< / a > (const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction_set.html" > gridfire::reaction::ReactionSet< / a > & reactions) override< / td > < / tr >
< tr class = "separator:af469cba3be850d53f659ec173f0eb4e4" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-07-24 11:10:45 -04:00
< tr class = "memitem:a02a4c86c9637a3c9c9ca8ddd82ecff22" id = "r_a02a4c86c9637a3c9c9ca8ddd82ecff22" > < td class = "memItemLeft" align = "right" valign = "top" > std::expected< std::unordered_map< fourdst::atomic::Species, double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > gridfire::expectations::StaleEngineError< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a02a4c86c9637a3c9c9ca8ddd82ecff22" > getSpeciesTimescales< / a > (const std::vector< double > & Y, double T9, double rho) const override< / td > < / tr >
< tr class = "separator:a02a4c86c9637a3c9c9ca8ddd82ecff22" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a020044829e0146427ed4830e5b02c4f3" id = "r_a020044829e0146427ed4830e5b02c4f3" > < td class = "memItemLeft" align = "right" valign = "top" > std::expected< std::unordered_map< fourdst::atomic::Species, double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > gridfire::expectations::StaleEngineError< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a020044829e0146427ed4830e5b02c4f3" > getSpeciesDestructionTimescales< / a > (const std::vector< double > & Y, double T9, double rho) const override< / td > < / tr >
< tr class = "separator:a020044829e0146427ed4830e5b02c4f3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af8e6a8cd44f278535d7bcc9a896d6da8" id = "r_af8e6a8cd44f278535d7bcc9a896d6da8" > < td class = "memItemLeft" align = "right" valign = "top" > fourdst::composition::Composition  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#af8e6a8cd44f278535d7bcc9a896d6da8" > update< / a > (const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & netIn) override< / td > < / tr >
< tr class = "memdesc:af8e6a8cd44f278535d7bcc9a896d6da8" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Update the internal state of the engine. < br / > < / td > < / tr >
< tr class = "separator:af8e6a8cd44f278535d7bcc9a896d6da8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a55bf19ed7534a312a36faf74753f7b14" id = "r_a55bf19ed7534a312a36faf74753f7b14" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a55bf19ed7534a312a36faf74753f7b14" > isStale< / a > (const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & netIn) override< / td > < / tr >
< tr class = "separator:a55bf19ed7534a312a36faf74753f7b14" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:afa3abfd612033336a656f092721c14ac" id = "r_afa3abfd612033336a656f092721c14ac" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#afa3abfd612033336a656f092721c14ac" > setScreeningModel< / a > (< a class = "el" href = "namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25" > gridfire::screening::ScreeningType< / a > model) override< / td > < / tr >
< tr class = "memdesc:afa3abfd612033336a656f092721c14ac" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Set the electron screening model. < br / > < / td > < / tr >
< tr class = "separator:afa3abfd612033336a656f092721c14ac" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab4cfdca5e15957c5cef75ffa6dedeee5" id = "r_ab4cfdca5e15957c5cef75ffa6dedeee5" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25" > gridfire::screening::ScreeningType< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ab4cfdca5e15957c5cef75ffa6dedeee5" > getScreeningModel< / a > () const override< / td > < / tr >
< tr class = "memdesc:ab4cfdca5e15957c5cef75ffa6dedeee5" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Get the current electron screening model. < br / > < / td > < / tr >
< tr class = "separator:ab4cfdca5e15957c5cef75ffa6dedeee5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-10-08 11:17:09 -04:00
< tr class = "memitem:a95d10a7b240d543a1bc6c67ddf2dc8e0" id = "r_a95d10a7b240d543a1bc6c67ddf2dc8e0" > < td class = "memItemLeft" align = "right" valign = "top" > size_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a95d10a7b240d543a1bc6c67ddf2dc8e0" > getSpeciesIndex< / a > (const fourdst::atomic::Species & species) const override< / td > < / tr >
< tr class = "memdesc:a95d10a7b240d543a1bc6c67ddf2dc8e0" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Get the index of a species in the network. < br / > < / td > < / tr >
< tr class = "separator:a95d10a7b240d543a1bc6c67ddf2dc8e0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-07-24 11:10:45 -04:00
< tr class = "memitem:a61bb4b430fe740cfb2c24e5cc673e4ac" id = "r_a61bb4b430fe740cfb2c24e5cc673e4ac" > < td class = "memItemLeft" align = "right" valign = "top" > std::vector< double >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a61bb4b430fe740cfb2c24e5cc673e4ac" > mapNetInToMolarAbundanceVector< / a > (const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & netIn) const override< / td > < / tr >
2025-07-31 15:04:57 -04:00
< tr class = "memdesc:a61bb4b430fe740cfb2c24e5cc673e4ac" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Map a NetIn object to a vector of molar abundances. < br / > < / td > < / tr >
2025-07-24 11:10:45 -04:00
< tr class = "separator:a61bb4b430fe740cfb2c24e5cc673e4ac" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac22a10412be6649bf379e6d61113c878" id = "r_ac22a10412be6649bf379e6d61113c878" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "structgridfire_1_1_priming_report.html" > gridfire::PrimingReport< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#ac22a10412be6649bf379e6d61113c878" > primeEngine< / a > (const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & netIn) override< / td > < / tr >
2025-07-31 15:04:57 -04:00
< tr class = "memdesc:ac22a10412be6649bf379e6d61113c878" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Prime the engine with initial conditions. < br / > < / td > < / tr >
2025-07-24 11:10:45 -04:00
< tr class = "separator:ac22a10412be6649bf379e6d61113c878" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:adba68716d832b6100e08d32fbc36f13c" id = "r_adba68716d832b6100e08d32fbc36f13c" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6" > gridfire::BuildDepthType< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#adba68716d832b6100e08d32fbc36f13c" > getDepth< / a > () const override< / td > < / tr >
2025-07-31 15:04:57 -04:00
< tr class = "memdesc:adba68716d832b6100e08d32fbc36f13c" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Get the depth of the network. < br / > < / td > < / tr >
2025-07-24 11:10:45 -04:00
< tr class = "separator:adba68716d832b6100e08d32fbc36f13c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3d30a9116825ab2c5c209bc2712126bc" id = "r_a3d30a9116825ab2c5c209bc2712126bc" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a3d30a9116825ab2c5c209bc2712126bc" > rebuild< / a > (const fourdst::composition::Composition & comp, < a class = "el" href = "namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6" > gridfire::BuildDepthType< / a > depth) override< / td > < / tr >
2025-07-31 15:04:57 -04:00
< tr class = "memdesc:a3d30a9116825ab2c5c209bc2712126bc" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Rebuild the network with a specified depth. < br / > < / td > < / tr >
2025-07-24 11:10:45 -04:00
< tr class = "separator:a3d30a9116825ab2c5c209bc2712126bc" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-10-08 11:17:09 -04:00
< tr class = "inherit_header pub_methods_classgridfire_1_1_dynamic_engine" > < td colspan = "2" onclick = "javascript:dynsection.toggleInherit('pub_methods_classgridfire_1_1_dynamic_engine')" > < img src = "closed.png" alt = "-" / >   Public Member Functions inherited from < a class = "el" href = "classgridfire_1_1_dynamic_engine.html" > gridfire::DynamicEngine< / a > < / td > < / tr >
< tr class = "memitem:a21d15531309456ee83f7675251e7a1bf inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_a21d15531309456ee83f7675251e7a1bf" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a21d15531309456ee83f7675251e7a1bf" > generateJacobianMatrix< / a > (const fourdst::composition::Composition & comp, double T9, double rho) const =0< / td > < / tr >
< tr class = "memdesc:a21d15531309456ee83f7675251e7a1bf inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Generate the Jacobian matrix for the current state. < br / > < / td > < / tr >
< tr class = "separator:a21d15531309456ee83f7675251e7a1bf inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a11d602a708af4629f51873b17f7b8dbd inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_a11d602a708af4629f51873b17f7b8dbd" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a11d602a708af4629f51873b17f7b8dbd" > generateJacobianMatrix< / a > (const fourdst::composition::Composition & comp, double T9, double rho, const < a class = "el" href = "namespacegridfire.html#a898dfe22579e649935645cbd6f073178" > SparsityPattern< / a > & sparsityPattern) const< / td > < / tr >
< tr class = "separator:a11d602a708af4629f51873b17f7b8dbd inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a88dbf350dc0ea3e2b64d825f489e0d60 inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_a88dbf350dc0ea3e2b64d825f489e0d60" > < td class = "memItemLeft" align = "right" valign = "top" > virtual double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a88dbf350dc0ea3e2b64d825f489e0d60" > getJacobianMatrixEntry< / a > (const fourdst::atomic::Species & rowSpecies, const fourdst::atomic::Species & colSpecies) const =0< / td > < / tr >
< tr class = "memdesc:a88dbf350dc0ea3e2b64d825f489e0d60 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Get an entry from the previously generated Jacobian matrix. < br / > < / td > < / tr >
< tr class = "separator:a88dbf350dc0ea3e2b64d825f489e0d60 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ad19c8451b6f624e2938f771cc067d5c1 inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_ad19c8451b6f624e2938f771cc067d5c1" > < td class = "memItemLeft" align = "right" valign = "top" > virtual int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#ad19c8451b6f624e2938f771cc067d5c1" > getStoichiometryMatrixEntry< / a > (const fourdst::atomic::Species & species, const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > reaction::Reaction< / a > & reaction) const =0< / td > < / tr >
< tr class = "memdesc:ad19c8451b6f624e2938f771cc067d5c1 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Get an entry from the stoichiometry matrix. < br / > < / td > < / tr >
< tr class = "separator:ad19c8451b6f624e2938f771cc067d5c1 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a39cf5b738eea0a275bf8c0eb5789fab3 inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_a39cf5b738eea0a275bf8c0eb5789fab3" > < td class = "memItemLeft" align = "right" valign = "top" > virtual double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a39cf5b738eea0a275bf8c0eb5789fab3" > calculateMolarReactionFlow< / a > (const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > reaction::Reaction< / a > & reaction, const fourdst::composition::Composition & comp, double T9, double rho) const =0< / td > < / tr >
< tr class = "memdesc:a39cf5b738eea0a275bf8c0eb5789fab3 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Calculate the molar reaction flow for a given reaction. < br / > < / td > < / tr >
< tr class = "separator:a39cf5b738eea0a275bf8c0eb5789fab3 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a264bd5a8891c8c5f0dff32867effe547 inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_a264bd5a8891c8c5f0dff32867effe547" > < td class = "memItemLeft" align = "right" valign = "top" > virtual < a class = "el" href = "structgridfire_1_1_energy_derivatives.html" > EnergyDerivatives< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a264bd5a8891c8c5f0dff32867effe547" > calculateEpsDerivatives< / a > (const fourdst::composition::Composition & comp, double T9, double rho) const =0< / td > < / tr >
< tr class = "memdesc:a264bd5a8891c8c5f0dff32867effe547 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Calculate the derivatives of the energy generation rate with respect to T and rho. < br / > < / td > < / tr >
< tr class = "separator:a264bd5a8891c8c5f0dff32867effe547 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae7114f5ebc6667b5e5971c0450ed03d9 inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_ae7114f5ebc6667b5e5971c0450ed03d9" > < td class = "memItemLeft" align = "right" valign = "top" > virtual std::expected< std::unordered_map< fourdst::atomic::Species, double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > expectations::StaleEngineError< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#ae7114f5ebc6667b5e5971c0450ed03d9" > getSpeciesTimescales< / a > (const fourdst::composition::Composition & comp, double T9, double rho) const =0< / td > < / tr >
< tr class = "memdesc:ae7114f5ebc6667b5e5971c0450ed03d9 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Compute timescales for all species in the network. < br / > < / td > < / tr >
< tr class = "separator:ae7114f5ebc6667b5e5971c0450ed03d9 inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a25c040d3078f6ff2ef38f733eb68f1fa inherit pub_methods_classgridfire_1_1_dynamic_engine" id = "r_a25c040d3078f6ff2ef38f733eb68f1fa" > < td class = "memItemLeft" align = "right" valign = "top" > virtual std::expected< std::unordered_map< fourdst::atomic::Species, double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > expectations::StaleEngineError< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a25c040d3078f6ff2ef38f733eb68f1fa" > getSpeciesDestructionTimescales< / a > (const fourdst::composition::Composition & comp, double T9, double rho) const =0< / td > < / tr >
< tr class = "separator:a25c040d3078f6ff2ef38f733eb68f1fa inherit pub_methods_classgridfire_1_1_dynamic_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-07-24 11:10:45 -04:00
< tr class = "inherit_header pub_methods_classgridfire_1_1_engine" > < td colspan = "2" onclick = "javascript:dynsection.toggleInherit('pub_methods_classgridfire_1_1_engine')" > < img src = "closed.png" alt = "-" / >   Public Member Functions inherited from < a class = "el" href = "classgridfire_1_1_engine.html" > gridfire::Engine< / a > < / td > < / tr >
< tr class = "memitem:a2e7970bed2100699f226f4141d5db037 inherit pub_methods_classgridfire_1_1_engine" id = "r_a2e7970bed2100699f226f4141d5db037" > < td class = "memItemLeft" align = "right" valign = "top" > virtual  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_engine.html#a2e7970bed2100699f226f4141d5db037" > ~Engine< / a > ()=default< / td > < / tr >
< tr class = "memdesc:a2e7970bed2100699f226f4141d5db037 inherit pub_methods_classgridfire_1_1_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Virtual destructor. < br / > < / td > < / tr >
< tr class = "separator:a2e7970bed2100699f226f4141d5db037 inherit pub_methods_classgridfire_1_1_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-10-08 11:17:09 -04:00
< tr class = "memitem:add48d3af9ebde17717e42e220e349740 inherit pub_methods_classgridfire_1_1_engine" id = "r_add48d3af9ebde17717e42e220e349740" > < td class = "memItemLeft" align = "right" valign = "top" > virtual std::expected< < a class = "el" href = "structgridfire_1_1_step_derivatives.html" > StepDerivatives< / a > < double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > expectations::StaleEngineError< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classgridfire_1_1_engine.html#add48d3af9ebde17717e42e220e349740" > calculateRHSAndEnergy< / a > (const fourdst::composition::Composition & comp, double T9, double rho) const =0< / td > < / tr >
< tr class = "memdesc:add48d3af9ebde17717e42e220e349740 inherit pub_methods_classgridfire_1_1_engine" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Calculate the right-hand side (dY/dt) and energy generation. < br / > < / td > < / tr >
< tr class = "separator:add48d3af9ebde17717e42e220e349740 inherit pub_methods_classgridfire_1_1_engine" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2025-07-24 11:10:45 -04:00
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "pri-attribs" name = "pri-attribs" > < / a >
Private Attributes< / h2 > < / td > < / tr >
< tr class = "memitem:a2246382b1c98ba69cdb419bba63a6d03" id = "r_a2246382b1c98ba69cdb419bba63a6d03" > < td class = "memItemLeft" align = "right" valign = "top" > std::vector< fourdst::atomic::Species >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "#a2246382b1c98ba69cdb419bba63a6d03" > m_species_cache< / a > < / td > < / tr >
< tr class = "separator:a2246382b1c98ba69cdb419bba63a6d03" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table >
2025-07-31 10:54:31 -04:00
< h2 class = "groupheader" > Member Function Documentation< / h2 >
2025-07-24 11:10:45 -04:00
< a id = "a6224f546ba66b1257506b1fc9f47195a" name = "a6224f546ba66b1257506b1fc9f47195a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6224f546ba66b1257506b1fc9f47195a" > ◆   < / a > < / span > calculateMolarReactionFlow()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > double PyDynamicEngine::calculateMolarReactionFlow < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction.html" > gridfire::reaction::Reaction< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > reaction< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::vector< double > & < / td > < td class = "paramname" > < span class = "paramname" > < em > Y< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > T9< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > rho< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a5b7f0cfe327c634ec125303256de8b9a" name = "a5b7f0cfe327c634ec125303256de8b9a" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5b7f0cfe327c634ec125303256de8b9a" > ◆   < / a > < / span > calculateRHSAndEnergy()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > std::expected< < a class = "el" href = "structgridfire_1_1_step_derivatives.html" > gridfire::StepDerivatives< / a > < double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > gridfire::expectations::StaleEngineError< / a > > PyDynamicEngine::calculateRHSAndEnergy < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< double > & < / td > < td class = "paramname" > < span class = "paramname" > < em > Y< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > T9< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > rho< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a5bd40c752db1badcd600797c9113121d" name = "a5bd40c752db1badcd600797c9113121d" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5bd40c752db1badcd600797c9113121d" > ◆   < / a > < / span > generateJacobianMatrix() < span class = "overload" > [1/2]< / span > < / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void PyDynamicEngine::generateJacobianMatrix < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< double > & < / td > < td class = "paramname" > < span class = "paramname" > < em > Y_dynamic< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > T9< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > rho< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "aa0f1fd3f0c0185395193d1b6897d64c5" name = "aa0f1fd3f0c0185395193d1b6897d64c5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa0f1fd3f0c0185395193d1b6897d64c5" > ◆   < / a > < / span > generateJacobianMatrix() < span class = "overload" > [2/2]< / span > < / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void PyDynamicEngine::generateJacobianMatrix < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< double > & < / td > < td class = "paramname" > < span class = "paramname" > < em > Y_dynamic< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > T9< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > rho< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const < a class = "el" href = "namespacegridfire.html#a898dfe22579e649935645cbd6f073178" > gridfire::SparsityPattern< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > sparsityPattern< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a2066649ca11a869c054079ea12d8d0e9" name = "a2066649ca11a869c054079ea12d8d0e9" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2066649ca11a869c054079ea12d8d0e9" > ◆   < / a > < / span > generateStoichiometryMatrix()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void PyDynamicEngine::generateStoichiometryMatrix < / td >
< td > (< / td >
< td class = "paramname" > < span class = "paramname" > < em > < / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Generate the stoichiometry matrix for the network. < / p >
< p > This method must compute and store the stoichiometry matrix, which encodes the net change of each species in each reaction. < / p >
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#aeae6d84ef74d88fd2cdf07b82e98a16f" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< a id = "adba68716d832b6100e08d32fbc36f13c" name = "adba68716d832b6100e08d32fbc36f13c" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#adba68716d832b6100e08d32fbc36f13c" > ◆   < / a > < / span > getDepth()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > < a class = "el" href = "namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6" > gridfire::BuildDepthType< / a > PyDynamicEngine::getDepth < / td >
< td > (< / td >
< td class = "paramname" > < span class = "paramname" > < em > < / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel inline" > inline< / span > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2025-07-31 15:04:57 -04:00
< p > Get the depth of the network. < / p >
< dl class = "section return" > < dt > Returns< / dt > < dd > The depth of the network, which may indicate the level of detail or complexity in the reaction network.< / dd > < / dl >
< p > This method is intended to provide information about the network's structure, such as how many layers of reactions or species are present. It can be useful for diagnostics and understanding the network's complexity. < / p >
2025-07-24 11:10:45 -04:00
< p > Reimplemented from < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a04317b66ef14d519264bc30ee69f5bf9" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< a id = "a1c888bbc0618f1ae02d9a53e45f3c159" name = "a1c888bbc0618f1ae02d9a53e45f3c159" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1c888bbc0618f1ae02d9a53e45f3c159" > ◆   < / a > < / span > getJacobianMatrixEntry()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > double PyDynamicEngine::getJacobianMatrixEntry < / td >
< td > (< / td >
< td class = "paramtype" > int< / td > < td class = "paramname" > < span class = "paramname" > < em > i< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int< / td > < td class = "paramname" > < span class = "paramname" > < em > j< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2025-10-08 11:17:09 -04:00
< a id = "a1d5143640666631501cf229bc491516e" name = "a1d5143640666631501cf229bc491516e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a1d5143640666631501cf229bc491516e" > ◆   < / a > < / span > getNetworkReactions()< / h2 >
2025-07-24 11:10:45 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2025-10-08 11:17:09 -04:00
< td class = "memname" > const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction_set.html" > gridfire::reaction::ReactionSet< / a > & PyDynamicEngine::getNetworkReactions < / td >
2025-07-24 11:10:45 -04:00
< 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 override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Get the set of logical reactions in the network. < / p >
< dl class = "section return" > < dt > Returns< / dt > < dd > Reference to the LogicalReactionSet containing all reactions. < / dd > < / dl >
2025-10-08 11:17:09 -04:00
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#af496e04f7be9a0a51ac65dc95f901ffe" > gridfire::DynamicEngine< / a > .< / p >
2025-07-24 11:10:45 -04:00
< / div >
< / div >
< a id = "afc745e7ab5da5d8b3cf916044515cd7d" name = "afc745e7ab5da5d8b3cf916044515cd7d" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#afc745e7ab5da5d8b3cf916044515cd7d" > ◆   < / a > < / span > getNetworkSpecies()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > const std::vector< fourdst::atomic::Species > & PyDynamicEngine::getNetworkSpecies < / td >
< td > (< / td >
< td class = "paramname" > < span class = "paramname" > < em > < / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > < a class = "el" href = "class_py_dynamic_engine.html" > PyDynamicEngine< / a > Implementation ///. < / p >
< p > Implements < a class = "el" href = "classgridfire_1_1_engine.html#a020e1b493d6964cafdad08fde697ceb3" > gridfire::Engine< / a > .< / p >
< / div >
< / div >
< a id = "ab4cfdca5e15957c5cef75ffa6dedeee5" name = "ab4cfdca5e15957c5cef75ffa6dedeee5" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab4cfdca5e15957c5cef75ffa6dedeee5" > ◆   < / a > < / span > getScreeningModel()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > < a class = "el" href = "namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25" > gridfire::screening::ScreeningType< / a > PyDynamicEngine::getScreeningModel < / td >
< td > (< / td >
< td class = "paramname" > < span class = "paramname" > < em > < / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Get the current electron screening model. < / p >
< dl class = "section return" > < dt > Returns< / dt > < dd > The currently active screening model type.< / dd > < / dl >
< dl class = "section user" > < dt > Usage Example:< / dt > < dd > < div class = "fragment" > < div class = "line" > screening::ScreeningType currentModel = myEngine.getScreeningModel();< / div >
< / div > <!-- fragment --> < / dd > < / dl >
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a7a203f8e0f3a6744ddc912dfbcfdbcc0" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< a id = "a020044829e0146427ed4830e5b02c4f3" name = "a020044829e0146427ed4830e5b02c4f3" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a020044829e0146427ed4830e5b02c4f3" > ◆   < / a > < / span > getSpeciesDestructionTimescales()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > std::expected< std::unordered_map< fourdst::atomic::Species, double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > gridfire::expectations::StaleEngineError< / a > > PyDynamicEngine::getSpeciesDestructionTimescales < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< double > & < / td > < td class = "paramname" > < span class = "paramname" > < em > Y< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > T9< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > rho< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2025-10-08 11:17:09 -04:00
< a id = "a95d10a7b240d543a1bc6c67ddf2dc8e0" name = "a95d10a7b240d543a1bc6c67ddf2dc8e0" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a95d10a7b240d543a1bc6c67ddf2dc8e0" > ◆   < / a > < / span > getSpeciesIndex()< / h2 >
2025-07-24 11:10:45 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2025-10-08 11:17:09 -04:00
< td class = "memname" > size_t PyDynamicEngine::getSpeciesIndex < / td >
2025-07-24 11:10:45 -04:00
< 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 override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2025-07-31 15:04:57 -04:00
< p > Get the index of a species in the network. < / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > species< / td > < td > The species to look up.< / td > < / tr >
< / table >
< / dd >
< / dl >
< p > This method allows querying the index of a specific species in the engine's internal representation. It is useful for accessing species data efficiently. < / p >
2025-10-08 11:17:09 -04:00
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a8f66fb76c9f983ee93bf8b95cdc85596" > gridfire::DynamicEngine< / a > .< / p >
2025-07-24 11:10:45 -04:00
< / div >
< / div >
< a id = "a02a4c86c9637a3c9c9ca8ddd82ecff22" name = "a02a4c86c9637a3c9c9ca8ddd82ecff22" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a02a4c86c9637a3c9c9ca8ddd82ecff22" > ◆   < / a > < / span > getSpeciesTimescales()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > std::expected< std::unordered_map< fourdst::atomic::Species, double > , < a class = "el" href = "structgridfire_1_1expectations_1_1_stale_engine_error.html" > gridfire::expectations::StaleEngineError< / a > > PyDynamicEngine::getSpeciesTimescales < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< double > & < / td > < td class = "paramname" > < span class = "paramname" > < em > Y< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > T9< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > double< / td > < td class = "paramname" > < span class = "paramname" > < em > rho< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "ab48ef6db18da20024aa563a91fa16f83" name = "ab48ef6db18da20024aa563a91fa16f83" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab48ef6db18da20024aa563a91fa16f83" > ◆   < / a > < / span > getStoichiometryMatrixEntry()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > int PyDynamicEngine::getStoichiometryMatrixEntry < / td >
< td > (< / td >
< td class = "paramtype" > int< / td > < td class = "paramname" > < span class = "paramname" > < em > speciesIndex< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int< / td > < td class = "paramname" > < span class = "paramname" > < em > reactionIndex< / em > < / span >   ) const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
2025-10-08 11:17:09 -04:00
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < / span > < / td >
2025-07-24 11:10:45 -04:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< a id = "a55bf19ed7534a312a36faf74753f7b14" name = "a55bf19ed7534a312a36faf74753f7b14" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a55bf19ed7534a312a36faf74753f7b14" > ◆   < / a > < / span > isStale()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > bool PyDynamicEngine::isStale < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > netIn< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a942e65ced17ca602482cc42e469d6398" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< a id = "a61bb4b430fe740cfb2c24e5cc673e4ac" name = "a61bb4b430fe740cfb2c24e5cc673e4ac" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a61bb4b430fe740cfb2c24e5cc673e4ac" > ◆   < / a > < / span > mapNetInToMolarAbundanceVector()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > std::vector< double > PyDynamicEngine::mapNetInToMolarAbundanceVector < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > netIn< / em > < / span > < / td > < td > )< / td >
< td > const< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2025-07-31 15:04:57 -04:00
< p > Map a NetIn object to a vector of molar abundances. < / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > netIn< / td > < td > The input conditions for the network. < / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "section return" > < dt > Returns< / dt > < dd > A vector of molar abundances corresponding to the species in the network.< / dd > < / dl >
< p > This method converts the input conditions into a vector of molar abundances, which can be used for further calculations or diagnostics. < / p >
2025-07-24 11:10:45 -04:00
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a55f1b7e5ebe2840e1d7c54665ca5411a" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< a id = "ac22a10412be6649bf379e6d61113c878" name = "ac22a10412be6649bf379e6d61113c878" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac22a10412be6649bf379e6d61113c878" > ◆   < / a > < / span > primeEngine()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > < a class = "el" href = "structgridfire_1_1_priming_report.html" > gridfire::PrimingReport< / a > PyDynamicEngine::primeEngine < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > netIn< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2025-07-31 15:04:57 -04:00
< p > Prime the engine with initial conditions. < / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > netIn< / td > < td > The input conditions for the network. < / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "section return" > < dt > Returns< / dt > < dd > PrimingReport containing information about the priming process.< / dd > < / dl >
< p > This method is used to prepare the engine for calculations by setting up initial conditions, reactions, and species. It may involve compiling reaction rates, initializing internal data structures, and performing any necessary pre-computation. < / p >
2025-07-24 11:10:45 -04:00
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a21c34f59c080a853fafa38a25175124e" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< a id = "a3d30a9116825ab2c5c209bc2712126bc" name = "a3d30a9116825ab2c5c209bc2712126bc" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3d30a9116825ab2c5c209bc2712126bc" > ◆   < / a > < / span > rebuild()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void PyDynamicEngine::rebuild < / td >
< td > (< / td >
< td class = "paramtype" > const fourdst::composition::Composition & < / td > < td class = "paramname" > < span class = "paramname" > < em > comp< / em > < / span > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "namespacegridfire.html#a3b1f70dc7ff5b501809330a97079e4f6" > gridfire::BuildDepthType< / a > < / td > < td class = "paramname" > < span class = "paramname" > < em > depth< / em > < / span >   )< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel inline" > inline< / span > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2025-07-31 15:04:57 -04:00
< p > Rebuild the network with a specified depth. < / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > comp< / td > < td > The composition to rebuild the network with. < / td > < / tr >
< tr > < td class = "paramname" > depth< / td > < td > The desired depth of the network.< / td > < / tr >
< / table >
< / dd >
< / dl >
< p > This method is intended to allow dynamic adjustment of the network's depth, which may involve adding or removing species and reactions based on the specified depth. However, not all engines support this operation. < / p >
2025-07-24 11:10:45 -04:00
< p > Reimplemented from < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a4e2c8b896661b7a89beffe0066cb21cf" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
2025-10-08 11:17:09 -04:00
< a id = "af469cba3be850d53f659ec173f0eb4e4" name = "af469cba3be850d53f659ec173f0eb4e4" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#af469cba3be850d53f659ec173f0eb4e4" > ◆   < / a > < / span > setNetworkReactions()< / h2 >
2025-07-24 11:10:45 -04:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void PyDynamicEngine::setNetworkReactions < / td >
< td > (< / td >
2025-10-08 11:17:09 -04:00
< td class = "paramtype" > const < a class = "el" href = "classgridfire_1_1reaction_1_1_reaction_set.html" > gridfire::reaction::ReactionSet< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > reactions< / em > < / span > < / td > < td > )< / td >
2025-07-24 11:10:45 -04:00
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2025-10-08 11:17:09 -04:00
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a49025489901e22a20cdf99b455ff2ff0" > gridfire::DynamicEngine< / a > .< / p >
2025-07-24 11:10:45 -04:00
< / div >
< / div >
< a id = "afa3abfd612033336a656f092721c14ac" name = "afa3abfd612033336a656f092721c14ac" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#afa3abfd612033336a656f092721c14ac" > ◆   < / a > < / span > setScreeningModel()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void PyDynamicEngine::setScreeningModel < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "namespacegridfire_1_1screening.html#aa82aafbc4f8c28d0a75b60798e3a7d25" > gridfire::screening::ScreeningType< / a > < / td > < td class = "paramname" > < span class = "paramname" > < em > model< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Set the electron screening model. < / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > model< / td > < td > The type of screening model to use for reaction rate calculations.< / td > < / tr >
< / table >
< / dd >
< / dl >
< p > This method allows changing the screening model at runtime. Screening corrections account for the electrostatic shielding of nuclei by electrons, which affects reaction rates in dense stellar plasmas.< / p >
< dl class = "section user" > < dt > Usage Example:< / dt > < dd > < div class = "fragment" > < div class = "line" > myEngine.setScreeningModel(screening::ScreeningType::WEAK);< / div >
< / div > <!-- fragment --> < / dd > < / dl >
< dl class = "section post" > < dt > Postcondition< / dt > < dd > The engine will use the specified screening model for subsequent rate calculations. < / dd > < / dl >
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#a3fb44b6f55563a2f590f31916528f2bd" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< a id = "af8e6a8cd44f278535d7bcc9a896d6da8" name = "af8e6a8cd44f278535d7bcc9a896d6da8" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#af8e6a8cd44f278535d7bcc9a896d6da8" > ◆   < / a > < / span > update()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > fourdst::composition::Composition PyDynamicEngine::update < / td >
< td > (< / td >
< td class = "paramtype" > const < a class = "el" href = "structgridfire_1_1_net_in.html" > gridfire::NetIn< / a > & < / td > < td class = "paramname" > < span class = "paramname" > < em > netIn< / em > < / span > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel override" > override< / span > < span class = "mlabel virtual" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Update the internal state of the engine. < / p >
< dl class = "params" > < dt > Parameters< / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > netIn< / td > < td > A struct containing the current network input, such as temperature, density, and composition.< / td > < / tr >
< / table >
< / dd >
< / dl >
< p > This method is intended to be implemented by derived classes to update their internal state based on the provided network conditions. For example, an adaptive engine might use this to re-evaluate which reactions and species are active. For other engines that do not support manually updating, this method might do nothing.< / p >
< dl class = "section user" > < dt > Usage Example:< / dt > < dd > < div class = "fragment" > < div class = "line" > NetIn input = { ... };< / div >
< div class = "line" > myEngine.update(input);< / div >
< / div > <!-- fragment --> < / dd > < / dl >
< dl class = "section post" > < dt > Postcondition< / dt > < dd > The internal state of the engine is updated to reflect the new conditions. < / dd > < / dl >
< p > Implements < a class = "el" href = "classgridfire_1_1_dynamic_engine.html#aa799ff785e7e79bf35b11efd55f6282a" > gridfire::DynamicEngine< / a > .< / p >
< / div >
< / div >
< h2 class = "groupheader" > Member Data Documentation< / h2 >
< a id = "a2246382b1c98ba69cdb419bba63a6d03" name = "a2246382b1c98ba69cdb419bba63a6d03" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a2246382b1c98ba69cdb419bba63a6d03" > ◆   < / a > < / span > m_species_cache< / 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> PyDynamicEngine::m_species_cache< / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel mutable" > mutable< / span > < span class = "mlabel private" > private< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / 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/python/engine/trampoline/< a class = "el" href = "py__engine_8h.html" > py_engine.h< / a > < / li >
< li > src/python/engine/trampoline/< a class = "el" href = "py__engine_8cpp.html" > py_engine.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 = "class_py_dynamic_engine.html" > PyDynamicEngine< / 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 >