Sophie

Sophie

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

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::ComplexSchur&lt; _MatrixType &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.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_complex_schur.html">ComplexSchur</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="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<div class="title">Eigen::ComplexSchur&lt; _MatrixType &gt; Class Template Reference<div class="ingroups"><a class="el" href="group___eigenvalues___module.html">Eigenvalues module</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="Eigen::ComplexSchur" --><hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename _MatrixType&gt;<br/>
class Eigen::ComplexSchur&lt; _MatrixType &gt;</h3>

<p>Performs a complex Schur decomposition of a real or complex square matrix</p>
<dl><dt><b>Template Parameters:</b></dt><dd>
  <table class="">
    <tr><td class="paramname">_MatrixType</td><td>the type of the matrix of which we are computing the Schur decomposition; this is expected to be an instantiation of the <a class="el" href="class_eigen_1_1_matrix.html" title="The matrix class, also used for vectors and row-vectors.">Matrix</a> class template.</td></tr>
  </table>
  </dd>
</dl>
<p>Given a real or complex square matrix A, this class computes the Schur decomposition: <img class="formulaInl" alt="$ A = U T U^*$" src="form_179.png"/> where U is a unitary complex matrix, and T is a complex upper triangular matrix. The diagonal of the matrix T corresponds to the eigenvalues of the matrix A.</p>
<p>Call the function <a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute()</a> to compute the Schur decomposition of a given matrix. Alternatively, you can use the <a class="el" href="class_eigen_1_1_complex_schur.html#a1b0fcd6cd17ba9cedbee8be7e785e2b1" title="Constructor; computes Schur decomposition of given matrix.">ComplexSchur(const MatrixType&amp;, bool)</a> constructor which computes the Schur decomposition at construction time. Once the decomposition is computed, you can use the <a class="el" href="class_eigen_1_1_complex_schur.html#a35fd4c307ddf74b10beeabb4caada216" title="Returns the unitary matrix in the Schur decomposition.">matrixU()</a> and <a class="el" href="class_eigen_1_1_complex_schur.html#a5c293f662b799b41a1ec09ecdc9a2349" title="Returns the triangular matrix in the Schur decomposition.">matrixT()</a> functions to retrieve the matrices U and V in the decomposition.</p>
<dl class="note"><dt><b>Note:</b></dt><dd>This code is inspired from Jampack</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd>class <a class="el" href="class_eigen_1_1_real_schur.html">RealSchur</a>, class <a class="el" href="class_eigen_1_1_eigen_solver.html">EigenSolver</a>, class <a class="el" href="class_eigen_1_1_complex_eigen_solver.html">ComplexEigenSolver</a> </dd></dl>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00065">65</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>
</div><div class="dynheader">
Inheritance diagram for Eigen::ComplexSchur&lt; _MatrixType &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="class_eigen_1_1_complex_schur__inherit__graph.png" border="0" usemap="#_eigen_1_1_complex_schur_3_01___matrix_type_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="_eigen_1_1_complex_schur_3_01___matrix_type_01_4_inherit__map" id="_eigen_1_1_complex_schur_3_01___matrix_type_01_4_inherit__map">
<area shape="rect" id="node3" href="class_eigen_1_1_complex_schur.html" title="Eigen::ComplexSchur\&lt; MatrixType \&gt;" alt="" coords="9,96,247,123"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="class_eigen_1_1_complex_schur-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_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a102c4388a61df3a16bc9b1095a6e8776">RowsAtCompileTime</a> =  MatrixType::RowsAtCompileTime, 
<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a87cf4bd36e906f00956b8b4d12dd88aa">ColsAtCompileTime</a> =  MatrixType::ColsAtCompileTime, 
<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a9b3ca28b1d868a31437c567014ba7d6b">Options</a> =  MatrixType::Options, 
<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a554a1d8b12d9845d6d660559e2ebb095">MaxRowsAtCompileTime</a> =  MatrixType::MaxRowsAtCompileTime, 
<br/>
&#160;&#160;<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691aa180efbba4b9a0dee3a597c36845569b">MaxColsAtCompileTime</a> =  MatrixType::MaxColsAtCompileTime
<br/>
 }</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_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a102c4388a61df3a16bc9b1095a6e8776">RowsAtCompileTime</a> =  MatrixType::RowsAtCompileTime, 
<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a87cf4bd36e906f00956b8b4d12dd88aa">ColsAtCompileTime</a> =  MatrixType::ColsAtCompileTime, 
<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a9b3ca28b1d868a31437c567014ba7d6b">Options</a> =  MatrixType::Options, 
<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691a554a1d8b12d9845d6d660559e2ebb095">MaxRowsAtCompileTime</a> =  MatrixType::MaxRowsAtCompileTime, 
<br/>
&#160;&#160;<a class="el" href="class_eigen_1_1_complex_schur.html#a4f14e3818c4777e109f2de0ba5ea9691aa180efbba4b9a0dee3a597c36845569b">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_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">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_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Scalar type for matrices of type <code>_MatrixType</code>.  <a href="#a9a8ee9df37ee1f90d0e53103c58683c0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a> &gt;::Real&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">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_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classstd_1_1complex.html">std::complex</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">RealScalar</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Complex scalar type for <code>_MatrixType</code>.  <a href="#ae1a4713b53f821867fbad617e426832a"></a><br/></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_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a>, <br class="typebreak"/>
RowsAtCompileTime, <br class="typebreak"/>
ColsAtCompileTime, Options, <br class="typebreak"/>
MaxRowsAtCompileTime, <br class="typebreak"/>
MaxColsAtCompileTime &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Type for the matrices in the Schur decomposition.  <a href="#af61fe57877d51cfb50178f78534042f0"></a><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_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">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_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Scalar type for matrices of type <code>_MatrixType</code>.  <a href="#a9a8ee9df37ee1f90d0e53103c58683c0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a> &gt;::Real&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">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_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classstd_1_1complex.html">std::complex</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">RealScalar</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Complex scalar type for <code>_MatrixType</code>.  <a href="#ae1a4713b53f821867fbad617e426832a"></a><br/></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_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a>, <br class="typebreak"/>
RowsAtCompileTime, <br class="typebreak"/>
ColsAtCompileTime, Options, <br class="typebreak"/>
MaxRowsAtCompileTime, <br class="typebreak"/>
MaxColsAtCompileTime &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Type for the matrices in the Schur decomposition.  <a href="#af61fe57877d51cfb50178f78534042f0"></a><br/></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_complex_schur.html#ad46790cda5b757225a309f90a8bd119b">ComplexSchur</a> (<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> size=RowsAtCompileTime==<a class="el" href="namespace_eigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a>?1:RowsAtCompileTime)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="#ad46790cda5b757225a309f90a8bd119b"></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_complex_schur.html#a1b0fcd6cd17ba9cedbee8be7e785e2b1">ComplexSchur</a> (const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;matrix, bool computeU=true)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor; computes Schur decomposition of given matrix.  <a href="#a1b0fcd6cd17ba9cedbee8be7e785e2b1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a35fd4c307ddf74b10beeabb4caada216">matrixU</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the unitary matrix in the Schur decomposition.  <a href="#a35fd4c307ddf74b10beeabb4caada216"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a5c293f662b799b41a1ec09ecdc9a2349">matrixT</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the triangular matrix in the Schur decomposition.  <a href="#a5c293f662b799b41a1ec09ecdc9a2349"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9">compute</a> (const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;matrix, bool computeU=true)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes Schur decomposition of given matrix.  <a href="#afc964634b01ff32380421eb3dc19bad9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_eigen.html#a85fad7b87587764e5cf6b513a9e0ee5e">ComputationInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#acc28b5ca309e5ef30c4ae3d55cdb2d5a">info</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reports whether previous computation was successful.  <a href="#acc28b5ca309e5ef30c4ae3d55cdb2d5a"></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_complex_schur.html#ad46790cda5b757225a309f90a8bd119b">ComplexSchur</a> (<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> size=RowsAtCompileTime==<a class="el" href="namespace_eigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a>?1:RowsAtCompileTime)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="#ad46790cda5b757225a309f90a8bd119b"></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_complex_schur.html#a1b0fcd6cd17ba9cedbee8be7e785e2b1">ComplexSchur</a> (const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;matrix, bool computeU=true)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor; computes Schur decomposition of given matrix.  <a href="#a1b0fcd6cd17ba9cedbee8be7e785e2b1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a35fd4c307ddf74b10beeabb4caada216">matrixU</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the unitary matrix in the Schur decomposition.  <a href="#a35fd4c307ddf74b10beeabb4caada216"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a5c293f662b799b41a1ec09ecdc9a2349">matrixT</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the triangular matrix in the Schur decomposition.  <a href="#a5c293f662b799b41a1ec09ecdc9a2349"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#ae32c422296bf082b0867ce1c2a495ad2">compute</a> (const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;matrix, bool computeU=true)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes Schur decomposition of given matrix.  <a href="#ae32c422296bf082b0867ce1c2a495ad2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_eigen.html#a85fad7b87587764e5cf6b513a9e0ee5e">ComputationInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#acc28b5ca309e5ef30c4ae3d55cdb2d5a">info</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Reports whether previous computation was successful.  <a href="#acc28b5ca309e5ef30c4ae3d55cdb2d5a"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a8a0ca7754f56cc4cecff0ae629bf6306">m_maxIterations</a> = 30</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum number of iterations.  <a href="#a8a0ca7754f56cc4cecff0ae629bf6306"></a><br/></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_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a1ae856aee520ee8fca06376fc7fd8b6a">m_matT</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a53fefee5d25b8853fbd0b2c4f0873a9a">m_matU</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hessenberg_decomposition.html">HessenbergDecomposition</a><br class="typebreak"/>
&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a826633db255957051d1a904498145746">m_hess</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_eigen.html#a85fad7b87587764e5cf6b513a9e0ee5e">ComputationInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#adb18a90a2087d7a89253275d311418c6">m_info</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_complex_schur.html#a48e29539f604b170a3e757f5cbeeb818">m_isInitialized</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_complex_schur.html#a8a6b06445c8c2a10191052880cadb7cd">m_matUisUptodate</a></td></tr>
<tr><td colspan="2"><h2><a name="pri-methods"></a>
Private Member Functions</h2></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_complex_schur.html#ab9c698aac87cd5baa067045cd4b5bdaa">subdiagonalEntryIsNeglegible</a> (<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> i)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">If m_matT(i+1,i) is neglegible in floating point arithmetic compared to m_matT(i,i) and m_matT(j,j), then set it to zero and return true, else return false.  <a href="#ab9c698aac87cd5baa067045cd4b5bdaa"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#ad237355f8b2d204b1eca19158a469837">computeShift</a> (<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> iu, <a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> iter)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the shift in the current QR iteration.  <a href="#ad237355f8b2d204b1eca19158a469837"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a57ef0baf828122eccaa9b8a74ea5d14b">reduceToTriangularForm</a> (bool computeU)</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_complex_schur.html#a993eba690f56427fc32778ec094242a0">subdiagonalEntryIsNeglegible</a> (<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> i)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a62b40cd82f023b0ed3c11c4e3091bd44">computeShift</a> (<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> iu, <a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a> iter)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#a145529df2a44f67e2f08e02825e02a49">reduceToTriangularForm</a> (bool computeU)</td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_complex_schur.html#ad25f2162da857c1114ed0383648a7728">internal::complex_schur_reduce_to_hessenberg&lt; MatrixType, NumTraits&lt; Scalar &gt;::IsComplex &gt;</a></td></tr>
</table>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="af61fe57877d51cfb50178f78534042f0"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexMatrixType" ref="af61fe57877d51cfb50178f78534042f0" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <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_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a>, RowsAtCompileTime, ColsAtCompileTime, Options, MaxRowsAtCompileTime, MaxColsAtCompileTime&gt; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Type for the matrices in the Schur decomposition. </p>
<p>This is a square matrix with entries of type <a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a" title="Complex scalar type for _MatrixType.">ComplexScalar</a>. The size is the same as the size of <code>_MatrixType</code>. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00095">95</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="af61fe57877d51cfb50178f78534042f0"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexMatrixType" ref="af61fe57877d51cfb50178f78534042f0" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <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_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a>, RowsAtCompileTime, ColsAtCompileTime, Options, MaxRowsAtCompileTime, MaxColsAtCompileTime&gt; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Type for the matrices in the Schur decomposition. </p>
<p>This is a square matrix with entries of type <a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a" title="Complex scalar type for _MatrixType.">ComplexScalar</a>. The size is the same as the size of <code>_MatrixType</code>. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00095">95</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="ae1a4713b53f821867fbad617e426832a"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexScalar" ref="ae1a4713b53f821867fbad617e426832a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classstd_1_1complex.html">std::complex</a>&lt;<a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">RealScalar</a>&gt; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Complex scalar type for <code>_MatrixType</code>. </p>
<p>This is <code>std::complex&lt;Scalar&gt;</code> if <a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0" title="Scalar type for matrices of type _MatrixType.">Scalar</a> is real (e.g., <code>float</code> or <code>double</code>) and just <code>Scalar</code> if <a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0" title="Scalar type for matrices of type _MatrixType.">Scalar</a> is complex. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00088">88</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="ae1a4713b53f821867fbad617e426832a"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexScalar" ref="ae1a4713b53f821867fbad617e426832a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classstd_1_1complex.html">std::complex</a>&lt;<a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">RealScalar</a>&gt; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Complex scalar type for <code>_MatrixType</code>. </p>
<p>This is <code>std::complex&lt;Scalar&gt;</code> if <a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0" title="Scalar type for matrices of type _MatrixType.">Scalar</a> is real (e.g., <code>float</code> or <code>double</code>) and just <code>Scalar</code> if <a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0" title="Scalar type for matrices of type _MatrixType.">Scalar</a> is complex. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00088">88</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a3a6e064d7dd0916ee26f85ce1e09c187"></a><!-- doxytag: member="Eigen::ComplexSchur::Index" ref="a3a6e064d7dd0916ee26f85ce1e09c187" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef MatrixType::Index <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00080">80</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a3a6e064d7dd0916ee26f85ce1e09c187"></a><!-- doxytag: member="Eigen::ComplexSchur::Index" ref="a3a6e064d7dd0916ee26f85ce1e09c187" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef MatrixType::Index <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00080">80</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="afb9e799fdea51d173e310c82d80d5947"></a><!-- doxytag: member="Eigen::ComplexSchur::MatrixType" ref="afb9e799fdea51d173e310c82d80d5947" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef _MatrixType <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

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

</div>
</div>
<a class="anchor" id="afb9e799fdea51d173e310c82d80d5947"></a><!-- doxytag: member="Eigen::ComplexSchur::MatrixType" ref="afb9e799fdea51d173e310c82d80d5947" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef _MatrixType <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

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

</div>
</div>
<a class="anchor" id="a360081b7ad59db28b9955dea3e4b7dd7"></a><!-- doxytag: member="Eigen::ComplexSchur::RealScalar" ref="a360081b7ad59db28b9955dea3e4b7dd7" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt;<a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a>&gt;::Real <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">RealScalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00079">79</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a360081b7ad59db28b9955dea3e4b7dd7"></a><!-- doxytag: member="Eigen::ComplexSchur::RealScalar" ref="a360081b7ad59db28b9955dea3e4b7dd7" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt;<a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a>&gt;::Real <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a360081b7ad59db28b9955dea3e4b7dd7">RealScalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00079">79</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a9a8ee9df37ee1f90d0e53103c58683c0"></a><!-- doxytag: member="Eigen::ComplexSchur::Scalar" ref="a9a8ee9df37ee1f90d0e53103c58683c0" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef MatrixType::Scalar <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Scalar type for matrices of type <code>_MatrixType</code>. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00078">78</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a9a8ee9df37ee1f90d0e53103c58683c0"></a><!-- doxytag: member="Eigen::ComplexSchur::Scalar" ref="a9a8ee9df37ee1f90d0e53103c58683c0" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef MatrixType::Scalar <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Scalar type for matrices of type <code>_MatrixType</code>. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00078">78</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a848067d1a41908a4d9e8cca6fcdfafbf"></a><!-- doxytag: member="Eigen::ComplexSchur::@344" ref="a848067d1a41908a4d9e8cca6fcdfafbf" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <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="a4f14e3818c4777e109f2de0ba5ea9691a102c4388a61df3a16bc9b1095a6e8776"></a><!-- doxytag: member="RowsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691a102c4388a61df3a16bc9b1095a6e8776" args="" -->RowsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691a87cf4bd36e906f00956b8b4d12dd88aa"></a><!-- doxytag: member="ColsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691a87cf4bd36e906f00956b8b4d12dd88aa" args="" -->ColsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691a9b3ca28b1d868a31437c567014ba7d6b"></a><!-- doxytag: member="Options" ref="a4f14e3818c4777e109f2de0ba5ea9691a9b3ca28b1d868a31437c567014ba7d6b" args="" -->Options</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691a554a1d8b12d9845d6d660559e2ebb095"></a><!-- doxytag: member="MaxRowsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691a554a1d8b12d9845d6d660559e2ebb095" args="" -->MaxRowsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691aa180efbba4b9a0dee3a597c36845569b"></a><!-- doxytag: member="MaxColsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691aa180efbba4b9a0dee3a597c36845569b" args="" -->MaxColsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

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

</div>
</div>
<a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691"></a><!-- doxytag: member="Eigen::ComplexSchur::@346" ref="a4f14e3818c4777e109f2de0ba5ea9691" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <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="a4f14e3818c4777e109f2de0ba5ea9691a102c4388a61df3a16bc9b1095a6e8776"></a><!-- doxytag: member="RowsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691a102c4388a61df3a16bc9b1095a6e8776" args="" -->RowsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691a87cf4bd36e906f00956b8b4d12dd88aa"></a><!-- doxytag: member="ColsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691a87cf4bd36e906f00956b8b4d12dd88aa" args="" -->ColsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691a9b3ca28b1d868a31437c567014ba7d6b"></a><!-- doxytag: member="Options" ref="a4f14e3818c4777e109f2de0ba5ea9691a9b3ca28b1d868a31437c567014ba7d6b" args="" -->Options</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691a554a1d8b12d9845d6d660559e2ebb095"></a><!-- doxytag: member="MaxRowsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691a554a1d8b12d9845d6d660559e2ebb095" args="" -->MaxRowsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a4f14e3818c4777e109f2de0ba5ea9691aa180efbba4b9a0dee3a597c36845569b"></a><!-- doxytag: member="MaxColsAtCompileTime" ref="a4f14e3818c4777e109f2de0ba5ea9691aa180efbba4b9a0dee3a597c36845569b" args="" -->MaxColsAtCompileTime</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

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

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ad46790cda5b757225a309f90a8bd119b"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexSchur" ref="ad46790cda5b757225a309f90a8bd119b" args="(Index size=RowsAtCompileTime==Dynamic?1:RowsAtCompileTime)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>size</em> = <code>RowsAtCompileTime==<a class="el" href="namespace_eigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a>&#160;?&#160;1&#160;:&#160;RowsAtCompileTime</code></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Positive integer, size of the matrix whose Schur decomposition will be computed.</td></tr>
  </table>
  </dd>
</dl>
<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_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute()</a>. The <code>size</code> parameter is only used as a hint. It is not an error to give a wrong <code>size</code>, but it may impair performance.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute()</a> for an example. </dd></dl>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00108">108</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a1b0fcd6cd17ba9cedbee8be7e785e2b1"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexSchur" ref="a1b0fcd6cd17ba9cedbee8be7e785e2b1" args="(const MatrixType &amp;matrix, bool computeU=true)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;&#160;</td>
          <td class="paramname"><em>matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>computeU</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor; computes Schur decomposition of given matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">matrix</td><td>Square matrix whose Schur decomposition is to be computed. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">computeU</td><td>If true, both T and U are computed; if false, only T is computed.</td></tr>
  </table>
  </dd>
</dl>
<p>This constructor calls <a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute()</a> to compute the Schur decomposition.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_complex_schur.html#a5c293f662b799b41a1ec09ecdc9a2349" title="Returns the triangular matrix in the Schur decomposition.">matrixT()</a> and <a class="el" href="class_eigen_1_1_complex_schur.html#a35fd4c307ddf74b10beeabb4caada216" title="Returns the unitary matrix in the Schur decomposition.">matrixU()</a> for examples. </dd></dl>

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

</div>
</div>
<a class="anchor" id="ad46790cda5b757225a309f90a8bd119b"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexSchur" ref="ad46790cda5b757225a309f90a8bd119b" args="(Index size=RowsAtCompileTime==Dynamic?1:RowsAtCompileTime)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>size</em> = <code>RowsAtCompileTime==<a class="el" href="namespace_eigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a>&#160;?&#160;1&#160;:&#160;RowsAtCompileTime</code></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Positive integer, size of the matrix whose Schur decomposition will be computed.</td></tr>
  </table>
  </dd>
</dl>
<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_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute()</a>. The <code>size</code> parameter is only used as a hint. It is not an error to give a wrong <code>size</code>, but it may impair performance.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute()</a> for an example. </dd></dl>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00108">108</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a1b0fcd6cd17ba9cedbee8be7e785e2b1"></a><!-- doxytag: member="Eigen::ComplexSchur::ComplexSchur" ref="a1b0fcd6cd17ba9cedbee8be7e785e2b1" args="(const MatrixType &amp;matrix, bool computeU=true)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;&#160;</td>
          <td class="paramname"><em>matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>computeU</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor; computes Schur decomposition of given matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">matrix</td><td>Square matrix whose Schur decomposition is to be computed. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">computeU</td><td>If true, both T and U are computed; if false, only T is computed.</td></tr>
  </table>
  </dd>
</dl>
<p>This constructor calls <a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute()</a> to compute the Schur decomposition.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_complex_schur.html#a5c293f662b799b41a1ec09ecdc9a2349" title="Returns the triangular matrix in the Schur decomposition.">matrixT()</a> and <a class="el" href="class_eigen_1_1_complex_schur.html#a35fd4c307ddf74b10beeabb4caada216" title="Returns the unitary matrix in the Schur decomposition.">matrixU()</a> for examples. </dd></dl>

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

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="afc964634b01ff32380421eb3dc19bad9"></a><!-- doxytag: member="Eigen::ComplexSchur::compute" ref="afc964634b01ff32380421eb3dc19bad9" args="(const MatrixType &amp;matrix, bool computeU=true)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename MatrixType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt; &amp; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt;::compute </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;&#160;</td>
          <td class="paramname"><em>matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>computeU</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes Schur decomposition of given matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">matrix</td><td>Square matrix whose Schur decomposition is to be computed. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">computeU</td><td>If true, both T and U are computed; if false, only T is computed. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Reference to <code>*this</code> </dd></dl>
<p>The Schur decomposition is computed by first reducing the matrix to Hessenberg form using the class <a class="el" href="class_eigen_1_1_hessenberg_decomposition.html">HessenbergDecomposition</a>. The Hessenberg matrix is then reduced to triangular form by performing QR iterations with a single shift. The cost of computing the Schur decomposition depends on the number of iterations; as a rough guide, it may be taken on the number of iterations; as a rough guide, it may be taken to be <img class="formulaInl" alt="$25n^3$" src="form_193.png"/> complex flops, or <img class="formulaInl" alt="$10n^3$" src="form_194.png"/> complex flops if <em>computeU</em> is false.</p>
<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="_eigenvalues_source.html#l00285">285</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="ae32c422296bf082b0867ce1c2a495ad2"></a><!-- doxytag: member="Eigen::ComplexSchur::compute" ref="ae32c422296bf082b0867ce1c2a495ad2" args="(const MatrixType &amp;matrix, bool computeU=true)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a>&amp; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::compute </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &amp;&#160;</td>
          <td class="paramname"><em>matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>computeU</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes Schur decomposition of given matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">matrix</td><td>Square matrix whose Schur decomposition is to be computed. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">computeU</td><td>If true, both T and U are computed; if false, only T is computed. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Reference to <code>*this</code> </dd></dl>
<p>The Schur decomposition is computed by first reducing the matrix to Hessenberg form using the class <a class="el" href="class_eigen_1_1_hessenberg_decomposition.html">HessenbergDecomposition</a>. The Hessenberg matrix is then reduced to triangular form by performing QR iterations with a single shift. The cost of computing the Schur decomposition depends on the number of iterations; as a rough guide, it may be taken on the number of iterations; as a rough guide, it may be taken to be <img class="formulaInl" alt="$25n^3$" src="form_193.png"/> complex flops, or <img class="formulaInl" alt="$10n^3$" src="form_194.png"/> complex flops if <em>computeU</em> is false.</p>
<p>Example: </p>
<div class="fragment"><pre class="fragment"></pre></div><p> Output: </p>
<div class="fragment"><pre class="fragment"></pre></div> 
</div>
</div>
<a class="anchor" id="ad237355f8b2d204b1eca19158a469837"></a><!-- doxytag: member="Eigen::ComplexSchur::computeShift" ref="ad237355f8b2d204b1eca19158a469837" args="(Index iu, Index iter)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename MatrixType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html">ComplexSchur</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a> <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt;::computeShift </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>iu</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>iter</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the shift in the current QR iteration. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00249">249</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a62b40cd82f023b0ed3c11c4e3091bd44"></a><!-- doxytag: member="Eigen::ComplexSchur::computeShift" ref="a62b40cd82f023b0ed3c11c4e3091bd44" args="(Index iu, Index iter)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html#ae1a4713b53f821867fbad617e426832a">ComplexScalar</a> <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::computeShift </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>iu</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>iter</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="acc28b5ca309e5ef30c4ae3d55cdb2d5a"></a><!-- doxytag: member="Eigen::ComplexSchur::info" ref="acc28b5ca309e5ef30c4ae3d55cdb2d5a" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespace_eigen.html#a85fad7b87587764e5cf6b513a9e0ee5e">ComputationInfo</a> <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::info </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reports whether previous computation was successful. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>Success</code> if computation was succesful, <code>NoConvergence</code> otherwise. </dd></dl>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00204">204</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="acc28b5ca309e5ef30c4ae3d55cdb2d5a"></a><!-- doxytag: member="Eigen::ComplexSchur::info" ref="acc28b5ca309e5ef30c4ae3d55cdb2d5a" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespace_eigen.html#a85fad7b87587764e5cf6b513a9e0ee5e">ComputationInfo</a> <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::info </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reports whether previous computation was successful. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>Success</code> if computation was succesful, <code>NoConvergence</code> otherwise. </dd></dl>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00204">204</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a5c293f662b799b41a1ec09ecdc9a2349"></a><!-- doxytag: member="Eigen::ComplexSchur::matrixT" ref="a5c293f662b799b41a1ec09ecdc9a2349" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a>&amp; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::matrixT </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the triangular matrix in the Schur decomposition. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>A const reference to the matrix T.</dd></dl>
<p>It is assumed that either the constructor <a class="el" href="class_eigen_1_1_complex_schur.html#a1b0fcd6cd17ba9cedbee8be7e785e2b1" title="Constructor; computes Schur decomposition of given matrix.">ComplexSchur(const MatrixType&amp; matrix, bool computeU)</a> or the member function <a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute(const MatrixType&amp; matrix, bool computeU)</a> has been called before to compute the Schur decomposition of a matrix.</p>
<p>Note that this function returns a plain square matrix. If you want to reference only the upper triangular part, use: </p>
<div class="fragment"><pre class="fragment"> schur.matrixT().triangularView&lt;<a class="code" href="group__enums.html#gga551bdecb88b22a20eac625ce98ca18a5afca2ccebb604f171656deb53e8c083c1" title="View matrix as an upper triangular matrix.">Upper</a>&gt;() 
</pre></div><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="_eigenvalues_source.html#l00173">173</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a5c293f662b799b41a1ec09ecdc9a2349"></a><!-- doxytag: member="Eigen::ComplexSchur::matrixT" ref="a5c293f662b799b41a1ec09ecdc9a2349" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a>&amp; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::matrixT </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the triangular matrix in the Schur decomposition. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>A const reference to the matrix T.</dd></dl>
<p>It is assumed that either the constructor <a class="el" href="class_eigen_1_1_complex_schur.html#a1b0fcd6cd17ba9cedbee8be7e785e2b1" title="Constructor; computes Schur decomposition of given matrix.">ComplexSchur(const MatrixType&amp; matrix, bool computeU)</a> or the member function <a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute(const MatrixType&amp; matrix, bool computeU)</a> has been called before to compute the Schur decomposition of a matrix.</p>
<p>Note that this function returns a plain square matrix. If you want to reference only the upper triangular part, use: </p>
<div class="fragment"><pre class="fragment"> schur.matrixT().triangularView&lt;<a class="code" href="group__enums.html#gga551bdecb88b22a20eac625ce98ca18a5afca2ccebb604f171656deb53e8c083c1" title="View matrix as an upper triangular matrix.">Upper</a>&gt;() 
</pre></div><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="_eigenvalues_source.html#l00173">173</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a35fd4c307ddf74b10beeabb4caada216"></a><!-- doxytag: member="Eigen::ComplexSchur::matrixU" ref="a35fd4c307ddf74b10beeabb4caada216" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a>&amp; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::matrixU </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the unitary matrix in the Schur decomposition. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>A const reference to the matrix U.</dd></dl>
<p>It is assumed that either the constructor <a class="el" href="class_eigen_1_1_complex_schur.html#a1b0fcd6cd17ba9cedbee8be7e785e2b1" title="Constructor; computes Schur decomposition of given matrix.">ComplexSchur(const MatrixType&amp; matrix, bool computeU)</a> or the member function <a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute(const MatrixType&amp; matrix, bool computeU)</a> has been called before to compute the Schur decomposition of a matrix, and that <code>computeU</code> was set to true (the default value).</p>
<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="_eigenvalues_source.html#l00149">149</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a35fd4c307ddf74b10beeabb4caada216"></a><!-- doxytag: member="Eigen::ComplexSchur::matrixU" ref="a35fd4c307ddf74b10beeabb4caada216" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a>&amp; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::matrixU </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the unitary matrix in the Schur decomposition. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>A const reference to the matrix U.</dd></dl>
<p>It is assumed that either the constructor <a class="el" href="class_eigen_1_1_complex_schur.html#a1b0fcd6cd17ba9cedbee8be7e785e2b1" title="Constructor; computes Schur decomposition of given matrix.">ComplexSchur(const MatrixType&amp; matrix, bool computeU)</a> or the member function <a class="el" href="class_eigen_1_1_complex_schur.html#afc964634b01ff32380421eb3dc19bad9" title="Computes Schur decomposition of given matrix.">compute(const MatrixType&amp; matrix, bool computeU)</a> has been called before to compute the Schur decomposition of a matrix, and that <code>computeU</code> was set to true (the default value).</p>
<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="_eigenvalues_source.html#l00149">149</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a145529df2a44f67e2f08e02825e02a49"></a><!-- doxytag: member="Eigen::ComplexSchur::reduceToTriangularForm" ref="a145529df2a44f67e2f08e02825e02a49" args="(bool computeU)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::reduceToTriangularForm </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>computeU</em></td><td>)</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a57ef0baf828122eccaa9b8a74ea5d14b"></a><!-- doxytag: member="Eigen::ComplexSchur::reduceToTriangularForm" ref="a57ef0baf828122eccaa9b8a74ea5d14b" args="(bool computeU)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename MatrixType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt;::reduceToTriangularForm </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>computeU</em></td><td>)</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00344">344</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="ab9c698aac87cd5baa067045cd4b5bdaa"></a><!-- doxytag: member="Eigen::ComplexSchur::subdiagonalEntryIsNeglegible" ref="ab9c698aac87cd5baa067045cd4b5bdaa" args="(Index i)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename MatrixType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt;::subdiagonalEntryIsNeglegible </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td><code> [inline, private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If m_matT(i+1,i) is neglegible in floating point arithmetic compared to m_matT(i,i) and m_matT(j,j), then set it to zero and return true, else return false. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00234">234</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a993eba690f56427fc32778ec094242a0"></a><!-- doxytag: member="Eigen::ComplexSchur::subdiagonalEntryIsNeglegible" ref="a993eba690f56427fc32778ec094242a0" args="(Index i)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::subdiagonalEntryIsNeglegible </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_complex_schur.html#a3a6e064d7dd0916ee26f85ce1e09c187">Index</a>&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="ad25f2162da857c1114ed0383648a7728"></a><!-- doxytag: member="Eigen::ComplexSchur::internal::complex_schur_reduce_to_hessenberg&lt; MatrixType, NumTraits&lt; Scalar &gt;::IsComplex &gt;" ref="ad25f2162da857c1114ed0383648a7728" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">friend struct <a class="el" href="struct_eigen_1_1internal_1_1complex__schur__reduce__to__hessenberg.html">internal::complex_schur_reduce_to_hessenberg</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a>, <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#a9a8ee9df37ee1f90d0e53103c58683c0">Scalar</a> &gt;::IsComplex &gt;<code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00227">227</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a826633db255957051d1a904498145746"></a><!-- doxytag: member="Eigen::ComplexSchur::m_hess" ref="a826633db255957051d1a904498145746" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hessenberg_decomposition.html">HessenbergDecomposition</a>&lt; <a class="el" href="class_eigen_1_1_complex_schur.html#afb9e799fdea51d173e310c82d80d5947">MatrixType</a> &gt; <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a826633db255957051d1a904498145746">m_hess</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00218">218</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="adb18a90a2087d7a89253275d311418c6"></a><!-- doxytag: member="Eigen::ComplexSchur::m_info" ref="adb18a90a2087d7a89253275d311418c6" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespace_eigen.html#a85fad7b87587764e5cf6b513a9e0ee5e">ComputationInfo</a> <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#adb18a90a2087d7a89253275d311418c6">m_info</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00219">219</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a48e29539f604b170a3e757f5cbeeb818"></a><!-- doxytag: member="Eigen::ComplexSchur::m_isInitialized" ref="a48e29539f604b170a3e757f5cbeeb818" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a48e29539f604b170a3e757f5cbeeb818">m_isInitialized</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00220">220</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a1ae856aee520ee8fca06376fc7fd8b6a"></a><!-- doxytag: member="Eigen::ComplexSchur::m_matT" ref="a1ae856aee520ee8fca06376fc7fd8b6a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a> <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a1ae856aee520ee8fca06376fc7fd8b6a">m_matT</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00217">217</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a53fefee5d25b8853fbd0b2c4f0873a9a"></a><!-- doxytag: member="Eigen::ComplexSchur::m_matU" ref="a53fefee5d25b8853fbd0b2c4f0873a9a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_complex_schur.html#af61fe57877d51cfb50178f78534042f0">ComplexMatrixType</a> <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a53fefee5d25b8853fbd0b2c4f0873a9a">m_matU</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00217">217</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a8a6b06445c8c2a10191052880cadb7cd"></a><!-- doxytag: member="Eigen::ComplexSchur::m_matUisUptodate" ref="a8a6b06445c8c2a10191052880cadb7cd" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a8a6b06445c8c2a10191052880cadb7cd">m_matUisUptodate</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00221">221</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</a>.</p>

</div>
</div>
<a class="anchor" id="a8a0ca7754f56cc4cecff0ae629bf6306"></a><!-- doxytag: member="Eigen::ComplexSchur::m_maxIterations" ref="a8a0ca7754f56cc4cecff0ae629bf6306" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _MatrixType&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">static const int <a class="el" href="class_eigen_1_1_complex_schur.html">Eigen::ComplexSchur</a>&lt; _MatrixType &gt;::<a class="el" href="class_eigen_1_1_complex_schur.html#a8a0ca7754f56cc4cecff0ae629bf6306">m_maxIterations</a> = 30<code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Maximum number of iterations. </p>
<p>Maximum number of iterations allowed for an eigenvalue to converge. </p>

<p>Definition at line <a class="el" href="_eigenvalues_source.html#l00214">214</a> of file <a class="el" href="_eigenvalues_source.html">Eigenvalues</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>