<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.5"/> <title>Eigen: TriangularView< _MatrixType, _Mode > Class Template 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="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> <link href="eigendoxy.css" rel="stylesheet" type="text/css"> <!-- --> <script type="text/javascript" src="eigen_navtree_hacks.js"></script> <!-- <script type="text/javascript"> --> <!-- </script> --> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <!-- <a name="top"></a> --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectlogo"><img alt="Logo" src="Eigen_Silly_Professor_64x64.png"/></td> <td style="padding-left: 0.5em;"> <div id="projectname"><a href="http://eigen.tuxfamily.org">Eigen</a>  <span id="projectnumber">3.2.0</span> </div> </td> <td> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> </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"> $(document).ready(function(){initNavTree('classEigen_1_1TriangularView.html','');}); </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)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Pages</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div class="header"> <div class="summary"> <a href="classEigen_1_1TriangularView-members.html">List of all members</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#friends">Friends</a> </div> <div class="headertitle"> <div class="title">TriangularView< _MatrixType, _Mode > Class Template Reference<div class="ingroups"><a class="el" href="group__Core__Module.html">Core module</a></div></div> </div> </div><!--header--> <div class="contents"> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename _MatrixType, unsigned int _Mode><br/> class Eigen::TriangularView< _MatrixType, _Mode ></h3> <p>Base class for triangular part in a matrix. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">MatrixType</td><td>the type of the object in which we are taking the triangular part </td></tr> <tr><td class="paramname">Mode</td><td>the kind of triangular matrix expression to construct. Can be <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910bae70afef0d3ff7aca74e17e85ff6c9f2e">Upper</a>, <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910baf886b397626076218462d53d50eb96bc">Lower</a>, <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910ba65b1d67b2bb2e4a85b5f6a8863cd7109">UnitUpper</a>, <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910ba0dc6c411b3fc7ae6e32860a7872b7d18">UnitLower</a>, <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910babf11791f004a059cfdd9b941c76f3703">StrictlyUpper</a>, or <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910ba29eb98bd08096415c55f37ed4ac2af11">StrictlyLower</a>. This is in fact a bit field; it must have either <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910bae70afef0d3ff7aca74e17e85ff6c9f2e">Upper</a> or <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910baf886b397626076218462d53d50eb96bc">Lower</a>, and additionnaly it may have <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910bab051342541ee4cd3d2d7d710ba7c8a2d">UnitDiag</a> or <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910ba72b90f18314e6abbe9193224547df48d">ZeroDiag</a> or neither.</td></tr> </table> </dd> </dl> <p>This class represents a triangular part of a matrix, not necessarily square. Strictly speaking, for rectangular matrices one should speak of "trapezoid" parts. This class is the return type of MatrixBase::triangularView() and most of the time this is the only way it is used.</p> <dl class="section see"><dt>See Also</dt><dd>MatrixBase::triangularView() </dd></dl> </div> <p>Inherits TriangularBase< Derived >.</p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:a6e01ee01c822801c4aa1a5bbce77c0ca"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a>< const <br class="typebreak"/> typename <br class="typebreak"/> MatrixType::AdjointReturnType, <br class="typebreak"/> TransposeMode > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a6e01ee01c822801c4aa1a5bbce77c0ca">adjoint</a> () const </td></tr> <tr class="separator:a6e01ee01c822801c4aa1a5bbce77c0ca"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afacbe8d905dd8b00eb52e72c2e938aed"><td class="memItemLeft" align="right" valign="top">Scalar </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#afacbe8d905dd8b00eb52e72c2e938aed">coeff</a> (Index row, Index col) const </td></tr> <tr class="separator:afacbe8d905dd8b00eb52e72c2e938aed"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4386da578a119f7b500d0b22cab2de0e"><td class="memItemLeft" align="right" valign="top">Scalar & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a4386da578a119f7b500d0b22cab2de0e">coeffRef</a> (Index row, Index col)</td></tr> <tr class="separator:a4386da578a119f7b500d0b22cab2de0e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a57f41303472580f266cd951a234b035f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><br class="typebreak"/> < MatrixConjugateReturnType, <br class="typebreak"/> Mode > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a57f41303472580f266cd951a234b035f">conjugate</a> ()</td></tr> <tr class="separator:a57f41303472580f266cd951a234b035f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0fb086b8c07505645d7e6a937d2e6b05"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><br class="typebreak"/> < MatrixConjugateReturnType, <br class="typebreak"/> Mode > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a0fb086b8c07505645d7e6a937d2e6b05">conjugate</a> () const </td></tr> <tr class="separator:a0fb086b8c07505645d7e6a937d2e6b05"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af7177136c93ee65b7c41c1798e23292d"><td class="memTemplParams" colspan="2">template<typename Other > </td></tr> <tr class="memitem:af7177136c93ee65b7c41c1798e23292d"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>copyCoeff</b> (Index row, Index col, Other &other)</td></tr> <tr class="separator:af7177136c93ee65b7c41c1798e23292d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa84222add803ad7c9db07dd4dd91d5d9"><td class="memItemLeft" align="right" valign="top">Derived & </td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#aa84222add803ad7c9db07dd4dd91d5d9">derived</a> ()</td></tr> <tr class="separator:aa84222add803ad7c9db07dd4dd91d5d9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2850de52161dfe2bb6e380f1892276b8"><td class="memItemLeft" align="right" valign="top">const Derived & </td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#a2850de52161dfe2bb6e380f1892276b8">derived</a> () const </td></tr> <tr class="separator:a2850de52161dfe2bb6e380f1892276b8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a66ac5c9b6c04321ab12364bba06fee66"><td class="memTemplParams" colspan="2">template<typename DenseDerived > </td></tr> <tr class="memitem:a66ac5c9b6c04321ab12364bba06fee66"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>evalTo</b> (<a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< DenseDerived > &other) const </td></tr> <tr class="separator:a66ac5c9b6c04321ab12364bba06fee66"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:affcc5fe7ffb333e0b99a5532d086cd2f"><td class="memTemplParams" colspan="2">template<typename DenseDerived > </td></tr> <tr class="memitem:affcc5fe7ffb333e0b99a5532d086cd2f"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>evalToLazy</b> (<a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< DenseDerived > &other) const </td></tr> <tr class="separator:affcc5fe7ffb333e0b99a5532d086cd2f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a98692bec8f3d859f1e7a60eab87ac571"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a98692bec8f3d859f1e7a60eab87ac571">fill</a> (const Scalar &value)</td></tr> <tr class="separator:a98692bec8f3d859f1e7a60eab87ac571"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a22dc9719325c5fdeba88105a874ab3a8"><td class="memTemplParams" colspan="2">template<typename OtherDerived > </td></tr> <tr class="memitem:a22dc9719325c5fdeba88105a874ab3a8"><td class="memTemplItemLeft" align="right" valign="top">TriangularProduct< Mode, true, <br class="typebreak"/> MatrixType, false, <br class="typebreak"/> OtherDerived, <br class="typebreak"/> OtherDerived::IsVectorAtCompileTime > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a22dc9719325c5fdeba88105a874ab3a8">operator*</a> (const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< OtherDerived > &rhs) const </td></tr> <tr class="separator:a22dc9719325c5fdeba88105a874ab3a8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1dc18a489eb53c2759e84864b51c76d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a1dc18a489eb53c2759e84864b51c76d7">operator*=</a> (const typename internal::traits< MatrixType >::Scalar &other)</td></tr> <tr class="separator:a1dc18a489eb53c2759e84864b51c76d7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a778602f2edd03e48cb4970d33dadd02d"><td class="memTemplParams" colspan="2">template<typename Other > </td></tr> <tr class="memitem:a778602f2edd03e48cb4970d33dadd02d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a778602f2edd03e48cb4970d33dadd02d">operator+=</a> (const <a class="el" href="classEigen_1_1DenseBase.html">DenseBase</a>< Other > &other)</td></tr> <tr class="separator:a778602f2edd03e48cb4970d33dadd02d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a167200a169385cbdb7e089b2f273b0f4"><td class="memTemplParams" colspan="2">template<typename Other > </td></tr> <tr class="memitem:a167200a169385cbdb7e089b2f273b0f4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a167200a169385cbdb7e089b2f273b0f4">operator-=</a> (const <a class="el" href="classEigen_1_1DenseBase.html">DenseBase</a>< Other > &other)</td></tr> <tr class="separator:a167200a169385cbdb7e089b2f273b0f4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab8990a5fa1a410c4618a072601e1700e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#ab8990a5fa1a410c4618a072601e1700e">operator/=</a> (const typename internal::traits< MatrixType >::Scalar &other)</td></tr> <tr class="separator:ab8990a5fa1a410c4618a072601e1700e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad5f727632915007a7957972072c6d486"><td class="memTemplParams" colspan="2">template<typename OtherDerived > </td></tr> <tr class="memitem:ad5f727632915007a7957972072c6d486"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#ad5f727632915007a7957972072c6d486">operator=</a> (const TriangularBase< OtherDerived > &other)</td></tr> <tr class="separator:ad5f727632915007a7957972072c6d486"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0090f620cd02d7370af4c3e9f463ef87"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a0090f620cd02d7370af4c3e9f463ef87">setConstant</a> (const Scalar &value)</td></tr> <tr class="separator:a0090f620cd02d7370af4c3e9f463ef87"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adec7a08bb1d11e308e1450b7c00cf11f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#adec7a08bb1d11e308e1450b7c00cf11f">setOnes</a> ()</td></tr> <tr class="separator:adec7a08bb1d11e308e1450b7c00cf11f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a84ca526be83387c0d3925e961f238b97"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a84ca526be83387c0d3925e961f238b97">setZero</a> ()</td></tr> <tr class="separator:a84ca526be83387c0d3925e961f238b97"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a76f5bc8a03ec105ab4be1f2b91b7b5d5"><td class="memItemLeft" align="right" valign="top">Index </td><td class="memItemRight" valign="bottom"><a class="el" href="structEigen_1_1EigenBase.html#a76f5bc8a03ec105ab4be1f2b91b7b5d5">size</a> () const </td></tr> <tr class="separator:a76f5bc8a03ec105ab4be1f2b91b7b5d5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa4a11ffc4c8895aaec7ca00668e18c84"><td class="memTemplParams" colspan="2">template<int Side, typename Other > </td></tr> <tr class="memitem:aa4a11ffc4c8895aaec7ca00668e18c84"><td class="memTemplItemLeft" align="right" valign="top">const <br class="typebreak"/> internal::triangular_solve_retval<br class="typebreak"/> < Side, <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><br class="typebreak"/> < Derived, Mode >, Other > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#aa4a11ffc4c8895aaec7ca00668e18c84">solve</a> (const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< Other > &other) const </td></tr> <tr class="separator:aa4a11ffc4c8895aaec7ca00668e18c84"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a136a6a60e421673ac17e8c4cfd51681b"><td class="memTemplParams" colspan="2">template<int Side, typename OtherDerived > </td></tr> <tr class="memitem:a136a6a60e421673ac17e8c4cfd51681b"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a136a6a60e421673ac17e8c4cfd51681b">solveInPlace</a> (const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< OtherDerived > &other) const </td></tr> <tr class="separator:a136a6a60e421673ac17e8c4cfd51681b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac0ea12e12ab30e0fa3381df9ed33290f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a>< <a class="el" href="classEigen_1_1Transpose.html">Transpose</a><br class="typebreak"/> < MatrixType >, TransposeMode > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#ac0ea12e12ab30e0fa3381df9ed33290f">transpose</a> ()</td></tr> <tr class="separator:ac0ea12e12ab30e0fa3381df9ed33290f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abbbe3565361997478b8cf948dba995ec"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><br class="typebreak"/> < <a class="el" href="classEigen_1_1Transpose.html">Transpose</a>< MatrixType ><br class="typebreak"/> , TransposeMode > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#abbbe3565361997478b8cf948dba995ec">transpose</a> () const </td></tr> <tr class="separator:abbbe3565361997478b8cf948dba995ec"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a> Friends</h2></td></tr> <tr class="memitem:a297aec6b4d5ef6d9e014b541eb1d9a6e"><td class="memTemplParams" colspan="2">template<typename OtherDerived > </td></tr> <tr class="memitem:a297aec6b4d5ef6d9e014b541eb1d9a6e"><td class="memTemplItemLeft" align="right" valign="top">TriangularProduct< Mode, false, <br class="typebreak"/> OtherDerived, <br class="typebreak"/> OtherDerived::IsVectorAtCompileTime, <br class="typebreak"/> MatrixType, false > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1TriangularView.html#a297aec6b4d5ef6d9e014b541eb1d9a6e">operator*</a> (const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< OtherDerived > &lhs, const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a> &rhs)</td></tr> <tr class="separator:a297aec6b4d5ef6d9e014b541eb1d9a6e"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="a6e01ee01c822801c4aa1a5bbce77c0ca"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><const typename MatrixType::AdjointReturnType,TransposeMode> adjoint </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1MatrixBase.html#ac43d5834cffcedbd27777329a8f5eeca">MatrixBase::adjoint() const </a> </dd></dl> </div> </div> <a class="anchor" id="afacbe8d905dd8b00eb52e72c2e938aed"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar coeff </td> <td>(</td> <td class="paramtype">Index </td> <td class="paramname"><em>row</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">Index </td> <td class="paramname"><em>col</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd>MatrixBase::coeff() </dd></dl> <dl class="section warning"><dt>Warning</dt><dd>the coordinates must fit into the referenced triangular part </dd></dl> </div> </div> <a class="anchor" id="a4386da578a119f7b500d0b22cab2de0e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar& coeffRef </td> <td>(</td> <td class="paramtype">Index </td> <td class="paramname"><em>row</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">Index </td> <td class="paramname"><em>col</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">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd>MatrixBase::coeffRef() </dd></dl> <dl class="section warning"><dt>Warning</dt><dd>the coordinates must fit into the referenced triangular part </dd></dl> </div> </div> <a class="anchor" id="a57f41303472580f266cd951a234b035f"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a><MatrixConjugateReturnType,Mode> conjugate </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1MatrixBase.html#aab6c2241712d7faf07019a0d86d3fb79">MatrixBase::conjugate()</a> </dd></dl> </div> </div> <a class="anchor" id="a0fb086b8c07505645d7e6a937d2e6b05"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><MatrixConjugateReturnType,Mode> conjugate </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1MatrixBase.html#aab6c2241712d7faf07019a0d86d3fb79">MatrixBase::conjugate() const </a> </dd></dl> </div> </div> <a class="anchor" id="af7177136c93ee65b7c41c1798e23292d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void copyCoeff </td> <td>(</td> <td class="paramtype">Index </td> <td class="paramname"><em>row</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">Index </td> <td class="paramname"><em>col</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">Other & </td> <td class="paramname"><em>other</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">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd>MatrixBase::copyCoeff(row,col) </dd></dl> </div> </div> <a class="anchor" id="aa84222add803ad7c9db07dd4dd91d5d9"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Derived& derived </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a reference to the derived object </dd></dl> <p>Referenced by <a class="el" href="classEigen_1_1MatrixBase.html#a9aaee4fba54baa7d0ca508e094f2d6f9">MatrixBase< Derived >::applyOnTheLeft()</a>, <a class="el" href="classEigen_1_1MatrixBase.html#a6e5b1e71a1916ddd01e7c324831c40dc">MatrixBase< Derived >::applyOnTheRight()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#a975548d0fd92d4b2a2cb09c2adf10ce6">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::applyTranspositionOnTheLeft()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#a3f93571373e20799e196513109f5b26e">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::applyTranspositionOnTheRight()</a>, <a class="el" href="classEigen_1_1SparseMatrixBase.html#ae762210a1ab89bed1673edc09a6ec8b7">SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::binaryExpr()</a>, <a class="el" href="classEigen_1_1SparseMatrixBase.html#a878151caf2ff25ebbc76186485f81207">SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::bottomLeftCorner()</a>, <a class="el" href="structEigen_1_1EigenBase.html#aaca1908a5ec508a25ff0a8bca803e5f3">EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::cols()</a>, <a class="el" href="classEigen_1_1SparseMatrixBase.html#aaca1908a5ec508a25ff0a8bca803e5f3">SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::cols()</a>, <a class="el" href="classEigen_1_1SparseMatrixBase.html#a571c36d7211bd03dd1a06ac46c002fe5">SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::eval()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#a8876d615d17aad77b054a8f58b699e7d">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::indices()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#a594deabd0f368a746801f5dd14a0db2a">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::inverse()</a>, <a class="el" href="classEigen_1_1RotationBase.html#acd4f0475d084e54c0dde2ef3f78822c0">RotationBase< Derived, 3 >::operator*()</a>, <a class="el" href="classEigen_1_1SparseSelfAdjointView.html#a6becf66c0294e516cbe73141c4276452">SparseSelfAdjointView< MatrixType, UpLo >::operator*()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#aa06f5ef5169ce3e671abbc8776d2c339">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::operator*()</a>, <a class="el" href="classEigen_1_1SparseMatrixBase.html#ae7d7083917427445e50f3c4b5bf8ba6a">SparseMatrixBase< Derived >::operator*()</a>, <a class="el" href="classEigen_1_1Transform.html#a3846f7a4b892ed530881f52a5460ddf6">Transform< Scalar, Dim, Mode, _Options >::operator*()</a>, <a class="el" href="namespaceEigen.html#a81fb70d0dc1c6deb42e9816647607247">Eigen::operator*()</a>, <a class="el" href="classEigen_1_1MatrixBase.html#ac9beaa3954c989bbbc59b361d9423e78">MatrixBase< Derived >::operator*=()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#ac96d811c408d8e282ad0036b1b9ed42f">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::operator=()</a>, <a class="el" href="classEigen_1_1DenseBase.html#acde54311cdc2b5731a6d27f7a5f7ad1b">DenseBase< Derived >::operator=()</a>, <a class="el" href="classEigen_1_1Transform.html#a746fdf41f0377f203f231a1705cf6012">Transform< Scalar, Dim, Mode, _Options >::operator=()</a>, <a class="el" href="classEigen_1_1PlainObjectBase.html#a65a58af12990c2e395a7f0b4012d3b94">PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::operator=()</a>, <a class="el" href="classEigen_1_1PlainObjectBase.html#ab5207d4c7f9d20e5fc74bfc9b54620b4">PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::PlainObjectBase()</a>, <a class="el" href="classEigen_1_1PlainObjectBase.html#abe7b7417203825a6e434449cf0ac6529">PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::resizeLike()</a>, <a class="el" href="structEigen_1_1EigenBase.html#a5552abd83dbd03c85cea6d61fd8875a5">EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::rows()</a>, <a class="el" href="classEigen_1_1SparseMatrixBase.html#a5552abd83dbd03c85cea6d61fd8875a5">SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::rows()</a>, <a class="el" href="classEigen_1_1SimplicialCholeskyBase.html#abe2318376d9cb41fa612b793035da397">SimplicialCholeskyBase< SimplicialLDLT< _MatrixType, _UpLo > >::solve()</a>, <a class="el" href="classEigen_1_1IterativeSolverBase.html#a7892f6fbc52bfa658e1324a63d376d1c">IterativeSolverBase< ConjugateGradient< _MatrixType, _UpLo, _Preconditioner > >::solve()</a>, <a class="el" href="classEigen_1_1SparseLU.html#a39062d90ea647b4e7668452647b04b17">SparseLU< _MatrixType, _OrderingType >::solve()</a>, <a class="el" href="classEigen_1_1UmfPackLU.html#a6c606e11055ed3d815183705c57b22b4">UmfPackLU< _MatrixType >::solve()</a>, <a class="el" href="classEigen_1_1CholmodBase.html#a81db76105fedf365cdbc200774911847">CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::solve()</a>, <a class="el" href="classEigen_1_1SuperLUBase.html#a0bf5dc2154e2f03bf871eca997c6e6e6">SuperLUBase< _MatrixType, SuperILU< _MatrixType > >::solve()</a>, <a class="el" href="classEigen_1_1SparseMatrix.html#ab42390876ea7ef3fe4845b936c281c99">SparseMatrix< Scalar, RowMajor >::SparseMatrix()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#ac4bd143bb38762fd91e546dbda01069b">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::toDenseMatrix()</a>, <a class="el" href="classEigen_1_1SparseMatrixBase.html#ae06d0a5c4008014fb717866aec8d30c7">SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::topLeftCorner()</a>, <a class="el" href="classEigen_1_1Transform.html#ae80ecf3abb4b22d409c5adbd19850aa8">Transform< Scalar, Dim, Mode, _Options >::Transform()</a>, <a class="el" href="classEigen_1_1PermutationBase.html#a71ed95486aeea9fb396e85461ad5b73a">PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, IndexType > >::transpose()</a>, and <a class="el" href="classEigen_1_1SparseMatrixBase.html#aba9ae3923f6caa962ef3418d6872c369">SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::unaryViewExpr()</a>.</p> </div> </div> <a class="anchor" id="a2850de52161dfe2bb6e380f1892276b8"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const Derived& derived </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a const reference to the derived object </dd></dl> </div> </div> <a class="anchor" id="a66ac5c9b6c04321ab12364bba06fee66"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void evalTo </td> <td>(</td> <td class="paramtype"><a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< DenseDerived > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Assigns a triangular or selfadjoint matrix to a dense matrix. If the matrix is triangular, the opposite part is set to zero. </p> </div> </div> <a class="anchor" id="affcc5fe7ffb333e0b99a5532d086cd2f"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void evalToLazy </td> <td>(</td> <td class="paramtype"><a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< DenseDerived > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Assigns a triangular or selfadjoint matrix to a dense matrix. If the matrix is triangular, the opposite part is set to zero. </p> </div> </div> <a class="anchor" id="a98692bec8f3d859f1e7a60eab87ac571"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fill </td> <td>(</td> <td class="paramtype">const Scalar & </td> <td class="paramname"><em>value</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1DenseBase.html#a98692bec8f3d859f1e7a60eab87ac571">MatrixBase::fill()</a> </dd></dl> <p>References <a class="el" href="classEigen_1_1TriangularView.html#a0090f620cd02d7370af4c3e9f463ef87">TriangularView< _MatrixType, _Mode >::setConstant()</a>.</p> </div> </div> <a class="anchor" id="a22dc9719325c5fdeba88105a874ab3a8"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">TriangularProduct<Mode,true,MatrixType,false,OtherDerived, OtherDerived::IsVectorAtCompileTime> operator* </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< OtherDerived > & </td> <td class="paramname"><em>rhs</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Efficient triangular matrix times vector/matrix product </p> </div> </div> <a class="anchor" id="a1dc18a489eb53c2759e84864b51c76d7"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a>& operator*= </td> <td>(</td> <td class="paramtype">const typename internal::traits< MatrixType >::Scalar & </td> <td class="paramname"><em>other</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1MatrixBase.html#ac9beaa3954c989bbbc59b361d9423e78">MatrixBase::operator*=()</a> </dd></dl> </div> </div> <a class="anchor" id="a778602f2edd03e48cb4970d33dadd02d"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a>& operator+= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1DenseBase.html">DenseBase</a>< Other > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1MatrixBase.html#a7aaf408b3bfbdd38749b01979393e814">MatrixBase::operator+=()</a> </dd></dl> </div> </div> <a class="anchor" id="a167200a169385cbdb7e089b2f273b0f4"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a>& operator-= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1DenseBase.html">DenseBase</a>< Other > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1MatrixBase.html#a2da6ae5caa522c1efec3a75428b22143">MatrixBase::operator-=()</a> </dd></dl> </div> </div> <a class="anchor" id="ab8990a5fa1a410c4618a072601e1700e"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a>& operator/= </td> <td>(</td> <td class="paramtype">const typename internal::traits< MatrixType >::Scalar & </td> <td class="paramname"><em>other</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd>MatrixBase::operator/=() </dd></dl> </div> </div> <a class="anchor" id="ad5f727632915007a7957972072c6d486"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a>& operator= </td> <td>(</td> <td class="paramtype">const TriangularBase< OtherDerived > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Assigns a triangular matrix to a triangular part of a dense matrix </p> </div> </div> <a class="anchor" id="a0090f620cd02d7370af4c3e9f463ef87"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a>& setConstant </td> <td>(</td> <td class="paramtype">const Scalar & </td> <td class="paramname"><em>value</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1DenseBase.html#a351ca566980cf96d9cdd61f3ce0cf94f">MatrixBase::setConstant()</a> </dd></dl> <p>Referenced by <a class="el" href="classEigen_1_1TriangularView.html#a98692bec8f3d859f1e7a60eab87ac571">TriangularView< _MatrixType, _Mode >::fill()</a>, <a class="el" href="classEigen_1_1TriangularView.html#adec7a08bb1d11e308e1450b7c00cf11f">TriangularView< _MatrixType, _Mode >::setOnes()</a>, and <a class="el" href="classEigen_1_1TriangularView.html#a84ca526be83387c0d3925e961f238b97">TriangularView< _MatrixType, _Mode >::setZero()</a>.</p> </div> </div> <a class="anchor" id="adec7a08bb1d11e308e1450b7c00cf11f"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a>& setOnes </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1DenseBase.html#a196e62ee8a1fc3b4af631e955d650cfc">MatrixBase::setOnes()</a> </dd></dl> <p>References <a class="el" href="classEigen_1_1TriangularView.html#a0090f620cd02d7370af4c3e9f463ef87">TriangularView< _MatrixType, _Mode >::setConstant()</a>.</p> </div> </div> <a class="anchor" id="a84ca526be83387c0d3925e961f238b97"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a>& setZero </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1DenseBase.html#a9053ca03ac251002768a54742be28fce">MatrixBase::setZero()</a> </dd></dl> <p>References <a class="el" href="classEigen_1_1TriangularView.html#a0090f620cd02d7370af4c3e9f463ef87">TriangularView< _MatrixType, _Mode >::setConstant()</a>.</p> </div> </div> <a class="anchor" id="a76f5bc8a03ec105ab4be1f2b91b7b5d5"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Index size </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the number of coefficients, which is <a class="el" href="structEigen_1_1EigenBase.html#a5552abd83dbd03c85cea6d61fd8875a5">rows()</a>*cols(). </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="structEigen_1_1EigenBase.html#a5552abd83dbd03c85cea6d61fd8875a5">rows()</a>, <a class="el" href="structEigen_1_1EigenBase.html#aaca1908a5ec508a25ff0a8bca803e5f3">cols()</a>, SizeAtCompileTime. </dd></dl> </div> </div> <a class="anchor" id="aa4a11ffc4c8895aaec7ca00668e18c84"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const internal::triangular_solve_retval<Side,<a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><Derived,Mode>,Other> solve </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< Other > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the product of the inverse of <code>*this</code> with <em>other</em>, <em>*this</em> being triangular.</dd></dl> <p>This function computes the inverse-matrix matrix product inverse(<code>*this</code>) * <em>other</em> if <em>Side==OnTheLeft</em> (the default), or the right-inverse-multiply <em>other</em> * inverse(<code>*this</code>) if <em>Side==OnTheRight</em>.</p> <p>The matrix <code>*this</code> must be triangular and invertible (i.e., all the coefficients of the diagonal must be non zero). It works as a forward (resp. backward) substitution if <code>*this</code> is an upper (resp. lower) triangular matrix.</p> <p>Example: </p> <div class="fragment"><div class="line"><span class="preprocessor">#ifndef _MSC_VER</span></div> <div class="line"><span class="preprocessor"></span><span class="preprocessor"> #warning deprecated</span></div> <div class="line"><span class="preprocessor"></span><span class="preprocessor">#endif</span></div> <div class="line"><span class="preprocessor"></span><span class="comment">/*</span></div> <div class="line"><span class="comment">Matrix3d m = Matrix3d::Zero();</span></div> <div class="line"><span class="comment">m.part<Eigen::UpperTriangular>().setOnes();</span></div> <div class="line"><span class="comment">cout << "Here is the matrix m:" << endl << m << endl;</span></div> <div class="line"><span class="comment">Matrix3d n = Matrix3d::Ones();</span></div> <div class="line"><span class="comment">n.part<Eigen::LowerTriangular>() *= 2;</span></div> <div class="line"><span class="comment">cout << "Here is the matrix n:" << endl << n << endl;</span></div> <div class="line"><span class="comment">cout << "And now here is m.inverse()*n, taking advantage of the fact that"</span></div> <div class="line"><span class="comment"> " m is upper-triangular:" << endl</span></div> <div class="line"><span class="comment"> << m.marked<Eigen::UpperTriangular>().solveTriangular(n);</span></div> <div class="line"><span class="comment">*/</span></div> </div><!-- fragment --><p> Output: </p> <pre class="fragment"></pre><p>This function returns an expression of the inverse-multiply and can works in-place if it is assigned to the same matrix or vector <em>other</em>.</p> <p>For users coming from BLAS, this function (and more specifically <a class="el" href="classEigen_1_1TriangularView.html#a136a6a60e421673ac17e8c4cfd51681b">solveInPlace()</a>) offer all the operations supported by the <code>*TRSV</code> and <code>*TRSM</code> BLAS routines.</p> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1TriangularView.html#a136a6a60e421673ac17e8c4cfd51681b">TriangularView::solveInPlace()</a> </dd></dl> </div> </div> <a class="anchor" id="a136a6a60e421673ac17e8c4cfd51681b"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void solveInPlace </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< OtherDerived > & </td> <td class="paramname"><em>_other</em></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>"in-place" version of TriangularView::solve() where the result is written in <em>other</em> </p> <dl class="section warning"><dt>Warning</dt><dd>The parameter is only marked 'const' to make the C++ compiler accept a temporary expression here. This function will const_cast it, so constness isn't honored here.</dd></dl> <p>See <a class="el" href="classEigen_1_1TriangularView.html" title="Base class for triangular part in a matrix. ">TriangularView</a>:solve() for the details. </p> <p>References <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910baf886b397626076218462d53d50eb96bc">Eigen::Lower</a>, <a class="el" href="group__enums.html#gga3f4a95405348aa63ef907e692901011fa02217d2d79111440646e3b00c747745f">Eigen::OnTheLeft</a>, <a class="el" href="group__enums.html#gga3f4a95405348aa63ef907e692901011faeda0d7b1859ec757de18ee3b7c6c541c">Eigen::OnTheRight</a>, <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910bae70afef0d3ff7aca74e17e85ff6c9f2e">Eigen::Upper</a>, and <a class="el" href="group__enums.html#ggab59c1bec446b10af208f977a871d910ba72b90f18314e6abbe9193224547df48d">Eigen::ZeroDiag</a>.</p> </div> </div> <a class="anchor" id="ac0ea12e12ab30e0fa3381df9ed33290f"></a> <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="classEigen_1_1TriangularView.html">TriangularView</a><<a class="el" href="classEigen_1_1Transpose.html">Transpose</a><MatrixType>,TransposeMode> transpose </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1DenseBase.html#a3c187c30922fc5e42f208ae3eb0970ee">MatrixBase::transpose()</a> </dd></dl> </div> </div> <a class="anchor" id="abbbe3565361997478b8cf948dba995ec"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a><<a class="el" href="classEigen_1_1Transpose.html">Transpose</a><MatrixType>,TransposeMode> transpose </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1DenseBase.html#a228b8f9641f46db6e92e06374ea87918">MatrixBase::transpose() const </a> </dd></dl> </div> </div> <h2 class="groupheader">Friends And Related Function Documentation</h2> <a class="anchor" id="a297aec6b4d5ef6d9e014b541eb1d9a6e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">TriangularProduct<Mode,false,OtherDerived,OtherDerived::IsVectorAtCompileTime,MatrixType,false> operator* </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< OtherDerived > & </td> <td class="paramname"><em>lhs</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a>< _MatrixType, _Mode > & </td> <td class="paramname"><em>rhs</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">friend</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Efficient vector/matrix times triangular matrix product </p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="TriangularMatrix_8h_source.html">TriangularMatrix.h</a></li> <li><a class="el" href="GeneralMatrixMatrixTriangular_8h_source.html">GeneralMatrixMatrixTriangular.h</a></li> <li><a class="el" href="SolveTriangular_8h_source.html">SolveTriangular.h</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="namespaceEigen.html">Eigen</a></li><li class="navelem"><a class="el" href="classEigen_1_1TriangularView.html">TriangularView</a></li> <li class="footer">Generated on Mon Oct 28 2013 11:04:31 for Eigen by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.5 </li> </ul> </div> <!-- Piwik --> <!-- <script type="text/javascript"> var pkBaseURL = (("https:" == document.location.protocol) ? "https://stats.sylphide-consulting.com/piwik/" : "http://stats.sylphide-consulting.com/piwik/"); document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E")); </script><script type="text/javascript"> try { var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 20); piwikTracker.trackPageView(); piwikTracker.enableLinkTracking(); } catch( err ) {} </script><noscript><p><img src="http://stats.sylphide-consulting.com/piwik/piwik.php?idsite=20" style="border:0" alt="" /></p></noscript> --> <!-- End Piwik Tracking Code --> </body> </html>