1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta name="robots" content="none">
<title>QuantLib: SymmetricSchurDecomposition Class Reference</title>
<link rel="stylesheet" href="quantlib.css" type="text/css">
<link rel="stylesheet" href="print.css" type="text/css" media="print">
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<link rel="icon" href="favicon.ico" type="image/x-icon">
</head>
<body>
<div id="container">
<div id="header">
<img class="titleimage"
src="QL-title.jpg" width="212" height="47" border="0"
alt="QuantLib">
<br>
<h3 class="subtitle">A free/open-source library for quantitative finance</h3>
</div>
<div id="menu">
<h3 class="navbartitle">Version 0.9.0</h3>
<hr>
<h3 class="navbartitle">Getting started</h3>
<ul class="navbarlist">
<li class="navlink"><a href="index.html">Introduction</a></li>
<li class="navlink"><a href="overview.html">Project overview</a></li>
<li class="navlink"><a href="where.html">Where to get QuantLib</a></li>
<li class="navlink"><a href="install.html">Installation</a></li>
<li class="navlink"><a href="config.html">Configuration</a></li>
<li class="navlink"><a href="usage.html">Usage</a></li>
<li class="navlink"><a href="history.html">Version history</a></li>
<li class="navlink"><a href="resources.html">Additional resources</a></li>
<li class="navlink"><a href="group.html">The QuantLib group</a></li>
<li class="navlink"><a href="license.html">Copyright and license</a></li>
</ul>
<hr>
<h3 class="navbartitle">Reference manual</h3>
<ul class="navbarlist">
<li class="navlink"><a href="modules.html">Modules</a></li>
<li class="navlink"><a href="hierarchy.html">Class Hierarchy</a></li>
<li class="navlink"><a href="annotated.html">Compound List</a></li>
<li class="navlink"><a href="files.html">File List</a></li>
<li class="navlink"><a href="functions.html">Compound Members</a></li>
<li class="navlink"><a href="globals.html">File Members</a></li>
<li class="navlink"><a href="bug.html">Known Bugs</a></li>
<li class="navlink"><a href="caveats.html">Caveats</a></li>
<li class="navlink"><a href="test.html">Test Suite</a></li>
<li class="navlink"><a href="examples.html">Examples</a></li>
</ul>
</div>
<div id="content">
<!--Doxygen-generated content-->
<!-- Generated by Doxygen 1.5.4 -->
<div class="nav">
<a class="el" href="namespace_quant_lib.html">QuantLib</a>::<a class="el" href="class_quant_lib_1_1_symmetric_schur_decomposition.html">SymmetricSchurDecomposition</a></div>
<h1>SymmetricSchurDecomposition Class Reference</h1><!-- doxytag: class="QuantLib::SymmetricSchurDecomposition" --><code>#include <ql/math/matrixutilities/symmetricschurdecomposition.hpp></code>
<p>
<p>
<a href="class_quant_lib_1_1_symmetric_schur_decomposition-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
symmetric threshold Jacobi algorithm.
<p>
Given a real symmetric matrix S, the Schur decomposition finds the eigenvalues and eigenvectors of S. If D is the diagonal matrix formed by the eigenvalues and U the unitarian matrix of the eigenvectors we can write the Schur decomposition as <p class="formulaDsp">
<img class="formulaDsp" alt="\[ S = U \cdot D \cdot U^T \, ,\]" src="form_145.png">
<p>
where <img class="formulaInl" alt="$ \cdot $" src="form_146.png"> is the standard matrix product and <img class="formulaInl" alt="$ ^T $" src="form_147.png"> is the transpose operator. This class implements the Schur decomposition using the symmetric threshold Jacobi algorithm. For details on the different Jacobi transfomations see "Matrix computation," second edition, by Golub and Van Loan, The Johns Hopkins University Press<p>
<dl compact><dt><b><a class="el" href="test.html#_test000039">Tests:</a></b></dt><dd>the correctness of the returned values is tested by checking their properties. </dd></dl>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_symmetric_schur_decomposition.html#43ff4c0e9abb6877c224127f7b70e8e6">SymmetricSchurDecomposition</a> (const <a class="el" href="class_quant_lib_1_1_matrix.html">Matrix</a> &s)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb9833fe31a4739b5075f2a4cbd5dddd"></a><!-- doxytag: member="QuantLib::SymmetricSchurDecomposition::eigenvalues" ref="eb9833fe31a4739b5075f2a4cbd5dddd" args="() const " -->
const <a class="el" href="class_quant_lib_1_1_array.html">Array</a> & </td><td class="memItemRight" valign="bottom"><b>eigenvalues</b> () const </td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="41aa0134fde9e36a14c3a0938903e4b1"></a><!-- doxytag: member="QuantLib::SymmetricSchurDecomposition::eigenvectors" ref="41aa0134fde9e36a14c3a0938903e4b1" args="() const " -->
const <a class="el" href="class_quant_lib_1_1_matrix.html">Matrix</a> & </td><td class="memItemRight" valign="bottom"><b>eigenvectors</b> () const </td></tr>
</table>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="43ff4c0e9abb6877c224127f7b70e8e6"></a><!-- doxytag: member="QuantLib::SymmetricSchurDecomposition::SymmetricSchurDecomposition" ref="43ff4c0e9abb6877c224127f7b70e8e6" args="(const Matrix &s)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_quant_lib_1_1_symmetric_schur_decomposition.html">SymmetricSchurDecomposition</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_quant_lib_1_1_matrix.html">Matrix</a> & </td>
<td class="paramname"> <em>s</em> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<dl class="pre" compact><dt><b>Precondition:</b></dt><dd>s must be symmetric </dd></dl>
</div>
</div><p>
</div>
<div class="footer">
<div class="endmatter">
Documentation generated by
<a href="http://www.doxygen.org">Doxygen</a> 1.5.4
</div>
</div>
</div>
</body>
</html>
|