Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > e6f1a3debfddb2a6cccaab627266a0ea > files > 3479

mrpt-doc-0.9.0-0.5.fc14.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>The MRPT project: mrpt::math::CMatrixTemplateNumeric&lt; T &gt; Class Template Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<div align="left"><a href="http://www.mrpt.org/">Main MRPT website</a> &gt; <b>C++ reference</b> </div>
<div align="right">
<a href="index.html"><img border="0" src="mrpt_logo.png" alt="MRPT logo"></a>
</div>
<!-- Generated by Doxygen 1.6.2-20100208 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.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)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespacemrpt.html">mrpt</a>::<a class="el" href="namespacemrpt_1_1math.html">math</a>::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>
  </div>
</div>
<div class="contents">
<h1>mrpt::math::CMatrixTemplateNumeric&lt; T &gt; Class Template Reference</h1><!-- doxytag: class="mrpt::math::CMatrixTemplateNumeric" --><!-- doxytag: inherits="mrpt::math::CMatrixTemplate" -->
<p>This template class extends the class "CMatrixTemplate" with many common operations with numerical matrixes.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_c_matrix_template_numeric_8h_source.html">mrpt/math/CMatrixTemplateNumeric.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for mrpt::math::CMatrixTemplateNumeric&lt; T &gt;:</div>
<div class="dynsection">
<div class="center"><img src="classmrpt_1_1math_1_1_c_matrix_template_numeric__inherit__graph.png" border="0" usemap="#mrpt_1_1math_1_1_c_matrix_template_numeric_3_01_t_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="mrpt_1_1math_1_1_c_matrix_template_numeric_3_01_t_01_4_inherit__map" id="mrpt_1_1math_1_1_c_matrix_template_numeric_3_01_t_01_4_inherit__map">
<area shape="rect" id="node5" href="classmrpt_1_1math_1_1_c_matrix.html" title="This class is a &quot;CSerializable&quot; wrapper for &quot;CMatrixFloat&quot;." alt="" coords="49,160,236,189"/><area shape="rect" id="node2" href="classmrpt_1_1math_1_1_c_matrix_template.html" title="This template class provides the basic functionality for a general 2D any&#45;size, resizable..." alt="" coords="31,5,255,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for mrpt::math::CMatrixTemplateNumeric&lt; T &gt;:</div>
<div class="dynsection">
<div class="center"><img src="classmrpt_1_1math_1_1_c_matrix_template_numeric__coll__graph.png" border="0" usemap="#mrpt_1_1math_1_1_c_matrix_template_numeric_3_01_t_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="mrpt_1_1math_1_1_c_matrix_template_numeric_3_01_t_01_4_coll__map" id="mrpt_1_1math_1_1_c_matrix_template_numeric_3_01_t_01_4_coll__map">
<area shape="rect" id="node2" href="classmrpt_1_1math_1_1_c_matrix_template.html" title="This template class provides the basic functionality for a general 2D any&#45;size, resizable..." alt="" coords="31,101,255,131"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classmrpt_1_1math_1_1_c_matrix_template_numeric-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_numeric_1_1mrpt__container.html">mrpt_container</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_numeric_1_1mrpt__matrix__tag__templ.html">mrpt_matrix_tag_templ</a></td></tr>
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a86ba63fb91c4e04ab880dce1130113b1">dummy_enum</a> { <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a86ba63fb91c4e04ab880dce1130113b1a861ead41eeb9aa536f902dbff7bda73e">mrpt_matrix_type_ncols</a> =  -1, 
<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a86ba63fb91c4e04ab880dce1130113b1a986ad3f224967a2c10c2033a660845b5">mrpt_matrix_type_nrows</a> =  -1
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt; T &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ada4f2838b3584b5be6d0030a3f59050a">BASE</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a2515e2052403254f868d01248809a33a">mrpt_autotype</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa9f47e299371805ab901b4a37a899f1a">mrpt_matrix_tag</a></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Methods common to all containers</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrpdb67c77ec44c132806625b84aaff8296"></a> </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a7d1a7ab34ffee750c631c18e18fc57c3">countNonZero</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5a36117d7d26206a9b240342058b49df">fill</a> (const T &amp;val)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4d7fbeb0f4e553226f76a85f43cbcb2d">maximum</a> (size_t *maxIndex=NULL) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a319a612b498b2b88da038af94c89e81e">minimum</a> (size_t *minIndex=NULL) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a882c07b0dad9bcd24440e81b671fe43c">minimum_maximum</a> (T &amp;out_min, T &amp;out_max, size_t *minIndex=NULL, size_t *maxIndex=NULL) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a081920f1f994b71a07b4673971e3bf94">norm_inf</a> (size_t *maxIndex=NULL) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a45800b8f0b243efaa93ce2162f54fc81">sumAll</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename RET_TYPE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">RET_TYPE&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae037f74b1cc05a370da313ecfe7b2306">sumAllRetType</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class CONTAINEROUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a1d029ccb06f4789c676b17a84d079cd5">cumsum</a> (CONTAINEROUT &amp;out) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class CONTAINEROUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">CONTAINEROUT&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a670077806449d0e9e31de70e1230dbd9">cumsum</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class CONTAINER2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a66c7107302bbe2845f29e62815b6dd2e">countCommonElements</a> (const CONTAINER2 &amp;b) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; double &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#af947dcc1430aee08a642f15475ecc2b1">histogram</a> (double limit_min, double limit_max, size_t number_bins, bool do_normalization=false) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class F &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a18b19ae8a2cf11cb761c20cd52809437">applyToAllElements</a> (T(*function)(T))</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a705a4d2dcadd8f1f5bffead1ce4d911e">Sqrt</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a3657d6a311697b2d83df7cfd013a451a">Abs</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#af41ebbfce926485e0ca0975082a8e2bd">Square</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5993df66ca4c8503457b4bad0a2fc219">Exp</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ac26009f5ddc2f756fa2fdf70ead47907">Log</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5ce9956e93da8303e3d1375b069395d4">squareNorm</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ab82f60c429c14544beeca5cb1b5db56d">norm</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abdf1e8c7783dd780b8b3ca43b582294f">mean</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a2bf6749414a1627592b9c772e2e6b522">adjustRange</a> (const T min_val, const T max_val)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae2b560f2aa40d10b7de9962fe93d0a80">normalize</a> (const T min_val=0, const T max_val=1)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aed9e7842f1130907ee20afdf6e735f4d">std</a> (bool unbiased=true) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4a7e2253ab6984561e3ff470f766cdd0">meanAndStd</a> (double &amp;out_mean, double &amp;out_std, bool unbiased=true)</td></tr>
<tr><td colspan="2"><div class="groupHeader">Methods common to all matrices</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrpc7da2c21e4f1e4bafe4b80c607a23d5a"></a> </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a306e562bbf1b02b4855a952960d0927c">operator+</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5548a9f75a94e58a784d23d636bb52d1">operator-</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aeb1ee81f366d898e0a2d7bd9c359d232">operator+=</a> (const T n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ab87645e8c81b2a45e7932581a0d5317b">operator-=</a> (const T n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6a70bbcb8ba85d2b12b4ce31a8f809e8">operator*=</a> (const T n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a168b60ed6f4ef4e04ad272da378e0cb7">operator/=</a> (const T n)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">OTHERMATRIX::template <br class="typebreak"/>
<a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_numeric_1_1mrpt__matrix__tag__templ.html">mrpt_matrix_tag_templ</a>&lt; void &gt;<br class="typebreak"/>
::void_type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a3452e26df283b8aedee401c09b0c258a">operator*=</a> (const OTHERMATRIX &amp;m)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ab06b00ecab28e8a5fee890e2c6ac7a75">add_At</a> (const OTHERMATRIX &amp;m)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a8216ad7977aa3ccb562ce6b227ef4d12">add_Ac</a> (const OTHERMATRIX &amp;m, const T c)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aaa53f644282256eb90a585a1a1242c41">substract_At</a> (const OTHERMATRIX &amp;m)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aafc63d52d9c90d83328b9e2212be6c6c">substract_An</a> (const OTHERMATRIX &amp;m, const size_t n)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a0fc7596c7d0b89423d077be1aa8a40b4">substract_Ac</a> (const OTHERMATRIX &amp;m, const T c)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a244f1fb19ef9e52ff2f4843ceb992251">add_AAt</a> (const OTHERMATRIX &amp;m)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a0496e35e0bc5ac6d4f31e5c6128f1497">substract_AAt</a> (const OTHERMATRIX &amp;m)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a1cc151c66c115ca8ce2e073363adafbd">empty</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIX1 , class MATRIX2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a387842e8fcb5aff2bd86442de8dcaf48">multiply</a> (const MATRIX1 &amp;A, const MATRIX2 &amp;B)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIX1 , class MATRIX2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a39aaae778bcdd3aa102e414139c73348">multiply_AB</a> (const MATRIX1 &amp;A, const MATRIX2 &amp;B)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERVECTOR1 , typename OTHERVECTOR2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a64df0b57214e9cc73f198c3c17c6936c">multiply_Ab</a> (const OTHERVECTOR1 &amp;vIn, OTHERVECTOR2 &amp;vOut, bool accumToOutput=false) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERVECTOR1 , typename OTHERVECTOR2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a13bb9454483bb877e2cb3682073ebf86">multiply_Atb</a> (const OTHERVECTOR1 &amp;vIn, OTHERVECTOR2 &amp;vOut, bool accumToOutput=false) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename MAT_C , typename MAT_R &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a46184ec446528c091156d44ff39f8667">multiply_HCHt</a> (const MAT_C &amp;C, MAT_R &amp;R, bool accumResultInOutput=false, bool allow_submatrix_mult=false) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename MAT_C &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a20eebdf07672277176f71f56880daaec">multiply_HCHt_scalar</a> (const MAT_C &amp;C) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename MAT_C &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5892110276b5074db83a91c7c0b1565a">multiply_HtCH_scalar</a> (const MAT_C &amp;C) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename MAT_C , typename MAT_R &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a587085b3548141834c2875be516afd60">multiply_HtCH</a> (const MAT_C &amp;C, MAT_R &amp;R, bool accumResultInOutput=false, bool allow_submatrix_mult=false) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_A , class MAT_OUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a72b992417e8f9c03222ccf90ec3d4453">multiply_subMatrix</a> (const MAT_A &amp;A, MAT_OUT &amp;outResult, const size_t A_cols_offset, const size_t A_rows_offset, const size_t A_col_count) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_A , class MAT_B , class MAT_C &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a2c09c975167fde73120d4697be8fec2d">multiply_ABC</a> (const MAT_A &amp;A, const MAT_B &amp;B, const MAT_C &amp;C)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_A , class MAT_B , class MAT_C &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa8f9f11482c67c95c5297765b068c029">multiply_ABCt</a> (const MAT_A &amp;A, const MAT_B &amp;B, const MAT_C &amp;C)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_A , class MAT_B &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a87d8ea0cb48fbab92ba5feb75cd8998a">multiply_ABt</a> (const MAT_A &amp;A, const MAT_B &amp;B)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_A &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a107ff6ba047433e54d18b62e1eba1054">multiply_AAt</a> (const MAT_A &amp;A)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_A &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a017cab72ce4d84180a8c282a4c6af19d">multiply_AtA</a> (const MAT_A &amp;A)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_A , class MAT_B &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aac5baf8406f3b3270a5f1860e4065370">multiply_result_is_symmetric</a> (const MAT_A &amp;A, const MAT_B &amp;B)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#acb732e2b0d681794a1b66fb183e4d072">assignMatrix</a> (const OTHERMATRIX &amp;m)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OTHERMATRIX &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a3d046768eccee95f3670e5a0dbc96195">assignMatrixTransposed</a> (const OTHERMATRIX &amp;m)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a1ed1729793c0f4bdbc450c5690da9467">operator=</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_pose2_d.html">TPose2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4b0f8297b400532ffc7f62b999e2bd5a">operator=</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d.html">TPose3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa1c9d6a4dfc4daebe0e2834c943306d9">operator=</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d_quat.html">TPose3DQuat</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a53d07a33a145016d45fd2991f55e601d">operator=</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_point2_d.html">TPoint2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ad4385624d5e0901da27f72d346bf0d61">operator=</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_point3_d.html">TPoint3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aac9aefbe9a6b5119c8b0420e9ba88b11">operator=</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">mrpt::poses::CPose2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#afa9c9314795b3930959d2943bf795f05">operator=</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">mrpt::poses::CPose3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4c8da7633f669c36bb580fc67925e5f1">operator=</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_quat.html">mrpt::poses::CPose3DQuat</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a57eba0c8658761aaafd844356d2896ff">operator=</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_point2_d.html">mrpt::poses::CPoint2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a796de00fb1a3f86cc6a27fa1ee69b76d">operator=</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_point3_d.html">mrpt::poses::CPoint3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6f12ca075d73e77807d26819706a78e9">_E</a> (const size_t row, const size_t col) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa0ae37ac9e00d97fdfb5f5313bf65132">_E</a> (const size_t row, const size_t col)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a31026bdb03a7b771f46c880f40a4aaa7">_A</a> (const size_t n) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4e653fe5a45637c9b8f4c891393e466c">_A</a> (const size_t n)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#af0286c890c15c4b3ac35b5990cb33b6b">IsSquare</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae13602099058fef027d2d1dca90961d1">isSquare</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a73751fb8cdf0ad2099d2eb8d37e9ea57">isSingular</a> (const T epsilon=0) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ad70fa00afb489269e7cde9bacfde8492">trace</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_OUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#af82185e0819f9734f343fb1bce4d7e0b">pseudoInverse</a> (MAT_OUT &amp;out) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT_OUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">MAT_OUT&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a54554f9f2906d6ef6416c7168a7bbad2">pseudoInverse</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aeebfcb3de8b44ccdff5befffc98218fd">det</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIXOUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a19ed7dbeffb957df2ee64a556e6d5fbe">inv</a> (MATRIXOUT &amp;out) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4a312effa6067d6889a185fe4befef55">inv</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIXOUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a7e5a2259e1ca39eb6e2cf249d5335d35">inv_fast</a> (MATRIXOUT &amp;out)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT2 , class MAT3 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a89cc651ddffe002003151e09cda16260">leftDivideSquare</a> (const MAT2 &amp;A, MAT3 &amp;RES) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MAT2 , class MAT3 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a71022ba15b56c2cfcbdc7ad1f6c9f53e">rightDivideSquare</a> (const MAT2 &amp;B, MAT3 &amp;RES) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename MAT2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae6be93ed0dee68dd49b6d60da434acf1">fastLeftDivideSquare</a> (MAT2 &amp;A)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename MAT2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6447082956a66a9035e792fb5a6ea85c">fastRightDivideSquare</a> (MAT2 &amp;B)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a106b7d158ba6d100dc67f6fef64972bd">saveToTextFile</a> (const std::string &amp;file, <a class="el" href="namespacemrpt_1_1math.html#a5c655254dc91e1e5e5b7e43ab7572d85">mrpt::math::TMatrixTextFileFormat</a> fileFormat=MATRIX_FORMAT_ENG, bool appendMRPTHeader=false, const std::string &amp;userHeader=std::string(&quot;&quot;)) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#afbe1610bf64561289bd863acd0cbd972">inMatlabFormat</a> (const size_t decimal_digits=6) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a890e94c9121d34e13e83b2d954c1c1ba">pivot</a> (const size_t row)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIXOUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#acc1dd54c1fd1b602372b63307b6010c8">chol</a> (MATRIXOUT &amp;out) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIX1 , class MATRIX2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">MATRIX1::template <br class="typebreak"/>
<a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_numeric_1_1mrpt__matrix__tag__templ.html">mrpt_matrix_tag_templ</a><br class="typebreak"/>
&lt; typename <br class="typebreak"/>
MATRIX2::mrpt_matrix_tag &gt;<br class="typebreak"/>
::void_type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ab514e50ac3533acc9bf617aa56698273">eigenVectors</a> (MATRIX1 &amp;eVecs, MATRIX2 &amp;eVals) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIX1 , class VECTOR1 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a252aa605d31a55a9729ec235ac7434a9">eigenVectorsVec</a> (MATRIX1 &amp;eVecs, VECTOR1 &amp;eVals) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class VECTOR1 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a53d9f665fd45412c8203dfe1c2d107a8">eigenValues</a> (VECTOR1 &amp;eVals) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a8e061ced620c321e4a37b9f2654f9bf4">setIdentity</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a2e30b52062eb381e4e1fea8a4625f2a1">setIdentity</a> (size_t N)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a89b66229bbe8a7bf659819dc032d0eef">rank</a> (T eps=1e-7) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIXLIKE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a38523ff13e8b5409e13d8c565449d7b0">insertMatrix</a> (const size_t nRow, const size_t nCol, const MATRIXLIKE &amp;in)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATRIXLIKE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a3c5ca35e8704c202a2566479ca053ed2">insertMatrixTranspose</a> (const size_t nRow, const size_t nCol, const MATRIXLIKE &amp;in)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATOUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aee1dc2d3cc007d24f550b8cf967bb3fd">extractMatrix</a> (const size_t first_row, const size_t first_col, MATOUT &amp;outMat) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class MATOUT &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a409541a3e28ceeb87cb94d21de11bc5a">extractMatrix</a> (const size_t first_row, const size_t first_col, const size_t nRows, const size_t nCols, MATOUT &amp;outMat) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class VECLIKE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6bfbd73cf440b4f77ec64f7cc9598117">extractRow</a> (const size_t nRow, VECLIKE &amp;out, const size_t startingCol=0) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class VECLIKE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aee980091b5c55381fb137f303eac17b5">extractCol</a> (const size_t nCol, VECLIKE &amp;out, const size_t startingRow=0) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class VECLIKE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#af20b7736c0e7ba9c770605b541c4fbb0">insertRow</a> (const size_t nRow, VECLIKE &amp;in, const size_t startingCol=0)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class VECLIKE &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a09fc86f1672a492f9a8f31807fc566a9">insertCol</a> (const size_t nCol, VECLIKE &amp;in, const size_t startingRow=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4ed02857a6de93035d993178f42c6a1c">CMatrixTemplateNumeric</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_pose2_d.html">TPose2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4c130d850fd62e8bbf8cbc857c73ef5d">CMatrixTemplateNumeric</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d.html">TPose3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a8f8cf9d7ab4a35c2eb6758c18a54b26a">CMatrixTemplateNumeric</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d_quat.html">TPose3DQuat</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#affbf74aa33fe8505e3ddbc4900929501">CMatrixTemplateNumeric</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_point2_d.html">TPoint2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa2146ce2f259096c84744c1ef4549045">CMatrixTemplateNumeric</a> (const <a class="el" href="structmrpt_1_1math_1_1_t_point3_d.html">TPoint3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a22ca1c2c4eb7dd31ebc5c7dfa1959b74">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">mrpt::poses::CPose2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa642978b3060ff0aaad00cd493b5df76">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">mrpt::poses::CPose3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a7a42f19c289689b9911c5cdc66e11806">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_quat.html">mrpt::poses::CPose3DQuat</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a83990d79465de8a1242e4b28830f5c89">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_point2_d.html">mrpt::poses::CPoint2D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6e4cc7ac6a0e2292a3d7d509e3ce61d7">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1poses_1_1_c_point3_d.html">mrpt::poses::CPoint3D</a> &amp;p)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a21f83cfb41f84affe52e96cbbe294fe3">CMatrixTemplateNumeric</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor, builds a 1x1 matrix.  <a href="#a21f83cfb41f84affe52e96cbbe294fe3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a031a7ef71ab484f73d5b5453021340ab">CMatrixTemplateNumeric</a> (bool, bool, bool)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor, builds a 0x0 matrix, with a signature identical to that of the fixed matrix constructor for uninitialized matrix constructor.  <a href="#a031a7ef71ab484f73d5b5453021340ab"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ac79ab102c403f1e709e5f593be4efcb9">CMatrixTemplateNumeric</a> (size_t row, size_t col)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor.  <a href="#ac79ab102c403f1e709e5f593be4efcb9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a8d899786492dfb4376d4fc16343494ad">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt; T &gt; &amp;m, const size_t cropRowCount, const size_t cropColCount)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy &amp; crop constructor, which copies the given matrix but only up to the given size.  <a href="#a8d899786492dfb4376d4fc16343494ad"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;size_t NROWS, size_t NCOLS&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aab2f4b59dc5e23383d3dea28fe3f3de2">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_fixed_numeric.html">CMatrixFixedNumeric</a>&lt; T, NROWS, NCOLS &gt; &amp;M)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor from a fixed-size matrix.  <a href="#aab2f4b59dc5e23383d3dea28fe3f3de2"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;size_t NROWS, size_t NCOLS&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abe9ffe11e37fe3239c86bf8d85e16ac7">operator=</a> (const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_fixed_numeric.html">CMatrixFixedNumeric</a>&lt; T, NROWS, NCOLS &gt; &amp;M)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy operator from a fixed-size matrix.  <a href="#abe9ffe11e37fe3239c86bf8d85e16ac7"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae7a14e3b969f5fc847e4c775bf9474b3">operator=</a> (const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt; R &gt; &amp;m)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator of other types.  <a href="#ae7a14e3b969f5fc847e4c775bf9474b3"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa30e29135e322f6b3d3cdbd9cdd0e98b">CMatrixTemplateNumeric</a> (const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt; R &gt; &amp;m)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor from a matrix of any type.  <a href="#aa30e29135e322f6b3d3cdbd9cdd0e98b"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename V , size_t N&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abc1d6e120116cc9cc116550ca218a763">CMatrixTemplateNumeric</a> (size_t row, size_t col, V(&amp;theArray)[N])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor from a given size and a C array.  <a href="#abc1d6e120116cc9cc116550ca218a763"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename V &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a29466723d753d671f925018e25a7970a">CMatrixTemplateNumeric</a> (size_t row, size_t col, const V &amp;theVector)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor from a given size and a STL container (std::vector, std::list,.  <a href="#a29466723d753d671f925018e25a7970a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4963de8cc57fd5ab9ec45eb30b8bdd91">~CMatrixTemplateNumeric</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#a4963de8cc57fd5ab9ec45eb30b8bdd91"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename V , size_t N&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a7418325a81a3e2dfb45ae04beba09ded">operator=</a> (V(&amp;theArray)[N])</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator for initializing from a C array (The matrix must be set to the correct size before invoking this asignament).  <a href="#a7418325a81a3e2dfb45ae04beba09ded"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a0cc530ed443b8594c3e72d3fceaded55">setSize</a> (size_t row, size_t col)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Changes the size of matrix, maintaining its previous content as possible and padding with zeros where applicable.  <a href="#a0cc530ed443b8594c3e72d3fceaded55"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a294e7d453f6cb62d42d04650a8b2abe0">resize</a> (size_t row, size_t col)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Changes the size of matrix, maintaining its previous content as possible and padding with zeros where applicable.  <a href="#a294e7d453f6cb62d42d04650a8b2abe0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a9ab4e5d155c83fb1b57f58e888d69858">resize</a> (const <a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_size.html">CMatrixTemplateSize</a> &amp;siz)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method just checks has no effects in this class, but raises an exception if the expected size does not match.  <a href="#a9ab4e5d155c83fb1b57f58e888d69858"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae26cf66a67b40f896d51ffef59e9be3e">laplacian</a> (<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;ret) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the laplacian of the matrix, useful for graph matrixes.  <a href="#ae26cf66a67b40f896d51ffef59e9be3e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ac4871c1857657bc4e87bf084c6c92d38">svd</a> (<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;U, std::vector&lt; T &gt; &amp;W, <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;V) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the SVD (Singular Value Decomposition) of the matrix.  <a href="#ac4871c1857657bc4e87bf084c6c92d38"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a12938a6c67e4d2d3e5fb1c59fe1ad597">largestEigenvector</a> (T resolution=0.01f, size_t maxIterations=6, int *out_Iterations=NULL, float *out_estimatedResolution=NULL) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Efficiently computes only the biggest eigenvector of the matrix using the Power Method, and returns it as a column vector.  <a href="#a12938a6c67e4d2d3e5fb1c59fe1ad597"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a9020e0f6008adae710b2d69784d33716">operator^=</a> (const unsigned int &amp;pow)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">combined power and assignment operator  <a href="#a9020e0f6008adae710b2d69784d33716"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae397822a60691d4c7029193e104bcd14">scalarPow</a> (T s)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scalar power of all elements to a given power, this is diferent of ^ operator.  <a href="#ae397822a60691d4c7029193e104bcd14"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a16d2879347fb4fbd7cc85ec3b04f1cbd">zeros</a> (const size_t row, const size_t col)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set all elements to zero.  <a href="#a16d2879347fb4fbd7cc85ec3b04f1cbd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5b5e11e5af763af00a09157a85a97d49">zeros</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set all elements to zero.  <a href="#a5b5e11e5af763af00a09157a85a97d49"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a180b07cc31179c3277a4136062e10098">ones</a> (const size_t row, const size_t col)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set all elements to one.  <a href="#a180b07cc31179c3277a4136062e10098"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5161b84210edace7fd9f6b0eafb47989">ones</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set all elements to one.  <a href="#a5161b84210edace7fd9f6b0eafb47989"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a3025ad8209c4cd0393e976f2d411b9b7">unit</a> (const size_t row)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build an unit matrix.  <a href="#a3025ad8209c4cd0393e976f2d411b9b7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ad0be51c888fd2fb8f66516618c34b1ef">eye</a> (const size_t size)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build an unit matrix - this is a shortcut for <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abc0412510540232a3a6b5f0e5cacdf72" title="Build an unit matrix.">unit()</a>.  <a href="#ad0be51c888fd2fb8f66516618c34b1ef"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abc0412510540232a3a6b5f0e5cacdf72">unit</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build an unit matrix.  <a href="#abc0412510540232a3a6b5f0e5cacdf72"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6b964efc1513c6108c6b49f10961fa73">eye</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build an unit matrix - this is a shortcut for <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abc0412510540232a3a6b5f0e5cacdf72" title="Build an unit matrix.">unit()</a>.  <a href="#a6b964efc1513c6108c6b49f10961fa73"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a1dc4ee753f8c38583f8f58050857094b">solve</a> (const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;v) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Solve the matrix as linear equations system.  <a href="#a1dc4ee753f8c38583f8f58050857094b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5d330b1acfeede9cd4f972392fc1bd5a">adj</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the adjunt of matrix.  <a href="#a5d330b1acfeede9cd4f972392fc1bd5a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#af843c7b9be3fff276b2894e5b989ab88">cofact</a> (size_t row, size_t col) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the rank of the matrix using a slight variation of Gauss method.  <a href="#af843c7b9be3fff276b2894e5b989ab88"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a5572ccf3e988fae57a795f6b0b23acc5">cond</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the cond.  <a href="#a5572ccf3e988fae57a795f6b0b23acc5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a943a20eb1ad1168647e9f5fa3aff53cd">isDiagonal</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#a943a20eb1ad1168647e9f5fa3aff53cd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abece80095a628239964959a6ec81cae1">isScalar</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#abece80095a628239964959a6ec81cae1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#adadd95e5ecd0baf8e611b792e438c601">isUnit</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#adadd95e5ecd0baf8e611b792e438c601"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a65ca2702f52546417a0020b72084aedf">isNull</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#a65ca2702f52546417a0020b72084aedf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa66cecccacd4eece3886a794b5ce222c">isSymmetric</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#aa66cecccacd4eece3886a794b5ce222c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a508e905863a42c5e06d9e8b400af89e5">isSkewSymmetric</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#a508e905863a42c5e06d9e8b400af89e5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a0bbe69fdf56aed56858e718fe0065d19">isUpperTriangular</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#a0bbe69fdf56aed56858e718fe0065d19"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#afaae1cfcf9aedcfa78a6b0bc8fc9cd7a">isLowerTriangular</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks for matrix type.  <a href="#afaae1cfcf9aedcfa78a6b0bc8fc9cd7a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a0c31d4a7794fdb5bd667920a5a78348a">matrix_floor</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Round towards minus infinity modifying the matrix (by AJOGD @ JAN-2007).  <a href="#a0c31d4a7794fdb5bd667920a5a78348a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#af4855f36e96292c74a8ac17e4d51d65b">matrix_floor</a> (<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;out)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Round towards minus infinity (by AJOGD @ JAN-2007).  <a href="#af4855f36e96292c74a8ac17e4d51d65b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a3614fb428b1dc22b48d8286a9a87d20c">matrix_ceil</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Round towards plus infinity (by AJOGD @ JAN-2007).  <a href="#a3614fb428b1dc22b48d8286a9a87d20c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae571a09506985cdf34f8ad84fa1882e8">find_index_max_value</a> (size_t &amp;umax, size_t &amp;vmax, T &amp;max_val) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Finds the maximum value in the matrix, and returns its position.  <a href="#ae571a09506985cdf34f8ad84fa1882e8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aac6a26c1d8a298ff9206ce0aa5b3d0cb">maximumDiagonal</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Finds the maximum value in the diagonal of the matrix.  <a href="#aac6a26c1d8a298ff9206ce0aa5b3d0cb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a08e91ed43f3722dcd899b3d667b0e313">find_index_min_value</a> (size_t &amp;umin, size_t &amp;vmin, T &amp;min_val) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Finds the minimum value in the matrix, and returns its position.  <a href="#a08e91ed43f3722dcd899b3d667b0e313"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6c23784361f916b1cf50b099849051ff">force_symmetry</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Force symmetry in the matrix (by AJOGD @ JAN-2007).  <a href="#a6c23784361f916b1cf50b099849051ff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa7ffa3e49b6295a156bc2aac2ee2ad51">mean</a> (std::vector&lt; T &gt; &amp;outMeanVector) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes a row with the mean values of each column in the matrix.  <a href="#aa7ffa3e49b6295a156bc2aac2ee2ad51"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a13c99084622898e332de944e699cebe3">meanAndStd</a> (std::vector&lt; T &gt; &amp;outMeanVector, std::vector&lt; T &gt; &amp;outStdVector) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes a row with the mean values of each column in the matrix and the associated vector with the standard deviation of each column.  <a href="#a13c99084622898e332de944e699cebe3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ac5b8645c838001a882bcad9f7cadd596">meanAndStdAll</a> (T &amp;outMean, T &amp;outStd) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the mean and standard deviation of all the elements in the matrix as a whole.  <a href="#ac5b8645c838001a882bcad9f7cadd596"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa6ee6a0e46cc34e36bd2d008a01709fb">asCol</a> (<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;aux) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a2c5528ac97708a185ad3570c365b635b">asRow</a> (<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;aux) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a65cde63d21a1a6fa25a82480180d3795">findElementsPassingMahalanobisThreshold</a> (double stdTimes, std::vector&lt; size_t &gt; &amp;rowIndexes, std::vector&lt; size_t &gt; &amp;colIndexes, bool below=false) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Finds elements whose values are a given number of times above (or below) the mean, in 1D Mahalanobis distance.  <a href="#a65cde63d21a1a6fa25a82480180d3795"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a19f550999469cb5234667723d098315c">sum</a> (size_t firstRow=0, size_t firstCol=0, size_t lastRow=std::numeric_limits&lt; size_t &gt;::max(), size_t lastCol=std::numeric_limits&lt; size_t &gt;::max()) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the sum of a given part of the matrix.  <a href="#a19f550999469cb5234667723d098315c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a0d611ffda31e89c70620b1e0a1648ec1">multiplyByMatrixAndByTransposeNonSymmetric</a> (const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;C, <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;R, bool accumOnOutput=false, bool substractInsteadOfSum=false) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes: R = H * C * H^t , where H is this matrix.  <a href="#a0d611ffda31e89c70620b1e0a1648ec1"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class T&gt;<br/>
 class mrpt::math::CMatrixTemplateNumeric&lt; T &gt;</h3>

<p>This template class extends the class "CMatrixTemplate" with many common operations with numerical matrixes. </p>
<p>The template can be instanced for data types: float, double, long double</p>
<p>The following operators have been implemented: </p>
<table  cellspacing="1" cellpadding="1" width="75%" align="center" border="1">
<tr>
<td align="center" width="30%"><b>Implemented Operators</b> </td><td width="70%"><center><b>Meaning</b></center> </td></tr>
<tr>
<td align="center">x=M(i,j)<br/>
M(i,j)=x </td><td>This () operator is used to access/change the element at i'th row, j'th column. First index is 0. </td></tr>
<tr>
<td align="center">!M </td><td>The matrix inverse M<sup>-1</sup> </td></tr>
<tr>
<td align="center">~M </td><td>The matrix transpose M<sup>T</sup> </td></tr>
<tr>
<td align="center">(M^n) </td><td>Power of a matrix: (M*M*M*...M) n times. Use parenthesis with this operator. Use "scalarPow" for the power of individual elements in the matrix.  </td></tr>
<tr>
<td align="center">M1 = M2 </td><td>Assignment operator: Copy matrix M2 to M1 </td></tr>
<tr>
<td align="center">M1 == M2<br/>
M1 != M2 </td><td>Logical comparison: Returns true or false if all elements are identical. </td></tr>
<tr>
<td align="center">x * M </td><td>Scalar multiplication </td></tr>
<tr>
<td align="center">M1 * M2 </td><td>Matrix multiplication, with the usual mathematical meaning </td></tr>
<tr>
<td align="center">M1 + M2<br/>
M1 – M2 </td><td>Matrixes addition and substraction. </td></tr>
<tr>
<td align="center">M / x </td><td>Scalar division </td></tr>
<tr>
<td align="center">M1 / M2 </td><td>Equivalent to (M1 * M2<sup>-1</sup>) </td></tr>
<tr>
<td align="center">stream &lt;&lt; M; </td><td>Write to a binary CStream, since this class is CSerializable </td></tr>
<tr>
<td align="center">stream &gt;&gt; M; </td><td>Read from a binary CStream, since this class is CSerializable </td></tr>
</table>
<p>See also this useful methods:</p>
<ul>
<li>SAVE_MATRIX <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html" title="This template class provides the basic functionality for a general 2D any-size, resizable...">CMatrixTemplate</a> </dd></dl>
</li>
</ul>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00111">111</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="ada4f2838b3584b5be6d0030a3f59050a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::BASE" ref="ada4f2838b3584b5be6d0030a3f59050a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt;T&gt; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">BASE</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00114">114</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2515e2052403254f868d01248809a33a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::mrpt_autotype" ref="a2515e2052403254f868d01248809a33a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt;T&gt; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00115">115</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa9f47e299371805ab901b4a37a899f1a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::mrpt_matrix_tag" ref="aa9f47e299371805ab901b4a37a899f1a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa9f47e299371805ab901b4a37a899f1a">mrpt_matrix_tag</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00117">117</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a86ba63fb91c4e04ab880dce1130113b1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::dummy_enum" ref="a86ba63fb91c4e04ab880dce1130113b1" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a86ba63fb91c4e04ab880dce1130113b1">mrpt::math::CMatrixTemplateNumeric::dummy_enum</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a86ba63fb91c4e04ab880dce1130113b1a861ead41eeb9aa536f902dbff7bda73e"></a><!-- doxytag: member="mrpt_matrix_type_ncols" ref="a86ba63fb91c4e04ab880dce1130113b1a861ead41eeb9aa536f902dbff7bda73e" args="" -->mrpt_matrix_type_ncols</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a86ba63fb91c4e04ab880dce1130113b1a986ad3f224967a2c10c2033a660845b5"></a><!-- doxytag: member="mrpt_matrix_type_nrows" ref="a86ba63fb91c4e04ab880dce1130113b1a986ad3f224967a2c10c2033a660845b5" args="" -->mrpt_matrix_type_nrows</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00117">117</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a4ed02857a6de93035d993178f42c6a1c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a4ed02857a6de93035d993178f42c6a1c" args="(const TPose2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_pose2_d.html">TPose2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00122">122</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4c130d850fd62e8bbf8cbc857c73ef5d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a4c130d850fd62e8bbf8cbc857c73ef5d" args="(const TPose3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d.html">TPose3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00123">123</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8f8cf9d7ab4a35c2eb6758c18a54b26a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a8f8cf9d7ab4a35c2eb6758c18a54b26a" args="(const TPose3DQuat &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d_quat.html">TPose3DQuat</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00124">124</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="affbf74aa33fe8505e3ddbc4900929501"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="affbf74aa33fe8505e3ddbc4900929501" args="(const TPoint2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_point2_d.html">TPoint2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00125">125</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa2146ce2f259096c84744c1ef4549045"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="aa2146ce2f259096c84744c1ef4549045" args="(const TPoint3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_point3_d.html">TPoint3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00126">126</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a22ca1c2c4eb7dd31ebc5c7dfa1959b74"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a22ca1c2c4eb7dd31ebc5c7dfa1959b74" args="(const mrpt::poses::CPose2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">mrpt::poses::CPose2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00128">128</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa642978b3060ff0aaad00cd493b5df76"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="aa642978b3060ff0aaad00cd493b5df76" args="(const mrpt::poses::CPose3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">mrpt::poses::CPose3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00129">129</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7a42f19c289689b9911c5cdc66e11806"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a7a42f19c289689b9911c5cdc66e11806" args="(const mrpt::poses::CPose3DQuat &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_quat.html">mrpt::poses::CPose3DQuat</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00130">130</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a83990d79465de8a1242e4b28830f5c89"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a83990d79465de8a1242e4b28830f5c89" args="(const mrpt::poses::CPoint2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_point2_d.html">mrpt::poses::CPoint2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00131">131</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6e4cc7ac6a0e2292a3d7d509e3ce61d7"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a6e4cc7ac6a0e2292a3d7d509e3ce61d7" args="(const mrpt::poses::CPoint3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_point3_d.html">mrpt::poses::CPoint3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00132">132</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a21f83cfb41f84affe52e96cbbe294fe3"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a21f83cfb41f84affe52e96cbbe294fe3" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor, builds a 1x1 matrix. </p>

</div>
</div>
<a class="anchor" id="a031a7ef71ab484f73d5b5453021340ab"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a031a7ef71ab484f73d5b5453021340ab" args="(bool, bool, bool)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor, builds a 0x0 matrix, with a signature identical to that of the fixed matrix constructor for uninitialized matrix constructor. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00138">138</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac79ab102c403f1e709e5f593be4efcb9"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="ac79ab102c403f1e709e5f593be4efcb9" args="(size_t row, size_t col)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor. </p>

</div>
</div>
<a class="anchor" id="a8d899786492dfb4376d4fc16343494ad"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a8d899786492dfb4376d4fc16343494ad" args="(const CMatrixTemplate&lt; T &gt; &amp;m, const size_t cropRowCount, const size_t cropColCount)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>cropRowCount</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>cropColCount</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy &amp; crop constructor, which copies the given matrix but only up to the given size. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00146">146</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aab2f4b59dc5e23383d3dea28fe3f3de2"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="aab2f4b59dc5e23383d3dea28fe3f3de2" args="(const CMatrixFixedNumeric&lt; T, NROWS, NCOLS &gt; &amp;M)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;size_t NROWS, size_t NCOLS&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_fixed_numeric.html">CMatrixFixedNumeric</a>&lt; T, NROWS, NCOLS &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>M</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy constructor from a fixed-size matrix. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00151">151</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa30e29135e322f6b3d3cdbd9cdd0e98b"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="aa30e29135e322f6b3d3cdbd9cdd0e98b" args="(const CMatrixTemplate&lt; R &gt; &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class R &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt; R &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy constructor from a matrix of any type. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00176">176</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="abc1d6e120116cc9cc116550ca218a763"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="abc1d6e120116cc9cc116550ca218a763" args="(size_t row, size_t col, V(&amp;theArray)[N])" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename V , size_t N&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>col</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">V(&amp;)&nbsp;</td>
          <td class="paramname"> <em>theArray</em>[N]</td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor from a given size and a C array. </p>
<p>The array length must match cols x row. </p>
<div class="fragment"><pre class="fragment">  <span class="keyword">const</span> <span class="keywordtype">double</span> numbers[] = {
    1,2,3,
    4,5,6 };
         <a class="code" href="namespacemrpt_1_1math.html#a3814c2b868f059d6a7ab0d8ecd2311d6" title="Declares a matrix of double numbers (non serializable).">CMatrixDouble</a>   M(3,2, numbers);
</pre></div> 
<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00189">189</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a29466723d753d671f925018e25a7970a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::CMatrixTemplateNumeric" ref="a29466723d753d671f925018e25a7970a" args="(size_t row, size_t col, const V &amp;theVector)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename V &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>col</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const V &amp;&nbsp;</td>
          <td class="paramname"> <em>theVector</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor from a given size and a STL container (std::vector, std::list,. </p>
<p>..) with the initial values. The vector length must match cols x row. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00195">195</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4963de8cc57fd5ab9ec45eb30b8bdd91"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::~CMatrixTemplateNumeric" ref="a4963de8cc57fd5ab9ec45eb30b8bdd91" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::~<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a> </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00200">200</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a4e653fe5a45637c9b8f4c891393e466c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::_A" ref="a4e653fe5a45637c9b8f4c891393e466c" args="(const size_t n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::_A </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Access the n'th element viewing the matrix as an array, with n=row*COLS+col </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a31026bdb03a7b771f46c880f40a4aaa7"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::_A" ref="a31026bdb03a7b771f46c880f40a4aaa7" args="(const size_t n) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::_A </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Access the n'th element viewing the matrix as an array, with n=row*COLS+col </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa0ae37ac9e00d97fdfb5f5313bf65132"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::_E" ref="aa0ae37ac9e00d97fdfb5f5313bf65132" args="(const size_t row, const size_t col)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::_E </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Alternative access to element (i,j) with first index being (1,1) instead of (0,0) </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6f12ca075d73e77807d26819706a78e9"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::_E" ref="a6f12ca075d73e77807d26819706a78e9" args="(const size_t row, const size_t col) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::_E </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Alternative access to element (i,j) with first index being (1,1) instead of (0,0) </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3657d6a311697b2d83df7cfd013a451a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::Abs" ref="a3657d6a311697b2d83df7cfd013a451a" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::Abs </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a244f1fb19ef9e52ff2f4843ceb992251"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::add_AAt" ref="a244f1fb19ef9e52ff2f4843ceb992251" args="(const OTHERMATRIX &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::add_AAt </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>this += A + A<sup>T</sup> </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8216ad7977aa3ccb562ce6b227ef4d12"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::add_Ac" ref="a8216ad7977aa3ccb562ce6b227ef4d12" args="(const OTHERMATRIX &amp;m, const T c)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::add_Ac </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab06b00ecab28e8a5fee890e2c6ac7a75"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::add_At" ref="ab06b00ecab28e8a5fee890e2c6ac7a75" args="(const OTHERMATRIX &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::add_At </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5d330b1acfeede9cd4f972392fc1bd5a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::adj" ref="a5d330b1acfeede9cd4f972392fc1bd5a" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt;T&gt; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::adj </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the adjunt of matrix. </p>

</div>
</div>
<a class="anchor" id="a2bf6749414a1627592b9c772e2e6b522"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::adjustRange" ref="a2bf6749414a1627592b9c772e2e6b522" args="(const T min_val, const T max_val)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::adjustRange </td>
          <td>(</td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>min_val</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>max_val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>max_val</em>&nbsp;</td><td>Normalize all the elements such as they are in the given range </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a18b19ae8a2cf11cb761c20cd52809437"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::applyToAllElements" ref="a18b19ae8a2cf11cb761c20cd52809437" args="(T(*function)(T))" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class F &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::applyToAllElements </td>
          <td>(</td>
          <td class="paramtype">T(*)(T)&nbsp;</td>
          <td class="paramname"> <em>function</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Applies a generic operation "T func(T val)" to all the elements. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa6ee6a0e46cc34e36bd2d008a01709fb"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::asCol" ref="aa6ee6a0e46cc34e36bd2d008a01709fb" args="(CMatrixTemplateNumeric&lt; T &gt; &amp;aux) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::asCol </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>aux</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a2c5528ac97708a185ad3570c365b635b"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::asRow" ref="a2c5528ac97708a185ad3570c365b635b" args="(CMatrixTemplateNumeric&lt; T &gt; &amp;aux) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::asRow </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>aux</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="acb732e2b0d681794a1b66fb183e4d072"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::assignMatrix" ref="acb732e2b0d681794a1b66fb183e4d072" args="(const OTHERMATRIX &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::assignMatrix </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Assignment of a matrix from any other kind of matrix </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3d046768eccee95f3670e5a0dbc96195"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::assignMatrixTransposed" ref="a3d046768eccee95f3670e5a0dbc96195" args="(const OTHERMATRIX &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::assignMatrixTransposed </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Assignment of a matrix to another one (of any type!), transposed. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="acc1dd54c1fd1b602372b63307b6010c8"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::chol" ref="acc1dd54c1fd1b602372b63307b6010c8" args="(MATRIXOUT &amp;out) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIXOUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::chol </td>
          <td>(</td>
          <td class="paramtype">MATRIXOUT &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Cholesky factorization: in = out' * out </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>True on success, false on singular matrix </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd>mrpt::math::chol </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="af843c7b9be3fff276b2894e5b989ab88"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::cofact" ref="af843c7b9be3fff276b2894e5b989ab88" args="(size_t row, size_t col) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::cofact </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the rank of the matrix using a slight variation of Gauss method. </p>
<p>Computes the cofact. </p>

</div>
</div>
<a class="anchor" id="a5572ccf3e988fae57a795f6b0b23acc5"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::cond" ref="a5572ccf3e988fae57a795f6b0b23acc5" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::cond </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the cond. </p>

</div>
</div>
<a class="anchor" id="a66c7107302bbe2845f29e62815b6dd2e"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::countCommonElements" ref="a66c7107302bbe2845f29e62815b6dd2e" args="(const CONTAINER2 &amp;b) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class CONTAINER2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::countCommonElements </td>
          <td>(</td>
          <td class="paramtype">const CONTAINER2 &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7d1a7ab34ffee750c631c18e18fc57c3"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::countNonZero" ref="a7d1a7ab34ffee750c631c18e18fc57c3" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::countNonZero </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Count how many elements in a container are non-zero. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a670077806449d0e9e31de70e1230dbd9"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::cumsum" ref="a670077806449d0e9e31de70e1230dbd9" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class CONTAINEROUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">CONTAINEROUT <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::cumsum </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Cumsum of all the elements, returning a container of the given type, for example: CMatrixDouble m = <a class="el" href="namespacemrpt_1_1math.html#a56cf8da4f694023de52be20605961e0e">mat.cumsum&lt;CMatrixDouble&gt;()</a>; </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1d029ccb06f4789c676b17a84d079cd5"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::cumsum" ref="a1d029ccb06f4789c676b17a84d079cd5" args="(CONTAINEROUT &amp;out) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class CONTAINEROUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::cumsum </td>
          <td>(</td>
          <td class="paramtype">CONTAINEROUT &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Cumsum of all the elements, saving in an output container </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aeebfcb3de8b44ccdff5befffc98218fd"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::det" ref="aeebfcb3de8b44ccdff5befffc98218fd" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::det </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>&lt; Returns the determinant of the matrix </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="base_2include_2mrpt_2math_2utils_8h_source.html#l01072">mrpt::math::productIntegralTwoGaussians()</a>.</p>

</div>
</div>
<a class="anchor" id="a53d9f665fd45412c8203dfe1c2d107a8"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::eigenValues" ref="a53d9f665fd45412c8203dfe1c2d107a8" args="(VECTOR1 &amp;eVals) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class VECTOR1 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::eigenValues </td>
          <td>(</td>
          <td class="paramtype">VECTOR1 &amp;&nbsp;</td>
          <td class="paramname"> <em>eVals</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the eigenvalues of the matrix in an ordered vector. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ab514e50ac3533acc9bf617aa56698273">eigenVectors</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab514e50ac3533acc9bf617aa56698273"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::eigenVectors" ref="ab514e50ac3533acc9bf617aa56698273" args="(MATRIX1 &amp;eVecs, MATRIX2 &amp;eVals) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIX1 , class MATRIX2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">MATRIX1 ::template <a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_numeric_1_1mrpt__matrix__tag__templ.html">mrpt_matrix_tag_templ</a>&lt;typename MATRIX2 ::<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#aa9f47e299371805ab901b4a37a899f1a">mrpt_matrix_tag</a>&gt;::void_type <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::eigenVectors </td>
          <td>(</td>
          <td class="paramtype">MATRIX1 &amp;&nbsp;</td>
          <td class="paramname"> <em>eVecs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MATRIX2 &amp;&nbsp;</td>
          <td class="paramname"> <em>eVals</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Eigenvalues and eigenvector of symmetric matrix: M = eVecs * eVals * eVecs<sup>T</sup>, with eigenvectors in columns in eVecs, eigenvalues in ascending order in diagonal of eVals </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a252aa605d31a55a9729ec235ac7434a9">eigenVectorsVec</a>, <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a53d9f665fd45412c8203dfe1c2d107a8">eigenValues</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_enhanced_meta_file_8h_source.html#l00203">mrpt::utils::CEnhancedMetaFile::ellipseGaussian()</a>, and <a class="el" href="_c_canvas_8h_source.html#l00289">mrpt::utils::CCanvas::ellipseGaussian()</a>.</p>

</div>
</div>
<a class="anchor" id="a252aa605d31a55a9729ec235ac7434a9"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::eigenVectorsVec" ref="a252aa605d31a55a9729ec235ac7434a9" args="(MATRIX1 &amp;eVecs, VECTOR1 &amp;eVals) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIX1 , class VECTOR1 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::eigenVectorsVec </td>
          <td>(</td>
          <td class="paramtype">MATRIX1 &amp;&nbsp;</td>
          <td class="paramname"> <em>eVecs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">VECTOR1 &amp;&nbsp;</td>
          <td class="paramname"> <em>eVals</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Like eigenVectors, but eigenvalues are returned in a vector instead of a matrix's diagonal. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ab514e50ac3533acc9bf617aa56698273">eigenVectors</a>,<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a53d9f665fd45412c8203dfe1c2d107a8">eigenValues</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1cc151c66c115ca8ce2e073363adafbd"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::empty" ref="a1cc151c66c115ca8ce2e073363adafbd" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::empty </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5993df66ca4c8503457b4bad0a2fc219"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::Exp" ref="a5993df66ca4c8503457b4bad0a2fc219" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::Exp </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aee980091b5c55381fb137f303eac17b5"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::extractCol" ref="aee980091b5c55381fb137f303eac17b5" args="(const size_t nCol, VECLIKE &amp;out, const size_t startingRow=0) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class VECLIKE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::extractCol </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">VECLIKE &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>startingRow</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a409541a3e28ceeb87cb94d21de11bc5a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::extractMatrix" ref="a409541a3e28ceeb87cb94d21de11bc5a" args="(const size_t first_row, const size_t first_col, const size_t nRows, const size_t nCols, MATOUT &amp;outMat) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATOUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::extractMatrix </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>first_row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>first_col</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nRows</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nCols</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MATOUT &amp;&nbsp;</td>
          <td class="paramname"> <em>outMat</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Extract a sub matrix of the given size from this matrix. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aee1dc2d3cc007d24f550b8cf967bb3fd"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::extractMatrix" ref="aee1dc2d3cc007d24f550b8cf967bb3fd" args="(const size_t first_row, const size_t first_col, MATOUT &amp;outMat) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATOUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::extractMatrix </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>first_row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>first_col</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MATOUT &amp;&nbsp;</td>
          <td class="paramname"> <em>outMat</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Extract a sub matrix from this matrix (the size of the output matrix upon call determines the size of the submatrix to extract). </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00193">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::getLandmarkCov()</a>, and <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a6bfbd73cf440b4f77ec64f7cc9598117"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::extractRow" ref="a6bfbd73cf440b4f77ec64f7cc9598117" args="(const size_t nRow, VECLIKE &amp;out, const size_t startingCol=0) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class VECLIKE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::extractRow </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">VECLIKE &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>startingCol</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6b964efc1513c6108c6b49f10961fa73"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::eye" ref="a6b964efc1513c6108c6b49f10961fa73" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::eye </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build an unit matrix - this is a shortcut for <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abc0412510540232a3a6b5f0e5cacdf72" title="Build an unit matrix.">unit()</a>. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00298">298</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad0be51c888fd2fb8f66516618c34b1ef"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::eye" ref="ad0be51c888fd2fb8f66516618c34b1ef" args="(const size_t size)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::eye </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>size</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build an unit matrix - this is a shortcut for <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abc0412510540232a3a6b5f0e5cacdf72" title="Build an unit matrix.">unit()</a>. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00291">291</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae6be93ed0dee68dd49b6d60da434acf1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::fastLeftDivideSquare" ref="ae6be93ed0dee68dd49b6d60da434acf1" args="(MAT2 &amp;A)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename MAT2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::fastLeftDivideSquare </td>
          <td>(</td>
          <td class="paramtype">MAT2 &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Matrix left divide: this = A<sup>-1</sup> &amp;#183; this (A must be a square matrix, and will be modified on return). </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a89cc651ddffe002003151e09cda16260">leftDivideSquare</a>,<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6447082956a66a9035e792fb5a6ea85c">fastRightDivideSquare</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6447082956a66a9035e792fb5a6ea85c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::fastRightDivideSquare" ref="a6447082956a66a9035e792fb5a6ea85c" args="(MAT2 &amp;B)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename MAT2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::fastRightDivideSquare </td>
          <td>(</td>
          <td class="paramtype">MAT2 &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Matrix right divide: this = this &amp;#183; B<sup>-1</sup> (B must be a square matrix, and will be modified on return). </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a89cc651ddffe002003151e09cda16260">leftDivideSquare</a>,<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6447082956a66a9035e792fb5a6ea85c">fastRightDivideSquare</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5a36117d7d26206a9b240342058b49df"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::fill" ref="a5a36117d7d26206a9b240342058b49df" args="(const T &amp;val)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::fill </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&nbsp;</td>
          <td class="paramname"> <em>val</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Fill all the elements with a given value </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00493">mrpt::math::detail::VicinityTraits&lt; CMatrixTemplateNumeric&lt; T &gt; &gt;::initialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ae571a09506985cdf34f8ad84fa1882e8"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::find_index_max_value" ref="ae571a09506985cdf34f8ad84fa1882e8" args="(size_t &amp;umax, size_t &amp;vmax, T &amp;max_val) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::find_index_max_value </td>
          <td>(</td>
          <td class="paramtype">size_t &amp;&nbsp;</td>
          <td class="paramname"> <em>umax</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t &amp;&nbsp;</td>
          <td class="paramname"> <em>vmax</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>max_val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Finds the maximum value in the matrix, and returns its position. </p>
<p>(by AJOGD @ JAN-2007) </p>

</div>
</div>
<a class="anchor" id="a08e91ed43f3722dcd899b3d667b0e313"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::find_index_min_value" ref="a08e91ed43f3722dcd899b3d667b0e313" args="(size_t &amp;umin, size_t &amp;vmin, T &amp;min_val) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::find_index_min_value </td>
          <td>(</td>
          <td class="paramtype">size_t &amp;&nbsp;</td>
          <td class="paramname"> <em>umin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t &amp;&nbsp;</td>
          <td class="paramname"> <em>vmin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>min_val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Finds the minimum value in the matrix, and returns its position. </p>
<p>(by AJOGD @ JAN-2007) </p>

</div>
</div>
<a class="anchor" id="a65cde63d21a1a6fa25a82480180d3795"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::findElementsPassingMahalanobisThreshold" ref="a65cde63d21a1a6fa25a82480180d3795" args="(double stdTimes, std::vector&lt; size_t &gt; &amp;rowIndexes, std::vector&lt; size_t &gt; &amp;colIndexes, bool below=false) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::findElementsPassingMahalanobisThreshold </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>stdTimes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; size_t &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>rowIndexes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; size_t &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>colIndexes</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>below</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Finds elements whose values are a given number of times above (or below) the mean, in 1D Mahalanobis distance. </p>
<p>This returns two lists with the "row" and "column" indexes (i,j) of those elements m[i][j] such as: m[i][j] &gt; mean(matrix) + stdTimes·std(matrix) The elements below the threshold mean(matrix) - stdTimes·std(matrix) can also be obtained setting "below" to "true". </p>

</div>
</div>
<a class="anchor" id="a6c23784361f916b1cf50b099849051ff"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::force_symmetry" ref="a6c23784361f916b1cf50b099849051ff" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::force_symmetry </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Force symmetry in the matrix (by AJOGD @ JAN-2007). </p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="af947dcc1430aee08a642f15475ecc2b1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::histogram" ref="af947dcc1430aee08a642f15475ecc2b1" args="(double limit_min, double limit_max, size_t number_bins, bool do_normalization=false) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;double&gt; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::histogram </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>limit_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>limit_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>number_bins</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>do_normalization</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="afbe1610bf64561289bd863acd0cbd972"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::inMatlabFormat" ref="afbe1610bf64561289bd863acd0cbd972" args="(const size_t decimal_digits=6) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::string <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::inMatlabFormat </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>decimal_digits</em> = <code>6</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return a string representation of the matrix in the form: "[m11 m12 m13...;m21 m22 m23...]", compatible with MATLAB matrices. </p>

<p>Reimplemented from <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html#a186063227404d894eb121b0626091176">mrpt::math::CMatrixTemplate&lt; T &gt;</a>.</p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a09fc86f1672a492f9a8f31807fc566a9"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::insertCol" ref="a09fc86f1672a492f9a8f31807fc566a9" args="(const size_t nCol, VECLIKE &amp;in, const size_t startingRow=0)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class VECLIKE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::insertCol </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">VECLIKE &amp;&nbsp;</td>
          <td class="paramname"> <em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>startingRow</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a38523ff13e8b5409e13d8c565449d7b0"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::insertMatrix" ref="a38523ff13e8b5409e13d8c565449d7b0" args="(const size_t nRow, const size_t nCol, const MATRIXLIKE &amp;in)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIXLIKE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::insertMatrix </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MATRIXLIKE &amp;&nbsp;</td>
          <td class="paramname"> <em>in</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Inserts a matrix into this matrix, at the position (nRow,nCol). An exception is raised in the inserted matrix does not fit. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a3c5ca35e8704c202a2566479ca053ed2"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::insertMatrixTranspose" ref="a3c5ca35e8704c202a2566479ca053ed2" args="(const size_t nRow, const size_t nCol, const MATRIXLIKE &amp;in)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIXLIKE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::insertMatrixTranspose </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nCol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MATRIXLIKE &amp;&nbsp;</td>
          <td class="paramname"> <em>in</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Inserts the transpose of a matrix into this matrix, at the position (nRow,nCol). An exception is raised in the inserted matrix does not fit. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="af20b7736c0e7ba9c770605b541c4fbb0"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::insertRow" ref="af20b7736c0e7ba9c770605b541c4fbb0" args="(const size_t nRow, VECLIKE &amp;in, const size_t startingCol=0)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class VECLIKE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::insertRow </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>nRow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">VECLIKE &amp;&nbsp;</td>
          <td class="paramname"> <em>in</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>startingCol</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00088">mrpt::math::CLevenbergMarquardtTempl&lt; VECTORTYPE, USERPARAM &gt;::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="a4a312effa6067d6889a185fe4befef55"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::inv" ref="a4a312effa6067d6889a185fe4befef55" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::inv </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>&lt; mrpt_autotype out = inv(this) </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a19ed7dbeffb957df2ee64a556e6d5fbe"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::inv" ref="a19ed7dbeffb957df2ee64a556e6d5fbe" args="(MATRIXOUT &amp;out) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIXOUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::inv </td>
          <td>(</td>
          <td class="paramtype">MATRIXOUT &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>&lt; out = inv(this) </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a7e5a2259e1ca39eb6e2cf249d5335d35"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::inv_fast" ref="a7e5a2259e1ca39eb6e2cf249d5335d35" args="(MATRIXOUT &amp;out)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIXOUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::inv_fast </td>
          <td>(</td>
          <td class="paramtype">MATRIXOUT &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>out = inv(this), overwriting contents of this </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00088">mrpt::math::CLevenbergMarquardtTempl&lt; VECTORTYPE, USERPARAM &gt;::execute()</a>, <a class="el" href="base_2include_2mrpt_2math_2utils_8h_source.html#l00837">mrpt::math::leastSquareLinearFit()</a>, and <a class="el" href="base_2include_2mrpt_2math_2utils_8h_source.html#l01072">mrpt::math::productIntegralTwoGaussians()</a>.</p>

</div>
</div>
<a class="anchor" id="a943a20eb1ad1168647e9f5fa3aff53cd"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isDiagonal" ref="a943a20eb1ad1168647e9f5fa3aff53cd" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isDiagonal </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="afaae1cfcf9aedcfa78a6b0bc8fc9cd7a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isLowerTriangular" ref="afaae1cfcf9aedcfa78a6b0bc8fc9cd7a" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isLowerTriangular </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="a65ca2702f52546417a0020b72084aedf"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isNull" ref="a65ca2702f52546417a0020b72084aedf" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isNull </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="abece80095a628239964959a6ec81cae1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isScalar" ref="abece80095a628239964959a6ec81cae1" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isScalar </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="a73751fb8cdf0ad2099d2eb8d37e9ea57"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isSingular" ref="a73751fb8cdf0ad2099d2eb8d37e9ea57" args="(const T epsilon=0) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isSingular </td>
          <td>(</td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>epsilon</em> = <code>0</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Checks for the absolute value of the determinant of the matrix being equal or below a given threshold (by default, exactly zero). </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a508e905863a42c5e06d9e8b400af89e5"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isSkewSymmetric" ref="a508e905863a42c5e06d9e8b400af89e5" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isSkewSymmetric </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="ae13602099058fef027d2d1dca90961d1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isSquare" ref="ae13602099058fef027d2d1dca90961d1" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isSquare </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="af0286c890c15c4b3ac35b5990cb33b6b"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::IsSquare" ref="af0286c890c15c4b3ac35b5990cb33b6b" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::IsSquare </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa66cecccacd4eece3886a794b5ce222c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isSymmetric" ref="aa66cecccacd4eece3886a794b5ce222c" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isSymmetric </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="adadd95e5ecd0baf8e611b792e438c601"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isUnit" ref="adadd95e5ecd0baf8e611b792e438c601" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isUnit </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="a0bbe69fdf56aed56858e718fe0065d19"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::isUpperTriangular" ref="a0bbe69fdf56aed56858e718fe0065d19" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::isUpperTriangular </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks for matrix type. </p>

</div>
</div>
<a class="anchor" id="ae26cf66a67b40f896d51ffef59e9be3e"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::laplacian" ref="ae26cf66a67b40f896d51ffef59e9be3e" args="(CMatrixTemplateNumeric&lt; T &gt; &amp;ret) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::laplacian </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>ret</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the laplacian of the matrix, useful for graph matrixes. </p>

</div>
</div>
<a class="anchor" id="a12938a6c67e4d2d3e5fb1c59fe1ad597"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::largestEigenvector" ref="a12938a6c67e4d2d3e5fb1c59fe1ad597" args="(T resolution=0.01f, size_t maxIterations=6, int *out_Iterations=NULL, float *out_estimatedResolution=NULL) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt;T&gt; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::largestEigenvector </td>
          <td>(</td>
          <td class="paramtype">T&nbsp;</td>
          <td class="paramname"> <em>resolution</em> = <code>0.01f</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>maxIterations</em> = <code>6</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>out_Iterations</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float *&nbsp;</td>
          <td class="paramname"> <em>out_estimatedResolution</em> = <code>NULL</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Efficiently computes only the biggest eigenvector of the matrix using the Power Method, and returns it as a column vector. </p>
<p>The computation time for this method, in a Pentium 4 1.4Ghz is:<br/>
 T = 7.0867e-008*n<sup>2</sup> + 1.9191e-005*n + 0.0017494 seconds <br/>
 where N is the matrix size. </p>

</div>
</div>
<a class="anchor" id="a89cc651ddffe002003151e09cda16260"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::leftDivideSquare" ref="a89cc651ddffe002003151e09cda16260" args="(const MAT2 &amp;A, MAT3 &amp;RES) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT2 , class MAT3 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::leftDivideSquare </td>
          <td>(</td>
          <td class="paramtype">const MAT2 &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MAT3 &amp;&nbsp;</td>
          <td class="paramname"> <em>RES</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Matrix left divide: RES = A<sup>-1</sup> &amp;#183; this (A must be a square matrix). </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a71022ba15b56c2cfcbdc7ad1f6c9f53e">rightDivideSquare</a>,<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ae6be93ed0dee68dd49b6d60da434acf1">fastLeftDivideSquare</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac26009f5ddc2f756fa2fdf70ead47907"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::Log" ref="ac26009f5ddc2f756fa2fdf70ead47907" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::Log </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3614fb428b1dc22b48d8286a9a87d20c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::matrix_ceil" ref="a3614fb428b1dc22b48d8286a9a87d20c" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::matrix_ceil </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Round towards plus infinity (by AJOGD @ JAN-2007). </p>

</div>
</div>
<a class="anchor" id="af4855f36e96292c74a8ac17e4d51d65b"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::matrix_floor" ref="af4855f36e96292c74a8ac17e4d51d65b" args="(CMatrixTemplateNumeric&lt; T &gt; &amp;out)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::matrix_floor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Round towards minus infinity (by AJOGD @ JAN-2007). </p>

</div>
</div>
<a class="anchor" id="a0c31d4a7794fdb5bd667920a5a78348a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::matrix_floor" ref="a0c31d4a7794fdb5bd667920a5a78348a" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::matrix_floor </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Round towards minus infinity modifying the matrix (by AJOGD @ JAN-2007). </p>

</div>
</div>
<a class="anchor" id="a4d7fbeb0f4e553226f76a85f43cbcb2d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::maximum" ref="a4d7fbeb0f4e553226f76a85f43cbcb2d" args="(size_t *maxIndex=NULL) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::maximum </td>
          <td>(</td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>maxIndex</em> = <code>NULL</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Finds the maximum value (and the corresponding zero-based index). </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aac6a26c1d8a298ff9206ce0aa5b3d0cb"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::maximumDiagonal" ref="aac6a26c1d8a298ff9206ce0aa5b3d0cb" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::maximumDiagonal </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Finds the maximum value in the diagonal of the matrix. </p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00088">mrpt::math::CLevenbergMarquardtTempl&lt; VECTORTYPE, USERPARAM &gt;::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="aa7ffa3e49b6295a156bc2aac2ee2ad51"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::mean" ref="aa7ffa3e49b6295a156bc2aac2ee2ad51" args="(std::vector&lt; T &gt; &amp;outMeanVector) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::mean </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>outMeanVector</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes a row with the mean values of each column in the matrix. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ac5b8645c838001a882bcad9f7cadd596" title="Computes the mean and standard deviation of all the elements in the matrix as a whole...">meanAndStdAll</a> </dd></dl>

</div>
</div>
<a class="anchor" id="abdf1e8c7783dd780b8b3ca43b582294f"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::mean" ref="abdf1e8c7783dd780b8b3ca43b582294f" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::mean </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the mean of the container (for matrices, as if it were a vector with all its elements). </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a13c99084622898e332de944e699cebe3"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::meanAndStd" ref="a13c99084622898e332de944e699cebe3" args="(std::vector&lt; T &gt; &amp;outMeanVector, std::vector&lt; T &gt; &amp;outStdVector) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::meanAndStd </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>outMeanVector</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>outStdVector</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes a row with the mean values of each column in the matrix and the associated vector with the standard deviation of each column. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abdf1e8c7783dd780b8b3ca43b582294f">mean</a>,<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#ac5b8645c838001a882bcad9f7cadd596" title="Computes the mean and standard deviation of all the elements in the matrix as a whole...">meanAndStdAll</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a4a7e2253ab6984561e3ff470f766cdd0"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::meanAndStd" ref="a4a7e2253ab6984561e3ff470f766cdd0" args="(double &amp;out_mean, double &amp;out_std, bool unbiased=true)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::meanAndStd </td>
          <td>(</td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>out_mean</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>out_std</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>unbiased</em> = <code>true</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the mean and standard deviation of all the elements in the container. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac5b8645c838001a882bcad9f7cadd596"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::meanAndStdAll" ref="ac5b8645c838001a882bcad9f7cadd596" args="(T &amp;outMean, T &amp;outStd) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::meanAndStdAll </td>
          <td>(</td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>outMean</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>outStd</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the mean and standard deviation of all the elements in the matrix as a whole. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#abdf1e8c7783dd780b8b3ca43b582294f">mean</a>,<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a4a7e2253ab6984561e3ff470f766cdd0">meanAndStd</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a319a612b498b2b88da038af94c89e81e"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::minimum" ref="a319a612b498b2b88da038af94c89e81e" args="(size_t *minIndex=NULL) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::minimum </td>
          <td>(</td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>minIndex</em> = <code>NULL</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Finds the minimum value (and the corresponding zero-based index). </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a882c07b0dad9bcd24440e81b671fe43c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::minimum_maximum" ref="a882c07b0dad9bcd24440e81b671fe43c" args="(T &amp;out_min, T &amp;out_max, size_t *minIndex=NULL, size_t *maxIndex=NULL) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::minimum_maximum </td>
          <td>(</td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>out_min</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>out_max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>minIndex</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>maxIndex</em> = <code>NULL</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Minimum and maximum of a vector at once </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a387842e8fcb5aff2bd86442de8dcaf48"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply" ref="a387842e8fcb5aff2bd86442de8dcaf48" args="(const MATRIX1 &amp;A, const MATRIX2 &amp;B)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIX1 , class MATRIX2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply </td>
          <td>(</td>
          <td class="paramtype">const MATRIX1 &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MATRIX2 &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>B</em>&nbsp;</td><td>this = A * B </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="base_2include_2mrpt_2math_2utils_8h_source.html#l00837">mrpt::math::leastSquareLinearFit()</a>, and <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a107ff6ba047433e54d18b62e1eba1054"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_AAt" ref="a107ff6ba047433e54d18b62e1eba1054" args="(const MAT_A &amp;A)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_A &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_AAt </td>
          <td>(</td>
          <td class="paramtype">const MAT_A &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>A</em>&nbsp;</td><td>this = A * A<sup>T</sup> </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="base_2include_2mrpt_2math_2utils_8h_source.html#l00837">mrpt::math::leastSquareLinearFit()</a>.</p>

</div>
</div>
<a class="anchor" id="a64df0b57214e9cc73f198c3c17c6936c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_Ab" ref="a64df0b57214e9cc73f198c3c17c6936c" args="(const OTHERVECTOR1 &amp;vIn, OTHERVECTOR2 &amp;vOut, bool accumToOutput=false) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERVECTOR1 , typename OTHERVECTOR2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_Ab </td>
          <td>(</td>
          <td class="paramtype">const OTHERVECTOR1 &amp;&nbsp;</td>
          <td class="paramname"> <em>vIn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">OTHERVECTOR2 &amp;&nbsp;</td>
          <td class="paramname"> <em>vOut</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>accumToOutput</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Computes the vector vOut = this * vIn, where "vIn" is a column vector of the appropriate length. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00088">mrpt::math::CLevenbergMarquardtTempl&lt; VECTORTYPE, USERPARAM &gt;::execute()</a>, <a class="el" href="base_2include_2mrpt_2math_2utils_8h_source.html#l00837">mrpt::math::leastSquareLinearFit()</a>, and <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a39aaae778bcdd3aa102e414139c73348"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_AB" ref="a39aaae778bcdd3aa102e414139c73348" args="(const MATRIX1 &amp;A, const MATRIX2 &amp;B)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MATRIX1 , class MATRIX2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_AB </td>
          <td>(</td>
          <td class="paramtype">const MATRIX1 &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MATRIX2 &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>B</em>&nbsp;</td><td>this = A * B </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2c09c975167fde73120d4697be8fec2d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_ABC" ref="a2c09c975167fde73120d4697be8fec2d" args="(const MAT_A &amp;A, const MAT_B &amp;B, const MAT_C &amp;C)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_A , class MAT_B , class MAT_C &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_ABC </td>
          <td>(</td>
          <td class="paramtype">const MAT_A &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MAT_B &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MAT_C &amp;&nbsp;</td>
          <td class="paramname"> <em>C</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>C</em>&nbsp;</td><td>this = A*B*C </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa8f9f11482c67c95c5297765b068c029"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_ABCt" ref="aa8f9f11482c67c95c5297765b068c029" args="(const MAT_A &amp;A, const MAT_B &amp;B, const MAT_C &amp;C)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_A , class MAT_B , class MAT_C &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_ABCt </td>
          <td>(</td>
          <td class="paramtype">const MAT_A &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MAT_B &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MAT_C &amp;&nbsp;</td>
          <td class="paramname"> <em>C</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>C</em>&nbsp;</td><td>this = A*B*(C<sup>T</sup>) </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a87d8ea0cb48fbab92ba5feb75cd8998a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_ABt" ref="a87d8ea0cb48fbab92ba5feb75cd8998a" args="(const MAT_A &amp;A, const MAT_B &amp;B)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_A , class MAT_B &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_ABt </td>
          <td>(</td>
          <td class="paramtype">const MAT_A &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MAT_B &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>B</em>&nbsp;</td><td>this = A * B<sup>T</sup> </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a017cab72ce4d84180a8c282a4c6af19d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_AtA" ref="a017cab72ce4d84180a8c282a4c6af19d" args="(const MAT_A &amp;A)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_A &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_AtA </td>
          <td>(</td>
          <td class="paramtype">const MAT_A &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>A</em>&nbsp;</td><td>this = A<sup>T</sup> * A </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00088">mrpt::math::CLevenbergMarquardtTempl&lt; VECTORTYPE, USERPARAM &gt;::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="a13bb9454483bb877e2cb3682073ebf86"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_Atb" ref="a13bb9454483bb877e2cb3682073ebf86" args="(const OTHERVECTOR1 &amp;vIn, OTHERVECTOR2 &amp;vOut, bool accumToOutput=false) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERVECTOR1 , typename OTHERVECTOR2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_Atb </td>
          <td>(</td>
          <td class="paramtype">const OTHERVECTOR1 &amp;&nbsp;</td>
          <td class="paramname"> <em>vIn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">OTHERVECTOR2 &amp;&nbsp;</td>
          <td class="paramname"> <em>vOut</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>accumToOutput</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Computes the vector vOut = this<sup>T</sup> * vIn, where "vIn" is a column vector of the appropriate length. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00088">mrpt::math::CLevenbergMarquardtTempl&lt; VECTORTYPE, USERPARAM &gt;::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="a46184ec446528c091156d44ff39f8667"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_HCHt" ref="a46184ec446528c091156d44ff39f8667" args="(const MAT_C &amp;C, MAT_R &amp;R, bool accumResultInOutput=false, bool allow_submatrix_mult=false) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename MAT_C , typename MAT_R &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_HCHt </td>
          <td>(</td>
          <td class="paramtype">const MAT_C &amp;&nbsp;</td>
          <td class="paramname"> <em>C</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MAT_R &amp;&nbsp;</td>
          <td class="paramname"> <em>R</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>accumResultInOutput</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>allow_submatrix_mult</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>&lt; R = this * C * this<sup>T</sup> </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="namespacemrpt_1_1math_1_1detail.html#a82c3ad76e4566e1ddba4c3719db41452" title="R = H * C * H^t (with C symmetric).">detail::multiply_HCHt</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a20eebdf07672277176f71f56880daaec"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_HCHt_scalar" ref="a20eebdf07672277176f71f56880daaec" args="(const MAT_C &amp;C) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename MAT_C &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_HCHt_scalar </td>
          <td>(</td>
          <td class="paramtype">const MAT_C &amp;&nbsp;</td>
          <td class="paramname"> <em>C</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>R = H * C * H<sup>T</sup> (with a vector H and a symmetric matrix C) In fact when H is a vector, multiply_HCHt_scalar and multiply_HtCH_scalar are exactly equivalent </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a587085b3548141834c2875be516afd60"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_HtCH" ref="a587085b3548141834c2875be516afd60" args="(const MAT_C &amp;C, MAT_R &amp;R, bool accumResultInOutput=false, bool allow_submatrix_mult=false) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename MAT_C , typename MAT_R &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_HtCH </td>
          <td>(</td>
          <td class="paramtype">const MAT_C &amp;&nbsp;</td>
          <td class="paramname"> <em>C</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MAT_R &amp;&nbsp;</td>
          <td class="paramname"> <em>R</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>accumResultInOutput</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>allow_submatrix_mult</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>R = H<sup>T</sup> * C * H (with a symmetric matrix C)</p>
<p>&lt; R = this<sup>T</sup> * C * this </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="namespacemrpt_1_1math_1_1detail.html#a0de511f87a5879037098b46d08de7f95" title="R = H^t * C * H (with C symmetric).">detail::multiply_HtCH</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5892110276b5074db83a91c7c0b1565a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_HtCH_scalar" ref="a5892110276b5074db83a91c7c0b1565a" args="(const MAT_C &amp;C) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename MAT_C &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_HtCH_scalar </td>
          <td>(</td>
          <td class="paramtype">const MAT_C &amp;&nbsp;</td>
          <td class="paramname"> <em>C</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>R = H<sup>T</sup> * C * H (with a vector H and a symmetric matrix C) In fact when H is a vector, multiply_HCHt_scalar and multiply_HtCH_scalar are exactly equivalent </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aac5baf8406f3b3270a5f1860e4065370"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_result_is_symmetric" ref="aac5baf8406f3b3270a5f1860e4065370" args="(const MAT_A &amp;A, const MAT_B &amp;B)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_A , class MAT_B &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_result_is_symmetric </td>
          <td>(</td>
          <td class="paramtype">const MAT_A &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const MAT_B &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>B</em>&nbsp;</td><td>this = A * B (result is symmetric) </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a72b992417e8f9c03222ccf90ec3d4453"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiply_subMatrix" ref="a72b992417e8f9c03222ccf90ec3d4453" args="(const MAT_A &amp;A, MAT_OUT &amp;outResult, const size_t A_cols_offset, const size_t A_rows_offset, const size_t A_col_count) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_A , class MAT_OUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiply_subMatrix </td>
          <td>(</td>
          <td class="paramtype">const MAT_A &amp;&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MAT_OUT &amp;&nbsp;</td>
          <td class="paramname"> <em>outResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>A_cols_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>A_rows_offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>A_col_count</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>&lt; outResult = this * A </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0d611ffda31e89c70620b1e0a1648ec1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::multiplyByMatrixAndByTransposeNonSymmetric" ref="a0d611ffda31e89c70620b1e0a1648ec1" args="(const CMatrixTemplateNumeric&lt; T &gt; &amp;C, CMatrixTemplateNumeric&lt; T &gt; &amp;R, bool accumOnOutput=false, bool substractInsteadOfSum=false) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::multiplyByMatrixAndByTransposeNonSymmetric </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>C</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>R</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>accumOnOutput</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>substractInsteadOfSum</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes: R = H * C * H^t , where H is this matrix. </p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="ab82f60c429c14544beeca5cb1b5db56d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::norm" ref="ab82f60c429c14544beeca5cb1b5db56d" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::norm </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the norm of the container (for matrices, as if it were a vector with all its elements). </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a081920f1f994b71a07b4673971e3bf94"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::norm_inf" ref="a081920f1f994b71a07b4673971e3bf94" args="(size_t *maxIndex=NULL) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::norm_inf </td>
          <td>(</td>
          <td class="paramtype">size_t *&nbsp;</td>
          <td class="paramname"> <em>maxIndex</em> = <code>NULL</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Compute the norm-infinite of a vector ($f[ ||{v}||_ $f]), ie the maximum absolute value of the elements. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae2b560f2aa40d10b7de9962fe93d0a80"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::normalize" ref="ae2b560f2aa40d10b7de9962fe93d0a80" args="(const T min_val=0, const T max_val=1)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::normalize </td>
          <td>(</td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>min_val</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>max_val</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>max_val</em>&nbsp;</td><td>Normalize all the elements such as they are in the given range </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5161b84210edace7fd9f6b0eafb47989"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::ones" ref="a5161b84210edace7fd9f6b0eafb47989" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::ones </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set all elements to one. </p>

</div>
</div>
<a class="anchor" id="a180b07cc31179c3277a4136062e10098"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::ones" ref="a180b07cc31179c3277a4136062e10098" args="(const size_t row, const size_t col)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::ones </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set all elements to one. </p>

</div>
</div>
<a class="anchor" id="a3452e26df283b8aedee401c09b0c258a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator*=" ref="a3452e26df283b8aedee401c09b0c258a" args="(const OTHERMATRIX &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">OTHERMATRIX ::template <a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_numeric_1_1mrpt__matrix__tag__templ.html">mrpt_matrix_tag_templ</a>&lt;void&gt;::void_type <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator*= </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a6a70bbcb8ba85d2b12b4ce31a8f809e8"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator*=" ref="a6a70bbcb8ba85d2b12b4ce31a8f809e8" args="(const T n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator*= </td>
          <td>(</td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>Multiply by scalar </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a306e562bbf1b02b4855a952960d0927c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator+" ref="a306e562bbf1b02b4855a952960d0927c" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator+ </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aeb1ee81f366d898e0a2d7bd9c359d232"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator+=" ref="aeb1ee81f366d898e0a2d7bd9c359d232" args="(const T n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator+= </td>
          <td>(</td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>Sum a scalar </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5548a9f75a94e58a784d23d636bb52d1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator&#45;" ref="a5548a9f75a94e58a784d23d636bb52d1" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a> <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator- </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab87645e8c81b2a45e7932581a0d5317b"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator&#45;=" ref="ab87645e8c81b2a45e7932581a0d5317b" args="(const T n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator-= </td>
          <td>(</td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>Substract a scalar </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a168b60ed6f4ef4e04ad272da378e0cb7"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator/=" ref="a168b60ed6f4ef4e04ad272da378e0cb7" args="(const T n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator/= </td>
          <td>(</td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>n</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>Divide by scalar </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7418325a81a3e2dfb45ae04beba09ded"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="a7418325a81a3e2dfb45ae04beba09ded" args="(V(&amp;theArray)[N])" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename V , size_t N&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">V(&amp;)&nbsp;</td>
          <td class="paramname"> <em>theArray</em>[N]</td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assignment operator for initializing from a C array (The matrix must be set to the correct size before invoking this asignament). </p>
<div class="fragment"><pre class="fragment">         <a class="code" href="namespacemrpt_1_1math.html#a3814c2b868f059d6a7ab0d8ecd2311d6" title="Declares a matrix of double numbers (non serializable).">CMatrixDouble</a>   M(3,2);
  <span class="keyword">const</span> <span class="keywordtype">double</span> numbers[] = {
    1,2,3,
    4,5,6 };
  M = numbers;
</pre></div><p> Refer also to the constructor with initialization data <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html#a0b3598dd798b2f7858e4415b7f03e1f7" title="Constructors.">CMatrixTemplate::CMatrixTemplate</a> </p>

<p>Reimplemented from <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html#a031099ad66bd692f4bdbacfba108aa05">mrpt::math::CMatrixTemplate&lt; T &gt;</a>.</p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00215">215</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae7a14e3b969f5fc847e4c775bf9474b3"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="ae7a14e3b969f5fc847e4c775bf9474b3" args="(const CMatrixTemplate&lt; R &gt; &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class R &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt;T&gt;&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html">CMatrixTemplate</a>&lt; R &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assignment operator of other types. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00164">164</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="abe9ffe11e37fe3239c86bf8d85e16ac7"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="abe9ffe11e37fe3239c86bf8d85e16ac7" args="(const CMatrixFixedNumeric&lt; T, NROWS, NCOLS &gt; &amp;M)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;size_t NROWS, size_t NCOLS&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_fixed_numeric.html">CMatrixFixedNumeric</a>&lt; T, NROWS, NCOLS &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>M</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy operator from a fixed-size matrix. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00157">157</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a796de00fb1a3f86cc6a27fa1ee69b76d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="a796de00fb1a3f86cc6a27fa1ee69b76d" args="(const mrpt::poses::CPoint3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_point3_d.html">mrpt::poses::CPoint3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a57eba0c8658761aaafd844356d2896ff"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="a57eba0c8658761aaafd844356d2896ff" args="(const mrpt::poses::CPoint2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_point2_d.html">mrpt::poses::CPoint2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4c8da7633f669c36bb580fc67925e5f1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="a4c8da7633f669c36bb580fc67925e5f1" args="(const mrpt::poses::CPose3DQuat &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d_quat.html">mrpt::poses::CPose3DQuat</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="afa9c9314795b3930959d2943bf795f05"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="afa9c9314795b3930959d2943bf795f05" args="(const mrpt::poses::CPose3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose3_d.html">mrpt::poses::CPose3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aac9aefbe9a6b5119c8b0420e9ba88b11"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="aac9aefbe9a6b5119c8b0420e9ba88b11" args="(const mrpt::poses::CPose2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1poses_1_1_c_pose2_d.html">mrpt::poses::CPose2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ad4385624d5e0901da27f72d346bf0d61"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="ad4385624d5e0901da27f72d346bf0d61" args="(const TPoint3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_point3_d.html">TPoint3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a53d07a33a145016d45fd2991f55e601d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="a53d07a33a145016d45fd2991f55e601d" args="(const TPoint2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_point2_d.html">TPoint2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa1c9d6a4dfc4daebe0e2834c943306d9"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="aa1c9d6a4dfc4daebe0e2834c943306d9" args="(const TPose3DQuat &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d_quat.html">TPose3DQuat</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4b0f8297b400532ffc7f62b999e2bd5a"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="a4b0f8297b400532ffc7f62b999e2bd5a" args="(const TPose3D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_pose3_d.html">TPose3D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a1ed1729793c0f4bdbc450c5690da9467"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator=" ref="a1ed1729793c0f4bdbc450c5690da9467" args="(const TPose2D &amp;p)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_t_pose2_d.html">TPose2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>p</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Assignment of a matrix from any other kind of matrix </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_matrix_8h_source.html#l00092">mrpt::math::CMatrix::operator=()</a>.</p>

</div>
</div>
<a class="anchor" id="a9020e0f6008adae710b2d69784d33716"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::operator^=" ref="a9020e0f6008adae710b2d69784d33716" args="(const unsigned int &amp;pow)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt;T&gt;&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::operator^= </td>
          <td>(</td>
          <td class="paramtype">const unsigned int &amp;&nbsp;</td>
          <td class="paramname"> <em>pow</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>combined power and assignment operator </p>

</div>
</div>
<a class="anchor" id="a890e94c9121d34e13e83b2d954c1c1ba"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::pivot" ref="a890e94c9121d34e13e83b2d954c1c1ba" args="(const size_t row)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::pivot </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>row</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a54554f9f2906d6ef6416c7168a7bbad2"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::pseudoInverse" ref="a54554f9f2906d6ef6416c7168a7bbad2" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_OUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">MAT_OUT <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::pseudoInverse </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>&lt; Pseudo inverse of this matrix M: return (M<sup>T</sup> * M)^-1 * M<sup>T</sup>. Invoke with template argument for desired return matrix type: m.pseudoInverse&lt;CMatrixDouble&gt;() </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="af82185e0819f9734f343fb1bce4d7e0b"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::pseudoInverse" ref="af82185e0819f9734f343fb1bce4d7e0b" args="(MAT_OUT &amp;out) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT_OUT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::pseudoInverse </td>
          <td>(</td>
          <td class="paramtype">MAT_OUT &amp;&nbsp;</td>
          <td class="paramname"> <em>out</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>&lt; Pseudo inverse of this matrix M: out = (M<sup>T</sup> * M)^-1 * M<sup>T</sup> </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a89b66229bbe8a7bf659819dc032d0eef"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::rank" ref="a89b66229bbe8a7bf659819dc032d0eef" args="(T eps=1e&#45;7) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">size_t <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::rank </td>
          <td>(</td>
          <td class="paramtype">T&nbsp;</td>
          <td class="paramname"> <em>eps</em> = <code>1e-7</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9ab4e5d155c83fb1b57f58e888d69858"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::resize" ref="a9ab4e5d155c83fb1b57f58e888d69858" args="(const CMatrixTemplateSize &amp;siz)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::resize </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structmrpt_1_1math_1_1_c_matrix_template_size.html">CMatrixTemplateSize</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>siz</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method just checks has no effects in this class, but raises an exception if the expected size does not match. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00232">232</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a294e7d453f6cb62d42d04650a8b2abe0"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::resize" ref="a294e7d453f6cb62d42d04650a8b2abe0" args="(size_t row, size_t col)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::resize </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Changes the size of matrix, maintaining its previous content as possible and padding with zeros where applicable. </p>
<p>setSize and resize are exactly equivalent methods. </p>

</div>
</div>
<a class="anchor" id="a71022ba15b56c2cfcbdc7ad1f6c9f53e"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::rightDivideSquare" ref="a71022ba15b56c2cfcbdc7ad1f6c9f53e" args="(const MAT2 &amp;B, MAT3 &amp;RES) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;class MAT2 , class MAT3 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::rightDivideSquare </td>
          <td>(</td>
          <td class="paramtype">const MAT2 &amp;&nbsp;</td>
          <td class="paramname"> <em>B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">MAT3 &amp;&nbsp;</td>
          <td class="paramname"> <em>RES</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Matrix right divide: RES = this &amp;#183; B<sup>-1</sup> (B must be a square matrix). </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a89cc651ddffe002003151e09cda16260">leftDivideSquare</a>,<a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a6447082956a66a9035e792fb5a6ea85c">fastRightDivideSquare</a> </dd></dl>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a106b7d158ba6d100dc67f6fef64972bd"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::saveToTextFile" ref="a106b7d158ba6d100dc67f6fef64972bd" args="(const std::string &amp;file, mrpt::math::TMatrixTextFileFormat fileFormat=MATRIX_FORMAT_ENG, bool appendMRPTHeader=false, const std::string &amp;userHeader=std::string(&quot;&quot;)) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::saveToTextFile </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespacemrpt_1_1math.html#a5c655254dc91e1e5e5b7e43ab7572d85">mrpt::math::TMatrixTextFileFormat</a>&nbsp;</td>
          <td class="paramname"> <em>fileFormat</em> = <code>MATRIX_FORMAT_ENG</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>appendMRPTHeader</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&nbsp;</td>
          <td class="paramname"> <em>userHeader</em> = <code>std::string(&quot;&quot;)</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Save matrix to a text file, compatible with MATLAB text format. </p>

<p>Reimplemented from <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template.html#a497fec10a139396a5694b1435dacf456">mrpt::math::CMatrixTemplate&lt; T &gt;</a>.</p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>, and <a class="el" href="_c_vector_template_8h_source.html#l00292">mrpt::math::CVectorTemplate&lt; KFTYPE &gt;::saveToTextFile()</a>.</p>

</div>
</div>
<a class="anchor" id="ae397822a60691d4c7029193e104bcd14"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::scalarPow" ref="ae397822a60691d4c7029193e104bcd14" args="(T s)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::scalarPow </td>
          <td>(</td>
          <td class="paramtype">T&nbsp;</td>
          <td class="paramname"> <em>s</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Scalar power of all elements to a given power, this is diferent of ^ operator. </p>

</div>
</div>
<a class="anchor" id="a2e30b52062eb381e4e1fea8a4625f2a1"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::setIdentity" ref="a2e30b52062eb381e4e1fea8a4625f2a1" args="(size_t N)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::setIdentity </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>N</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8e061ced620c321e4a37b9f2654f9bf4"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::setIdentity" ref="a8e061ced620c321e4a37b9f2654f9bf4" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::setIdentity </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0cc530ed443b8594c3e72d3fceaded55"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::setSize" ref="a0cc530ed443b8594c3e72d3fceaded55" args="(size_t row, size_t col)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::setSize </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Changes the size of matrix, maintaining its previous content as possible and padding with zeros where applicable. </p>
<p>setSize and resize are exactly equivalent methods. </p>

<p>Referenced by <a class="el" href="_c_levenberg_marquardt_8h_source.html#l00088">mrpt::math::CLevenbergMarquardtTempl&lt; VECTORTYPE, USERPARAM &gt;::execute()</a>, <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00493">mrpt::math::detail::VicinityTraits&lt; CMatrixTemplateNumeric&lt; T &gt; &gt;::initialize()</a>, <a class="el" href="_c_vector_template_8h_source.html#l00314">mrpt::math::CVectorTemplate&lt; KFTYPE &gt;::likeMatrix()</a>, and <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
<a class="anchor" id="a1dc4ee753f8c38583f8f58050857094b"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::solve" ref="a1dc4ee753f8c38583f8f58050857094b" args="(const CMatrixTemplateNumeric&lt; T &gt; &amp;v) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt;T&gt; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Solve the matrix as linear equations system. </p>

</div>
</div>
<a class="anchor" id="a705a4d2dcadd8f1f5bffead1ce4d911e"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::Sqrt" ref="a705a4d2dcadd8f1f5bffead1ce4d911e" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::Sqrt </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

<p>Referenced by <a class="el" href="_c_enhanced_meta_file_8h_source.html#l00203">mrpt::utils::CEnhancedMetaFile::ellipseGaussian()</a>, and <a class="el" href="_c_canvas_8h_source.html#l00289">mrpt::utils::CCanvas::ellipseGaussian()</a>.</p>

</div>
</div>
<a class="anchor" id="af41ebbfce926485e0ca0975082a8e2bd"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::Square" ref="af41ebbfce926485e0ca0975082a8e2bd" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::Square </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a5ce9956e93da8303e3d1375b069395d4"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::squareNorm" ref="a5ce9956e93da8303e3d1375b069395d4" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::squareNorm </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the square norm of the container (for matrices, as if it were a vector with all its elements). </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aed9e7842f1130907ee20afdf6e735f4d"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::std" ref="aed9e7842f1130907ee20afdf6e735f4d" args="(bool unbiased=true) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::std </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>unbiased</em> = <code>true</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Return the standard deviation of all the elements in the container. </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0496e35e0bc5ac6d4f31e5c6128f1497"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::substract_AAt" ref="a0496e35e0bc5ac6d4f31e5c6128f1497" args="(const OTHERMATRIX &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::substract_AAt </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>this -= A + A<sup>T</sup> </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0fc7596c7d0b89423d077be1aa8a40b4"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::substract_Ac" ref="a0fc7596c7d0b89423d077be1aa8a40b4" args="(const OTHERMATRIX &amp;m, const T c)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::substract_Ac </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T&nbsp;</td>
          <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Substract c (scalar) times A to this matrix: this -= A * c </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aafc63d52d9c90d83328b9e2212be6c6c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::substract_An" ref="aafc63d52d9c90d83328b9e2212be6c6c" args="(const OTHERMATRIX &amp;m, const size_t n)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::substract_An </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>n</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Substract n (integer) times A to this matrix: this -= A * n </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="aaa53f644282256eb90a585a1a1242c41"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::substract_At" ref="aaa53f644282256eb90a585a1a1242c41" args="(const OTHERMATRIX &amp;m)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename OTHERMATRIX &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt_autotype</a>&amp; <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::substract_At </td>
          <td>(</td>
          <td class="paramtype">const OTHERMATRIX &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="a19f550999469cb5234667723d098315c"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::sum" ref="a19f550999469cb5234667723d098315c" args="(size_t firstRow=0, size_t firstCol=0, size_t lastRow=std::numeric_limits&lt; size_t &gt;::max(), size_t lastCol=std::numeric_limits&lt; size_t &gt;::max()) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::sum </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>firstRow</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>firstCol</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>lastRow</em> = <code>std::numeric_limits&lt;&nbsp;size_t&nbsp;&gt;::max()</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>lastCol</em> = <code>std::numeric_limits&lt;&nbsp;size_t&nbsp;&gt;::max()</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the sum of a given part of the matrix. </p>
<p>The default value (std::numeric_limits&lt;size_t&gt;::max()) for the last column/row means to sum up to the last column/row. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html#a45800b8f0b243efaa93ce2162f54fc81">sumAll</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a45800b8f0b243efaa93ce2162f54fc81"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::sumAll" ref="a45800b8f0b243efaa93ce2162f54fc81" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::sumAll </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sum all the elements, returning a value of the same type than the container </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae037f74b1cc05a370da313ecfe7b2306"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::sumAllRetType" ref="ae037f74b1cc05a370da313ecfe7b2306" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
<div class="memtemplate">
template&lt;typename RET_TYPE &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">RET_TYPE <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::sumAllRetType </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Sum all the elements, returning a value of a custom type (this could be used to avoid overflow with containers of integers) </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="ac4871c1857657bc4e87bf084c6c92d38"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::svd" ref="ac4871c1857657bc4e87bf084c6c92d38" args="(CMatrixTemplateNumeric&lt; T &gt; &amp;U, std::vector&lt; T &gt; &amp;W, CMatrixTemplateNumeric&lt; T &gt; &amp;V) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::svd </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>U</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>W</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">CMatrixTemplateNumeric</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>V</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the SVD (Singular Value Decomposition) of the matrix. </p>
<p>If "this" matrix is named A with dimensions M x N, this method computes: <br/>
 A = U * W * V' <br/>
 <br/>
 , where U is a M x N column orthogonal matrix, W is a diagonal matrix containing the singular values, and V is a NxN matrix. <br/>
 This method returns the U matrix, the N elements in the diagonal of W as a vector, and the matrix V, NOT TRANSPOSED. </p>

</div>
</div>
<a class="anchor" id="ad70fa00afb489269e7cde9bacfde8492"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::trace" ref="ad70fa00afb489269e7cde9bacfde8492" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::trace </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>The trace of this square matrix </p>

<p>Definition at line <a class="el" href="_c_matrix_template_numeric_8h_source.html#l00119">119</a> of file <a class="el" href="_c_matrix_template_numeric_8h_source.html">CMatrixTemplateNumeric.h</a>.</p>

</div>
</div>
<a class="anchor" id="abc0412510540232a3a6b5f0e5cacdf72"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::unit" ref="abc0412510540232a3a6b5f0e5cacdf72" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::unit </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build an unit matrix. </p>

</div>
</div>
<a class="anchor" id="a3025ad8209c4cd0393e976f2d411b9b7"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::unit" ref="a3025ad8209c4cd0393e976f2d411b9b7" args="(const size_t row)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::unit </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>row</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Build an unit matrix. </p>

</div>
</div>
<a class="anchor" id="a5b5e11e5af763af00a09157a85a97d49"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::zeros" ref="a5b5e11e5af763af00a09157a85a97d49" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::zeros </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set all elements to zero. </p>

</div>
</div>
<a class="anchor" id="a16d2879347fb4fbd7cc85ec3b04f1cbd"></a><!-- doxytag: member="mrpt::math::CMatrixTemplateNumeric::zeros" ref="a16d2879347fb4fbd7cc85ec3b04f1cbd" args="(const size_t row, const size_t col)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classmrpt_1_1math_1_1_c_matrix_template_numeric.html">mrpt::math::CMatrixTemplateNumeric</a>&lt; T &gt;::zeros </td>
          <td>(</td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const size_t&nbsp;</td>
          <td class="paramname"> <em>col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set all elements to zero. </p>

<p>Referenced by <a class="el" href="_c_kalman_filter_capable_8h_source.html#l00456">mrpt::bayes::CKalmanFilterCapable&lt; 7, 3, 3, 7 &gt;::runOneKalmanIteration()</a>.</p>

</div>
</div>
</div>
<!--- 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">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&nbsp;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<br><hr><br> <table border="0" width="100%"> <tr> <td> Page generated by <a href="http://www.doxygen.org" target="_blank">Doxygen 1.6.2-20100208</a> for MRPT 0.9.0 SVN: at Wed Jul 14 12:48:09 UTC 2010</td><td></td> <td width="100"> </td> <td width="150">  </td></tr> </table> </body></html>