784 lines
43 KiB
HTML
784 lines
43 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
|
<meta name="generator" content="Doxygen 1.9.8"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>GridFire: gridfire::engine::NetworkJacobian 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>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr id="projectrow">
|
|
<td id="projectalign">
|
|
<div id="projectname">GridFire<span id="projectnumber"> v0.7.1_rc2</span>
|
|
</div>
|
|
<div id="projectbrief">General Purpose Nuclear Network</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.9.8 -->
|
|
<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" 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');
|
|
$(document).ready(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 */
|
|
$(document).ready(function(){initNavTree('classgridfire_1_1engine_1_1NetworkJacobian.html',''); initResizable(); });
|
|
/* @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="classgridfire_1_1engine_1_1NetworkJacobian-members.html">List of all members</a> </div>
|
|
<div class="headertitle"><div class="title">gridfire::engine::NetworkJacobian Class Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>A wrapper class for handling the network Jacobian matrix.
|
|
<a href="classgridfire_1_1engine_1_1NetworkJacobian.html#details">More...</a></p>
|
|
|
|
<p><code>#include <jacobian.h></code></p>
|
|
<div class="dynheader">
|
|
Collaboration diagram for gridfire::engine::NetworkJacobian:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="classgridfire_1_1engine_1_1NetworkJacobian__coll__graph.svg" width="263" height="256"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
|
|
<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:aee558bd90f26fdb6172a04fb63d2572e" id="r_aee558bd90f26fdb6172a04fb63d2572e"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#aee558bd90f26fdb6172a04fb63d2572e">NetworkJacobian</a> (const Eigen::SparseMatrix< double > &jacobianMatrix, const std::function< fourdst::atomic::Species(size_t)> &indexToSpeciesFunc)</td></tr>
|
|
<tr class="memdesc:aee558bd90f26fdb6172a04fb63d2572e"><td class="mdescLeft"> </td><td class="mdescRight">Constructs a <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a> with the given sparse matrix and species index mapping function. <br /></td></tr>
|
|
<tr class="separator:aee558bd90f26fdb6172a04fb63d2572e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a78eea5d1a0d09cb30cf0b387924b5179" id="r_a78eea5d1a0d09cb30cf0b387924b5179"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a78eea5d1a0d09cb30cf0b387924b5179">NetworkJacobian</a> (const <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> &jacobian)</td></tr>
|
|
<tr class="memdesc:a78eea5d1a0d09cb30cf0b387924b5179"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor for <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a>. <br /></td></tr>
|
|
<tr class="separator:a78eea5d1a0d09cb30cf0b387924b5179"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad215d47784258e42cfbcb45c771aaa19" id="r_ad215d47784258e42cfbcb45c771aaa19"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#ad215d47784258e42cfbcb45c771aaa19">NetworkJacobian</a> (<a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> &&jacobian) noexcept</td></tr>
|
|
<tr class="memdesc:ad215d47784258e42cfbcb45c771aaa19"><td class="mdescLeft"> </td><td class="mdescRight">Copy assignment operator for <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a>. <br /></td></tr>
|
|
<tr class="separator:ad215d47784258e42cfbcb45c771aaa19"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac5372d721127646e75c0f177661566f9" id="r_ac5372d721127646e75c0f177661566f9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#ac5372d721127646e75c0f177661566f9">operator=</a> (<a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> &&jacobian) noexcept</td></tr>
|
|
<tr class="memdesc:ac5372d721127646e75c0f177661566f9"><td class="mdescLeft"> </td><td class="mdescRight">Move constructor for <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a>. <br /></td></tr>
|
|
<tr class="separator:ac5372d721127646e75c0f177661566f9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6aef41de3c48ac77ae991ca427ce46a9" id="r_a6aef41de3c48ac77ae991ca427ce46a9"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a6aef41de3c48ac77ae991ca427ce46a9">operator()</a> (const fourdst::atomic::Species &row, const fourdst::atomic::Species &col) const</td></tr>
|
|
<tr class="memdesc:a6aef41de3c48ac77ae991ca427ce46a9"><td class="mdescLeft"> </td><td class="mdescRight">Accesses the value at the specified row and column corresponding to the given species. <br /></td></tr>
|
|
<tr class="separator:a6aef41de3c48ac77ae991ca427ce46a9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3022b0f46c78adb4053b16a425a8b026" id="r_a3022b0f46c78adb4053b16a425a8b026"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a3022b0f46c78adb4053b16a425a8b026">operator()</a> (size_t i, size_t j) const</td></tr>
|
|
<tr class="memdesc:a3022b0f46c78adb4053b16a425a8b026"><td class="mdescLeft"> </td><td class="mdescRight">Accesses the value at the specified row and column indices. <br /></td></tr>
|
|
<tr class="separator:a3022b0f46c78adb4053b16a425a8b026"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6fc63f3c5d3fe7a1fd8b0704f2e71e2c" id="r_a6fc63f3c5d3fe7a1fd8b0704f2e71e2c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a6fc63f3c5d3fe7a1fd8b0704f2e71e2c">set</a> (const fourdst::atomic::Species &row, const fourdst::atomic::Species &col, double value)</td></tr>
|
|
<tr class="memdesc:a6fc63f3c5d3fe7a1fd8b0704f2e71e2c"><td class="mdescLeft"> </td><td class="mdescRight">Sets the value at the specified row and column corresponding to the given species. <br /></td></tr>
|
|
<tr class="separator:a6fc63f3c5d3fe7a1fd8b0704f2e71e2c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac47692fd4cc13174373d2a2f3abd956d" id="r_ac47692fd4cc13174373d2a2f3abd956d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#ac47692fd4cc13174373d2a2f3abd956d">set</a> (size_t i, size_t j, double value)</td></tr>
|
|
<tr class="memdesc:ac47692fd4cc13174373d2a2f3abd956d"><td class="mdescLeft"> </td><td class="mdescRight">Sets the value at the specified row and column indices. <br /></td></tr>
|
|
<tr class="separator:ac47692fd4cc13174373d2a2f3abd956d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a82c4fb3d75b1a30e0259ad888bd508cc" id="r_a82c4fb3d75b1a30e0259ad888bd508cc"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a82c4fb3d75b1a30e0259ad888bd508cc">set</a> (const <a class="el" href="namespacegridfire_1_1engine.html#ac7974616b5fd465c4a42e3d882cdde6e">JacobianEntry</a> &entry)</td></tr>
|
|
<tr class="memdesc:a82c4fb3d75b1a30e0259ad888bd508cc"><td class="mdescLeft"> </td><td class="mdescRight">Sets the value in the Jacobian matrix based on a JacobianEntry. <br /></td></tr>
|
|
<tr class="separator:a82c4fb3d75b1a30e0259ad888bd508cc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a699933e9f807ec196157f92ffb46b9ba" id="r_a699933e9f807ec196157f92ffb46b9ba"><td class="memItemLeft" align="right" valign="top">std::tuple< size_t, size_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a699933e9f807ec196157f92ffb46b9ba">shape</a> () const</td></tr>
|
|
<tr class="memdesc:a699933e9f807ec196157f92ffb46b9ba"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the shape of the Jacobian matrix as a tuple (rows, columns). <br /></td></tr>
|
|
<tr class="separator:a699933e9f807ec196157f92ffb46b9ba"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af9544f4cec7b450027fe991614adabfa" id="r_af9544f4cec7b450027fe991614adabfa"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#af9544f4cec7b450027fe991614adabfa">rank</a> () const</td></tr>
|
|
<tr class="memdesc:af9544f4cec7b450027fe991614adabfa"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the rank of the Jacobian matrix. <br /></td></tr>
|
|
<tr class="separator:af9544f4cec7b450027fe991614adabfa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2016fcfe27363650817b5be1ce6aaa32" id="r_a2016fcfe27363650817b5be1ce6aaa32"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a2016fcfe27363650817b5be1ce6aaa32">nnz</a> () const</td></tr>
|
|
<tr class="memdesc:a2016fcfe27363650817b5be1ce6aaa32"><td class="mdescLeft"> </td><td class="mdescRight">Get the number of non-zero entries in the Jacobian matrix. <br /></td></tr>
|
|
<tr class="separator:a2016fcfe27363650817b5be1ce6aaa32"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a485321469d84b3cf923ec79957044406" id="r_a485321469d84b3cf923ec79957044406"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a485321469d84b3cf923ec79957044406">singular</a> () const</td></tr>
|
|
<tr class="memdesc:a485321469d84b3cf923ec79957044406"><td class="mdescLeft"> </td><td class="mdescRight">Checks if the Jacobian matrix is singular. <br /></td></tr>
|
|
<tr class="separator:a485321469d84b3cf923ec79957044406"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adc4bcf002e276e36d9d29db7f82015fd" id="r_adc4bcf002e276e36d9d29db7f82015fd"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="namespacegridfire_1_1engine.html#ac7974616b5fd465c4a42e3d882cdde6e">JacobianEntry</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#adc4bcf002e276e36d9d29db7f82015fd">infs</a> () const</td></tr>
|
|
<tr class="memdesc:adc4bcf002e276e36d9d29db7f82015fd"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves all entries in the Jacobian matrix that are infinite. <br /></td></tr>
|
|
<tr class="separator:adc4bcf002e276e36d9d29db7f82015fd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9292384722bcb0245acab9affcdb8c6d" id="r_a9292384722bcb0245acab9affcdb8c6d"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="namespacegridfire_1_1engine.html#ac7974616b5fd465c4a42e3d882cdde6e">JacobianEntry</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a9292384722bcb0245acab9affcdb8c6d">nans</a> () const</td></tr>
|
|
<tr class="memdesc:a9292384722bcb0245acab9affcdb8c6d"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves all entries in the Jacobian matrix that are NaN (Not a Number). <br /></td></tr>
|
|
<tr class="separator:a9292384722bcb0245acab9affcdb8c6d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adb5643398b6f5fbf0ab8f09580b93402" id="r_adb5643398b6f5fbf0ab8f09580b93402"><td class="memItemLeft" align="right" valign="top">Eigen::SparseMatrix< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#adb5643398b6f5fbf0ab8f09580b93402">data</a> () const</td></tr>
|
|
<tr class="memdesc:adb5643398b6f5fbf0ab8f09580b93402"><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the underlying sparse matrix data. <br /></td></tr>
|
|
<tr class="separator:adb5643398b6f5fbf0ab8f09580b93402"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa15b6de68c69b48c57ed1cc943164d32" id="r_aa15b6de68c69b48c57ed1cc943164d32"><td class="memItemLeft" align="right" valign="top">const std::unordered_map< fourdst::atomic::Species, size_t > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#aa15b6de68c69b48c57ed1cc943164d32">mapping</a> () const</td></tr>
|
|
<tr class="memdesc:aa15b6de68c69b48c57ed1cc943164d32"><td class="mdescLeft"> </td><td class="mdescRight">Provides access to the species-to-index mapping. <br /></td></tr>
|
|
<tr class="separator:aa15b6de68c69b48c57ed1cc943164d32"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8267f02eacb52d238da6daa19dbea764" id="r_a8267f02eacb52d238da6daa19dbea764"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#a8267f02eacb52d238da6daa19dbea764">to_csv</a> (const std::string &filename) const</td></tr>
|
|
<tr class="memdesc:a8267f02eacb52d238da6daa19dbea764"><td class="mdescLeft"> </td><td class="mdescRight">Exports the Jacobian matrix to a CSV file. <br /></td></tr>
|
|
<tr class="separator:a8267f02eacb52d238da6daa19dbea764"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
|
|
Private Attributes</h2></td></tr>
|
|
<tr class="memitem:ad14ba25ee22e6b0c73e21e19165814e8" id="r_ad14ba25ee22e6b0c73e21e19165814e8"><td class="memItemLeft" align="right" valign="top">Eigen::SparseMatrix< double > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#ad14ba25ee22e6b0c73e21e19165814e8">m_jacobianMatrix</a></td></tr>
|
|
<tr class="separator:ad14ba25ee22e6b0c73e21e19165814e8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae5a03ec75859d300f8f63ac465f1206c" id="r_ae5a03ec75859d300f8f63ac465f1206c"><td class="memItemLeft" align="right" valign="top">std::unordered_map< fourdst::atomic::Species, size_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#ae5a03ec75859d300f8f63ac465f1206c">m_speciesToIndexMap</a></td></tr>
|
|
<tr class="separator:ae5a03ec75859d300f8f63ac465f1206c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad30cd63facc761a71d70e60249a22576" id="r_ad30cd63facc761a71d70e60249a22576"><td class="memItemLeft" align="right" valign="top">std::optional< size_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html#ad30cd63facc761a71d70e60249a22576">m_rank</a> = std::nullopt</td></tr>
|
|
<tr class="separator:ad30cd63facc761a71d70e60249a22576"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>A wrapper class for handling the network Jacobian matrix. </p>
|
|
<p>This class encapsulates an Eigen::SparseMatrix to represent the Jacobian matrix of a reaction network. It provides methods for accessing and modifying matrix entries using species identifiers, as well as utility functions for analyzing the matrix (e.g., checking for singularity, counting non-zero entries). </p>
|
|
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="aee558bd90f26fdb6172a04fb63d2572e" name="aee558bd90f26fdb6172a04fb63d2572e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aee558bd90f26fdb6172a04fb63d2572e">◆ </a></span>NetworkJacobian() <span class="overload">[1/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::engine::NetworkJacobian::NetworkJacobian </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const Eigen::SparseMatrix< double > & </td>
|
|
<td class="paramname"><em>jacobianMatrix</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const std::function< fourdst::atomic::Species(size_t)> & </td>
|
|
<td class="paramname"><em>indexToSpeciesFunc</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Constructs a <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a> with the given sparse matrix and species index mapping function. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">jacobianMatrix</td><td>The sparse matrix representing the Jacobian. </td></tr>
|
|
<tr><td class="paramname">indexToSpeciesFunc</td><td>A function that maps matrix indices to species identifiers. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a78eea5d1a0d09cb30cf0b387924b5179" name="a78eea5d1a0d09cb30cf0b387924b5179"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a78eea5d1a0d09cb30cf0b387924b5179">◆ </a></span>NetworkJacobian() <span class="overload">[2/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::engine::NetworkJacobian::NetworkJacobian </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> & </td>
|
|
<td class="paramname"><em>jacobian</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Copy constructor for <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a>. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">jacobian</td><td>The <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a> instance to copy from. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad215d47784258e42cfbcb45c771aaa19" name="ad215d47784258e42cfbcb45c771aaa19"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad215d47784258e42cfbcb45c771aaa19">◆ </a></span>NetworkJacobian() <span class="overload">[3/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">gridfire::engine::NetworkJacobian::NetworkJacobian </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> && </td>
|
|
<td class="paramname"><em>jacobian</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Copy assignment operator for <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a>. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">jacobian</td><td>The <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a> instance to copy from. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Reference to the assigned <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a> instance. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="adb5643398b6f5fbf0ab8f09580b93402" name="adb5643398b6f5fbf0ab8f09580b93402"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adb5643398b6f5fbf0ab8f09580b93402">◆ </a></span>data()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Eigen::SparseMatrix< double > gridfire::engine::NetworkJacobian::data </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Provides access to the underlying sparse matrix data. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>The Eigen::SparseMatrix representing the Jacobian. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="adc4bcf002e276e36d9d29db7f82015fd" name="adc4bcf002e276e36d9d29db7f82015fd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adc4bcf002e276e36d9d29db7f82015fd">◆ </a></span>infs()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector< <a class="el" href="namespacegridfire_1_1engine.html#ac7974616b5fd465c4a42e3d882cdde6e">JacobianEntry</a> > gridfire::engine::NetworkJacobian::infs </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Retrieves all entries in the Jacobian matrix that are infinite. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>A vector of JacobianEntry representing infinite entries. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa15b6de68c69b48c57ed1cc943164d32" name="aa15b6de68c69b48c57ed1cc943164d32"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa15b6de68c69b48c57ed1cc943164d32">◆ </a></span>mapping()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::unordered_map< fourdst::atomic::Species, size_t > & gridfire::engine::NetworkJacobian::mapping </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Provides access to the species-to-index mapping. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>A constant reference to the species-to-index mapping. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9292384722bcb0245acab9affcdb8c6d" name="a9292384722bcb0245acab9affcdb8c6d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9292384722bcb0245acab9affcdb8c6d">◆ </a></span>nans()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::vector< <a class="el" href="namespacegridfire_1_1engine.html#ac7974616b5fd465c4a42e3d882cdde6e">JacobianEntry</a> > gridfire::engine::NetworkJacobian::nans </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Retrieves all entries in the Jacobian matrix that are NaN (Not a Number). </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>A vector of JacobianEntry representing NaN entries. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2016fcfe27363650817b5be1ce6aaa32" name="a2016fcfe27363650817b5be1ce6aaa32"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2016fcfe27363650817b5be1ce6aaa32">◆ </a></span>nnz()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t gridfire::engine::NetworkJacobian::nnz </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get the number of non-zero entries in the Jacobian matrix. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>The number of non-zero entries. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6aef41de3c48ac77ae991ca427ce46a9" name="a6aef41de3c48ac77ae991ca427ce46a9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6aef41de3c48ac77ae991ca427ce46a9">◆ </a></span>operator()() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::engine::NetworkJacobian::operator() </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::atomic::Species & </td>
|
|
<td class="paramname"><em>row</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::atomic::Species & </td>
|
|
<td class="paramname"><em>col</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Accesses the value at the specified row and column corresponding to the given species. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">row</td><td>Species for the row </td></tr>
|
|
<tr><td class="paramname">col</td><td>Species for the column </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>value at the specified position </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3022b0f46c78adb4053b16a425a8b026" name="a3022b0f46c78adb4053b16a425a8b026"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3022b0f46c78adb4053b16a425a8b026">◆ </a></span>operator()() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">double gridfire::engine::NetworkJacobian::operator() </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>i</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>j</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Accesses the value at the specified row and column indices. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">i</td><td>Row index </td></tr>
|
|
<tr><td class="paramname">j</td><td>Column index </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>value at the specified position </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac5372d721127646e75c0f177661566f9" name="ac5372d721127646e75c0f177661566f9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac5372d721127646e75c0f177661566f9">◆ </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"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> & gridfire::engine::NetworkJacobian::operator= </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</a> && </td>
|
|
<td class="paramname"><em>jacobian</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Move constructor for <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a>. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">jacobian</td><td>The <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a> instance to move from. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Reference to the assigned <a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html" title="A wrapper class for handling the network Jacobian matrix.">NetworkJacobian</a> instance. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af9544f4cec7b450027fe991614adabfa" name="af9544f4cec7b450027fe991614adabfa"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af9544f4cec7b450027fe991614adabfa">◆ </a></span>rank()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t gridfire::engine::NetworkJacobian::rank </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Retrieves the rank of the Jacobian matrix. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>The rank of the matrix. </dd></dl>
|
|
<dl class="section note"><dt>Note</dt><dd>Rank is computed using QR decomposition and cached for efficiency. The rank is computed the first time this method is called and stored for subsequent calls. If any set operation is performed on the matrix, the cached rank is invalidated. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6fc63f3c5d3fe7a1fd8b0704f2e71e2c" name="a6fc63f3c5d3fe7a1fd8b0704f2e71e2c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6fc63f3c5d3fe7a1fd8b0704f2e71e2c">◆ </a></span>set() <span class="overload">[1/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::NetworkJacobian::set </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const fourdst::atomic::Species & </td>
|
|
<td class="paramname"><em>row</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const fourdst::atomic::Species & </td>
|
|
<td class="paramname"><em>col</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">double </td>
|
|
<td class="paramname"><em>value</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets the value at the specified row and column corresponding to the given species. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">row</td><td>Row species </td></tr>
|
|
<tr><td class="paramname">col</td><td>Column species </td></tr>
|
|
<tr><td class="paramname">value</td><td>Value to set </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a82c4fb3d75b1a30e0259ad888bd508cc" name="a82c4fb3d75b1a30e0259ad888bd508cc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a82c4fb3d75b1a30e0259ad888bd508cc">◆ </a></span>set() <span class="overload">[2/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::NetworkJacobian::set </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="namespacegridfire_1_1engine.html#ac7974616b5fd465c4a42e3d882cdde6e">JacobianEntry</a> & </td>
|
|
<td class="paramname"><em>entry</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets the value in the Jacobian matrix based on a JacobianEntry. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">entry</td><td>The JacobianEntry containing row species, column species, and value. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ac47692fd4cc13174373d2a2f3abd956d" name="ac47692fd4cc13174373d2a2f3abd956d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ac47692fd4cc13174373d2a2f3abd956d">◆ </a></span>set() <span class="overload">[3/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::NetworkJacobian::set </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>i</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>j</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">double </td>
|
|
<td class="paramname"><em>value</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets the value at the specified row and column indices. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">i</td><td>Row index </td></tr>
|
|
<tr><td class="paramname">j</td><td>Column index </td></tr>
|
|
<tr><td class="paramname">value</td><td>Value to set </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a699933e9f807ec196157f92ffb46b9ba" name="a699933e9f807ec196157f92ffb46b9ba"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a699933e9f807ec196157f92ffb46b9ba">◆ </a></span>shape()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::tuple< size_t, size_t > gridfire::engine::NetworkJacobian::shape </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Retrieves the shape of the Jacobian matrix as a tuple (rows, columns). </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>A tuple containing the number of rows and columns. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a485321469d84b3cf923ec79957044406" name="a485321469d84b3cf923ec79957044406"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a485321469d84b3cf923ec79957044406">◆ </a></span>singular()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool gridfire::engine::NetworkJacobian::singular </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Checks if the Jacobian matrix is singular. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>True if the matrix is singular, false otherwise. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8267f02eacb52d238da6daa19dbea764" name="a8267f02eacb52d238da6daa19dbea764"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8267f02eacb52d238da6daa19dbea764">◆ </a></span>to_csv()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void gridfire::engine::NetworkJacobian::to_csv </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::string & </td>
|
|
<td class="paramname"><em>filename</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Exports the Jacobian matrix to a CSV file. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">filename</td><td>The name of the CSV file to export to. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Data Documentation</h2>
|
|
<a id="ad14ba25ee22e6b0c73e21e19165814e8" name="ad14ba25ee22e6b0c73e21e19165814e8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad14ba25ee22e6b0c73e21e19165814e8">◆ </a></span>m_jacobianMatrix</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Eigen::SparseMatrix<double> gridfire::engine::NetworkJacobian::m_jacobianMatrix</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad30cd63facc761a71d70e60249a22576" name="ad30cd63facc761a71d70e60249a22576"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad30cd63facc761a71d70e60249a22576">◆ </a></span>m_rank</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::optional<size_t> gridfire::engine::NetworkJacobian::m_rank = std::nullopt</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">mutable</span><span class="mlabel">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae5a03ec75859d300f8f63ac465f1206c" name="ae5a03ec75859d300f8f63ac465f1206c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae5a03ec75859d300f8f63ac465f1206c">◆ </a></span>m_speciesToIndexMap</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::unordered_map<fourdst::atomic::Species, size_t> gridfire::engine::NetworkJacobian::m_speciesToIndexMap</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">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>
|
|
<li>src/include/gridfire/engine/types/<a class="el" href="jacobian_8h.html">jacobian.h</a></li>
|
|
<li>src/lib/engine/types/<a class="el" href="jacobian_8cpp.html">jacobian.cpp</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="namespacegridfire.html">gridfire</a></li><li class="navelem"><a class="el" href="namespacegridfire_1_1engine.html">engine</a></li><li class="navelem"><a class="el" href="classgridfire_1_1engine_1_1NetworkJacobian.html">NetworkJacobian</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.9.8 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|