Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 4bc66056a634db26a1f4d0845dc41ca6 > files > 3149

mrpt-doc-0.9.5-0.1.20110925svn2670.fc16.i686.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>Eigen::HouseholderQR Class 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.7.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</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">
          <div class="left">
            <form id="FSearchBox" action="search.php" method="get">
              <img id="MSearchSelect" src="search/mag.png" alt=""/>
              <input type="text" id="MSearchField" name="query" value="Search" size="20" accesskey="S" 
                     onfocus="searchBox.OnSearchFieldFocus(true)" 
                     onblur="searchBox.OnSearchFieldFocus(false)"/>
            </form>
          </div><div class="right"></div>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespace_eigen.html">Eigen</a>      </li>
      <li class="navelem"><a class="el" href="class_eigen_1_1_householder_q_r.html">HouseholderQR</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<div class="title">Eigen::HouseholderQR Class Reference<div class="ingroups"><a class="el" href="group___q_r___module.html">QR module</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="Eigen::HouseholderQR" --><hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Householder QR decomposition of a matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">MatrixType</td><td>the type of the matrix of which we are computing the QR decomposition</td></tr>
  </table>
  </dd>
</dl>
<p>This class performs a QR decomposition of a matrix <b>A</b> into matrices <b>Q</b> and <b>R</b> such that </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[ \mathbf{A} = \mathbf{Q} \, \mathbf{R} \]" src="form_264.png"/>
</p>
<p> by using Householder transformations. Here, <b>Q</b> a unitary matrix and <b>R</b> an upper triangular matrix. The result is stored in a compact way compatible with LAPACK.</p>
<p>Note that no pivoting is performed. This is <b>not</b> a rank-revealing decomposition. If you want that feature, use <a class="el" href="class_eigen_1_1_full_piv_householder_q_r.html" title="Householder rank-revealing QR decomposition of a matrix with full pivoting.">FullPivHouseholderQR</a> or <a class="el" href="class_eigen_1_1_col_piv_householder_q_r.html" title="Householder rank-revealing QR decomposition of a matrix with column-pivoting.">ColPivHouseholderQR</a> instead.</p>
<p>This Householder QR decomposition is faster, but less numerically stable and less feature-full than <a class="el" href="class_eigen_1_1_full_piv_householder_q_r.html" title="Householder rank-revealing QR decomposition of a matrix with full pivoting.">FullPivHouseholderQR</a> or <a class="el" href="class_eigen_1_1_col_piv_householder_q_r.html" title="Householder rank-revealing QR decomposition of a matrix with column-pivoting.">ColPivHouseholderQR</a>.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_matrix_base.html#aed4fc6caac738a174619f27af5e8bf9e">MatrixBase::householderQr()</a> </dd></dl>
</div>
<p><a href="class_eigen_1_1_householder_q_r-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<a class="el" href="class_eigen_1_1_householder_q_r.html#a3c98c2a9ec990354f72875989cb663edae92400f822386f3a113dac8600a4f5a6">RowsAtCompileTime</a> =  MatrixType::RowsAtCompileTime, 
<a class="el" href="class_eigen_1_1_householder_q_r.html#a3c98c2a9ec990354f72875989cb663eda5f8a706c8abdf1ed821a442a5befb4a7">ColsAtCompileTime</a> =  MatrixType::ColsAtCompileTime, 
<a class="el" href="class_eigen_1_1_householder_q_r.html#a3c98c2a9ec990354f72875989cb663eda7e598eb5e41a037eceee4153e43c3408">Options</a> =  MatrixType::Options, 
<a class="el" href="class_eigen_1_1_householder_q_r.html#a3c98c2a9ec990354f72875989cb663eda2f04f554b52400ae9a5c2eeda6e03daf">MaxRowsAtCompileTime</a> =  MatrixType::MaxRowsAtCompileTime, 
<br/>
&#160;&#160;<a class="el" href="class_eigen_1_1_householder_q_r.html#a3c98c2a9ec990354f72875989cb663eda3ca9bc7d2e1456d4d9b488c5eb2e2011">MaxColsAtCompileTime</a> =  MatrixType::MaxColsAtCompileTime
<br/>
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef _MatrixType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef MatrixType::Scalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a969bc1bf44a1da630e58ad937924d55d">Scalar</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef MatrixType::RealScalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a5edd7afded601a255eeb0f9b118c6ed8">RealScalar</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef MatrixType::Index&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_eigen_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="class_eigen_1_1_householder_q_r.html#a969bc1bf44a1da630e58ad937924d55d">Scalar</a>, <br class="typebreak"/>
RowsAtCompileTime, <br class="typebreak"/>
RowsAtCompileTime,(MatrixType::Flags <br class="typebreak"/>
&amp;<a class="el" href="group__flags.html#gae4f56c2a60bbe4bd2e44c5b19cbe8762">RowMajorBit</a>)?RowMajor:ColMajor, <br class="typebreak"/>
MaxRowsAtCompileTime, <br class="typebreak"/>
MaxRowsAtCompileTime &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a9ac958b24d59f696fd519a681d134029">MatrixQType</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
<a class="el" href="struct_eigen_1_1internal_1_1plain__diag__type.html">internal::plain_diag_type</a><br class="typebreak"/>
&lt; <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &gt;::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">HCoeffsType</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
<a class="el" href="struct_eigen_1_1internal_1_1plain__row__type.html">internal::plain_row_type</a><br class="typebreak"/>
&lt; <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &gt;::type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a04b30b09c2cd66282fe1527fb5200732">RowVectorType</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_eigen_1_1_householder_sequence.html">HouseholderSequence</a><br class="typebreak"/>
&lt; <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a>, <a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">HCoeffsType</a> &gt;<br class="typebreak"/>
::ConjugateReturnType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a5ea66296321d81ca0c539119a3e20f61">HouseholderSequenceType</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#aa831b18d62c7a50490b1f36ab09aacd2">HouseholderQR</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Constructor.  <a href="#aa831b18d62c7a50490b1f36ab09aacd2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a2dc3c780ac7ba7a1f81d17fe0eec2755">HouseholderQR</a> (<a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a> rows, <a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a> cols)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Constructor with memory preallocation.  <a href="#a2dc3c780ac7ba7a1f81d17fe0eec2755"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#ae6d58aa2a7096256639abee56fa2a68d">HouseholderQR</a> (const <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &amp;matrix)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename Rhs &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">const internal::solve_retval<br class="typebreak"/>
&lt; <a class="el" href="class_eigen_1_1_householder_q_r.html">HouseholderQR</a>, Rhs &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a4a6bea02fcfdf7380297606332c6fe6a">solve</a> (const <a class="el" href="class_eigen_1_1_matrix_base.html">MatrixBase</a>&lt; Rhs &gt; &amp;b) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">This method finds a solution x to the equation Ax=b, where A is the matrix of which *this is the QR decomposition, if any exists.  <a href="#a4a6bea02fcfdf7380297606332c6fe6a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_householder_q_r.html#a5ea66296321d81ca0c539119a3e20f61">HouseholderSequenceType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#ae8a3a9d83c813bb40dda3472f4fa257d">householderQ</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a89328ed69bc8a0ceb82f343d9ce1013b">matrixQR</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_householder_q_r.html">HouseholderQR</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#af3ded499ca0c073824aa70e47f911460">compute</a> (const <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &amp;matrix)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">MatrixType::RealScalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a4ad5dfc4fb2375539ac74713dda3afb3">absDeterminant</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">MatrixType::RealScalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a73496e169b7e534953bdb4f8a2800a9c">logAbsDeterminant</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a53ad0021bb4fb18bd40368d9ddddd214">rows</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#ae20f91178dd7ab1072757f71745ff93a">cols</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">HCoeffsType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a225e3117193b98e13266c62644f06c97">hCoeffs</a> () const </td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#ad4c37b05eae1a8002322ee9d38fc2d80">m_qr</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">HCoeffsType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#ab47e710e2c8575317bad57b0bae99427">m_hCoeffs</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_householder_q_r.html#a04b30b09c2cd66282fe1527fb5200732">RowVectorType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#ac74098939dc2d96927bc2287f65dc9e7">m_temp</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_householder_q_r.html#a583a18017119ad8b400567427c731281">m_isInitialized</a></td></tr>
</table>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a20239f2785393963c1c099a6544a7f3a"></a><!-- doxytag: member="Eigen::HouseholderQR::HCoeffsType" ref="a20239f2785393963c1c099a6544a7f3a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="struct_eigen_1_1internal_1_1plain__diag__type.html">internal::plain_diag_type</a>&lt;<a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a>&gt;::type <a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">Eigen::HouseholderQR::HCoeffsType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00072">72</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a5ea66296321d81ca0c539119a3e20f61"></a><!-- doxytag: member="Eigen::HouseholderQR::HouseholderSequenceType" ref="a5ea66296321d81ca0c539119a3e20f61" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="class_eigen_1_1_householder_sequence.html">HouseholderSequence</a>&lt;<a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a>,<a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">HCoeffsType</a>&gt;::ConjugateReturnType <a class="el" href="class_eigen_1_1_householder_q_r.html#a5ea66296321d81ca0c539119a3e20f61">Eigen::HouseholderQR::HouseholderSequenceType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00074">74</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a54db7da9598ca6fadfe21bcdb9522834"></a><!-- doxytag: member="Eigen::HouseholderQR::Index" ref="a54db7da9598ca6fadfe21bcdb9522834" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef MatrixType::Index <a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Eigen::HouseholderQR::Index</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00070">70</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a9ac958b24d59f696fd519a681d134029"></a><!-- doxytag: member="Eigen::HouseholderQR::MatrixQType" ref="a9ac958b24d59f696fd519a681d134029" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="class_eigen_1_1_matrix.html">Matrix</a>&lt;<a class="el" href="class_eigen_1_1_householder_q_r.html#a969bc1bf44a1da630e58ad937924d55d">Scalar</a>, RowsAtCompileTime, RowsAtCompileTime, (MatrixType::Flags&amp;<a class="el" href="group__flags.html#gae4f56c2a60bbe4bd2e44c5b19cbe8762">RowMajorBit</a>) ? RowMajor : ColMajor, MaxRowsAtCompileTime, MaxRowsAtCompileTime&gt; <a class="el" href="class_eigen_1_1_householder_q_r.html#a9ac958b24d59f696fd519a681d134029">Eigen::HouseholderQR::MatrixQType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00071">71</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="aed8a2f1de5ee24a7dd00984dd00cdecc"></a><!-- doxytag: member="Eigen::HouseholderQR::MatrixType" ref="aed8a2f1de5ee24a7dd00984dd00cdecc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef _MatrixType <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">Eigen::HouseholderQR::MatrixType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00060">60</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a5edd7afded601a255eeb0f9b118c6ed8"></a><!-- doxytag: member="Eigen::HouseholderQR::RealScalar" ref="a5edd7afded601a255eeb0f9b118c6ed8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef MatrixType::RealScalar <a class="el" href="class_eigen_1_1_householder_q_r.html#a5edd7afded601a255eeb0f9b118c6ed8">Eigen::HouseholderQR::RealScalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00069">69</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a04b30b09c2cd66282fe1527fb5200732"></a><!-- doxytag: member="Eigen::HouseholderQR::RowVectorType" ref="a04b30b09c2cd66282fe1527fb5200732" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="struct_eigen_1_1internal_1_1plain__row__type.html">internal::plain_row_type</a>&lt;<a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a>&gt;::type <a class="el" href="class_eigen_1_1_householder_q_r.html#a04b30b09c2cd66282fe1527fb5200732">Eigen::HouseholderQR::RowVectorType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00073">73</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a969bc1bf44a1da630e58ad937924d55d"></a><!-- doxytag: member="Eigen::HouseholderQR::Scalar" ref="a969bc1bf44a1da630e58ad937924d55d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef MatrixType::Scalar <a class="el" href="class_eigen_1_1_householder_q_r.html#a969bc1bf44a1da630e58ad937924d55d">Eigen::HouseholderQR::Scalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00068">68</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a3c98c2a9ec990354f72875989cb663ed"></a><!-- doxytag: member="Eigen::HouseholderQR::@376" ref="a3c98c2a9ec990354f72875989cb663ed" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum</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="a3c98c2a9ec990354f72875989cb663edae92400f822386f3a113dac8600a4f5a6"></a><!-- doxytag: member="RowsAtCompileTime" ref="a3c98c2a9ec990354f72875989cb663edae92400f822386f3a113dac8600a4f5a6" args="" -->RowsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a3c98c2a9ec990354f72875989cb663eda5f8a706c8abdf1ed821a442a5befb4a7"></a><!-- doxytag: member="ColsAtCompileTime" ref="a3c98c2a9ec990354f72875989cb663eda5f8a706c8abdf1ed821a442a5befb4a7" args="" -->ColsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a3c98c2a9ec990354f72875989cb663eda7e598eb5e41a037eceee4153e43c3408"></a><!-- doxytag: member="Options" ref="a3c98c2a9ec990354f72875989cb663eda7e598eb5e41a037eceee4153e43c3408" args="" -->Options</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a3c98c2a9ec990354f72875989cb663eda2f04f554b52400ae9a5c2eeda6e03daf"></a><!-- doxytag: member="MaxRowsAtCompileTime" ref="a3c98c2a9ec990354f72875989cb663eda2f04f554b52400ae9a5c2eeda6e03daf" args="" -->MaxRowsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a3c98c2a9ec990354f72875989cb663eda3ca9bc7d2e1456d4d9b488c5eb2e2011"></a><!-- doxytag: member="MaxColsAtCompileTime" ref="a3c98c2a9ec990354f72875989cb663eda3ca9bc7d2e1456d4d9b488c5eb2e2011" args="" -->MaxColsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="_q_r_source.html#l00061">61</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="aa831b18d62c7a50490b1f36ab09aacd2"></a><!-- doxytag: member="Eigen::HouseholderQR::HouseholderQR" ref="aa831b18d62c7a50490b1f36ab09aacd2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::HouseholderQR::HouseholderQR </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default Constructor. </p>
<p>The default constructor is useful in cases in which the user intends to perform decompositions via <a class="el" href="class_eigen_1_1_householder_q_r.html#af3ded499ca0c073824aa70e47f911460">HouseholderQR::compute(const MatrixType&amp;)</a>. </p>

<p>Definition at line <a class="el" href="_q_r_source.html#l00082">82</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a2dc3c780ac7ba7a1f81d17fe0eec2755"></a><!-- doxytag: member="Eigen::HouseholderQR::HouseholderQR" ref="a2dc3c780ac7ba7a1f81d17fe0eec2755" args="(Index rows, Index cols)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::HouseholderQR::HouseholderQR </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a>&#160;</td>
          <td class="paramname"><em>rows</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a>&#160;</td>
          <td class="paramname"><em>cols</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default Constructor with memory preallocation. </p>
<p>Like the default constructor but with preallocation of the internal data according to the specified problem <em>size</em>. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_householder_q_r.html#aa831b18d62c7a50490b1f36ab09aacd2" title="Default Constructor.">HouseholderQR()</a> </dd></dl>

<p>Definition at line <a class="el" href="_q_r_source.html#l00090">90</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="ae6d58aa2a7096256639abee56fa2a68d"></a><!-- doxytag: member="Eigen::HouseholderQR::HouseholderQR" ref="ae6d58aa2a7096256639abee56fa2a68d" args="(const MatrixType &amp;matrix)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::HouseholderQR::HouseholderQR </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &amp;&#160;</td>
          <td class="paramname"><em>matrix</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00096">96</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a4ad5dfc4fb2375539ac74713dda3afb3"></a><!-- doxytag: member="Eigen::HouseholderQR::absDeterminant" ref="a4ad5dfc4fb2375539ac74713dda3afb3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">MatrixType::RealScalar Eigen::HouseholderQR::absDeterminant </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the absolute value of the determinant of the matrix of which *this is the QR decomposition. It has only linear complexity (that is, O(n) where n is the dimension of the square matrix) as the QR decomposition has already been computed.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>This is only for square matrices.</dd></dl>
<dl class="warning"><dt><b>Warning:</b></dt><dd>a determinant can be very big or small, so for matrices of large enough dimension, there is a risk of overflow/underflow. One way to work around that is to use <a class="el" href="class_eigen_1_1_householder_q_r.html#a73496e169b7e534953bdb4f8a2800a9c">logAbsDeterminant()</a> instead.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_householder_q_r.html#a73496e169b7e534953bdb4f8a2800a9c">logAbsDeterminant()</a>, <a class="el" href="class_eigen_1_1_matrix_base.html#aeaa1e616a5c11b439fcf23282f582c89">MatrixBase::determinant()</a> </dd></dl>

<p>Definition at line <a class="el" href="_q_r_source.html#l00188">188</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="ae20f91178dd7ab1072757f71745ff93a"></a><!-- doxytag: member="Eigen::HouseholderQR::cols" ref="ae20f91178dd7ab1072757f71745ff93a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a> Eigen::HouseholderQR::cols </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00177">177</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="af3ded499ca0c073824aa70e47f911460"></a><!-- doxytag: member="Eigen::HouseholderQR::compute" ref="af3ded499ca0c073824aa70e47f911460" args="(const MatrixType &amp;matrix)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_householder_q_r.html">HouseholderQR</a>&lt; <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &gt; &amp; Eigen::HouseholderQR::compute </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> &amp;&#160;</td>
          <td class="paramname"><em>matrix</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00327">327</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a225e3117193b98e13266c62644f06c97"></a><!-- doxytag: member="Eigen::HouseholderQR::hCoeffs" ref="a225e3117193b98e13266c62644f06c97" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">HCoeffsType</a>&amp; Eigen::HouseholderQR::hCoeffs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00178">178</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="ae8a3a9d83c813bb40dda3472f4fa257d"></a><!-- doxytag: member="Eigen::HouseholderQR::householderQ" ref="ae8a3a9d83c813bb40dda3472f4fa257d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_householder_q_r.html#a5ea66296321d81ca0c539119a3e20f61">HouseholderSequenceType</a> Eigen::HouseholderQR::householderQ </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

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

</div>
</div>
<a class="anchor" id="a73496e169b7e534953bdb4f8a2800a9c"></a><!-- doxytag: member="Eigen::HouseholderQR::logAbsDeterminant" ref="a73496e169b7e534953bdb4f8a2800a9c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">MatrixType::RealScalar Eigen::HouseholderQR::logAbsDeterminant </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the natural log of the absolute value of the determinant of the matrix of which *this is the QR decomposition. It has only linear complexity (that is, O(n) where n is the dimension of the square matrix) as the QR decomposition has already been computed.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>This is only for square matrices.</dd>
<dd>
This method is useful to work around the risk of overflow/underflow that's inherent to determinant computation.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_householder_q_r.html#a4ad5dfc4fb2375539ac74713dda3afb3">absDeterminant()</a>, <a class="el" href="class_eigen_1_1_matrix_base.html#aeaa1e616a5c11b439fcf23282f582c89">MatrixBase::determinant()</a> </dd></dl>

<p>Definition at line <a class="el" href="_q_r_source.html#l00196">196</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a89328ed69bc8a0ceb82f343d9ce1013b"></a><!-- doxytag: member="Eigen::HouseholderQR::matrixQR" ref="a89328ed69bc8a0ceb82f343d9ce1013b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a>&amp; Eigen::HouseholderQR::matrixQR </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>a reference to the matrix where the Householder QR decomposition is stored in a LAPACK-compatible way. </dd></dl>

<p>Definition at line <a class="el" href="_q_r_source.html#l00139">139</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a53ad0021bb4fb18bd40368d9ddddd214"></a><!-- doxytag: member="Eigen::HouseholderQR::rows" ref="a53ad0021bb4fb18bd40368d9ddddd214" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_householder_q_r.html#a54db7da9598ca6fadfe21bcdb9522834">Index</a> Eigen::HouseholderQR::rows </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

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

</div>
</div>
<a class="anchor" id="a4a6bea02fcfdf7380297606332c6fe6a"></a><!-- doxytag: member="Eigen::HouseholderQR::solve" ref="a4a6bea02fcfdf7380297606332c6fe6a" args="(const MatrixBase&lt; Rhs &gt; &amp;b) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Rhs &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const internal::solve_retval&lt;<a class="el" href="class_eigen_1_1_householder_q_r.html">HouseholderQR</a>, Rhs&gt; Eigen::HouseholderQR::solve </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_matrix_base.html">MatrixBase</a>&lt; Rhs &gt; &amp;&#160;</td>
          <td class="paramname"><em>b</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method finds a solution x to the equation Ax=b, where A is the matrix of which *this is the QR decomposition, if any exists. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">b</td><td>the right-hand-side of the equation to solve.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a solution.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>The case where b is a matrix is not yet implemented. Also, this code is space inefficient.</dd></dl>
<p>Example: </p>
<div class="fragment"><pre class="fragment"></pre></div><p> Output: </p>
<div class="fragment"><pre class="fragment"></pre></div> 
<p>Definition at line <a class="el" href="_q_r_source.html#l00124">124</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="ab47e710e2c8575317bad57b0bae99427"></a><!-- doxytag: member="Eigen::HouseholderQR::m_hCoeffs" ref="ab47e710e2c8575317bad57b0bae99427" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_householder_q_r.html#a20239f2785393963c1c099a6544a7f3a">HCoeffsType</a> <a class="el" href="class_eigen_1_1_householder_q_r.html#ab47e710e2c8575317bad57b0bae99427">Eigen::HouseholderQR::m_hCoeffs</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00182">182</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="a583a18017119ad8b400567427c731281"></a><!-- doxytag: member="Eigen::HouseholderQR::m_isInitialized" ref="a583a18017119ad8b400567427c731281" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_eigen_1_1_householder_q_r.html#a583a18017119ad8b400567427c731281">Eigen::HouseholderQR::m_isInitialized</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00184">184</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="ad4c37b05eae1a8002322ee9d38fc2d80"></a><!-- doxytag: member="Eigen::HouseholderQR::m_qr" ref="ad4c37b05eae1a8002322ee9d38fc2d80" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_householder_q_r.html#aed8a2f1de5ee24a7dd00984dd00cdecc">MatrixType</a> <a class="el" href="class_eigen_1_1_householder_q_r.html#ad4c37b05eae1a8002322ee9d38fc2d80">Eigen::HouseholderQR::m_qr</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00181">181</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
<a class="anchor" id="ac74098939dc2d96927bc2287f65dc9e7"></a><!-- doxytag: member="Eigen::HouseholderQR::m_temp" ref="ac74098939dc2d96927bc2287f65dc9e7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_householder_q_r.html#a04b30b09c2cd66282fe1527fb5200732">RowVectorType</a> <a class="el" href="class_eigen_1_1_householder_q_r.html#ac74098939dc2d96927bc2287f65dc9e7">Eigen::HouseholderQR::m_temp</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_q_r_source.html#l00183">183</a> of file <a class="el" href="_q_r_source.html">QR</a>.</p>

</div>
</div>
</div>
<br><hr><br> <table border="0" width="100%"> <tr> <td> Page generated by <a href="http://www.doxygen.org" target="_blank">Doxygen 1.7.5</a> for MRPT 0.9.5 SVN: at Sun Sep 25 17:20:18 UTC 2011</td><td></td> <td width="100"> </td> <td width="150">  </td></tr> </table>  </body></html>