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 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016 The GSL Team.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "GNU General Public License" and "Free Software
Needs Free Documentation", the Front-Cover text being "A GNU Manual",
and with the Back-Cover Text being (a) (see below). A copy of the
license is included in the section entitled "GNU Free Documentation
License".
(a) The Back-Cover Text is: "You have the freedom to copy and modify this
GNU Manual." -->
<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>GNU Scientific Library – Reference Manual: Complex Hermitian Matrices</title>
<meta name="description" content="GNU Scientific Library – Reference Manual: Complex Hermitian Matrices">
<meta name="keywords" content="GNU Scientific Library – Reference Manual: Complex Hermitian Matrices">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Function-Index.html#Function-Index" rel="index" title="Function Index">
<link href="Eigensystems.html#Eigensystems" rel="up" title="Eigensystems">
<link href="Real-Nonsymmetric-Matrices.html#Real-Nonsymmetric-Matrices" rel="next" title="Real Nonsymmetric Matrices">
<link href="Real-Symmetric-Matrices.html#Real-Symmetric-Matrices" rel="previous" title="Real Symmetric Matrices">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Complex-Hermitian-Matrices"></a>
<div class="header">
<p>
Next: <a href="Real-Nonsymmetric-Matrices.html#Real-Nonsymmetric-Matrices" accesskey="n" rel="next">Real Nonsymmetric Matrices</a>, Previous: <a href="Real-Symmetric-Matrices.html#Real-Symmetric-Matrices" accesskey="p" rel="previous">Real Symmetric Matrices</a>, Up: <a href="Eigensystems.html#Eigensystems" accesskey="u" rel="up">Eigensystems</a> [<a href="Function-Index.html#Function-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Complex-Hermitian-Matrices-1"></a>
<h3 class="section">15.2 Complex Hermitian Matrices</h3>
<p>For hermitian matrices, the library uses the complex form of
the symmetric bidiagonalization and QR reduction method.
</p>
<a name="index-hermitian-matrix_002c-complex_002c-eigensystem"></a>
<a name="index-complex-hermitian-matrix_002c-eigensystem"></a>
<dl>
<dt><a name="index-gsl_005feigen_005fherm_005falloc"></a>Function: <em>gsl_eigen_herm_workspace *</em> <strong>gsl_eigen_herm_alloc</strong> <em>(const size_t <var>n</var>)</em></dt>
<dd><a name="index-gsl_005feigen_005fherm_005fworkspace"></a>
<p>This function allocates a workspace for computing eigenvalues of
<var>n</var>-by-<var>n</var> complex hermitian matrices. The size of the workspace
is <em>O(3n)</em>.
</p></dd></dl>
<dl>
<dt><a name="index-gsl_005feigen_005fherm_005ffree"></a>Function: <em>void</em> <strong>gsl_eigen_herm_free</strong> <em>(gsl_eigen_herm_workspace * <var>w</var>)</em></dt>
<dd><p>This function frees the memory associated with the workspace <var>w</var>.
</p></dd></dl>
<dl>
<dt><a name="index-gsl_005feigen_005fherm"></a>Function: <em>int</em> <strong>gsl_eigen_herm</strong> <em>(gsl_matrix_complex * <var>A</var>, gsl_vector * <var>eval</var>, gsl_eigen_herm_workspace * <var>w</var>)</em></dt>
<dd><p>This function computes the eigenvalues of the complex hermitian matrix
<var>A</var>. Additional workspace of the appropriate size must be provided
in <var>w</var>. The diagonal and lower triangular part of <var>A</var> are
destroyed during the computation, but the strict upper triangular part
is not referenced. The imaginary parts of the diagonal are assumed to be
zero and are not referenced. The eigenvalues are stored in the vector
<var>eval</var> and are unordered.
</p></dd></dl>
<dl>
<dt><a name="index-gsl_005feigen_005fhermv_005falloc"></a>Function: <em>gsl_eigen_hermv_workspace *</em> <strong>gsl_eigen_hermv_alloc</strong> <em>(const size_t <var>n</var>)</em></dt>
<dd><a name="index-gsl_005feigen_005fhermv_005fworkspace"></a>
<p>This function allocates a workspace for computing eigenvalues and
eigenvectors of <var>n</var>-by-<var>n</var> complex hermitian matrices. The size of
the workspace is <em>O(5n)</em>.
</p></dd></dl>
<dl>
<dt><a name="index-gsl_005feigen_005fhermv_005ffree"></a>Function: <em>void</em> <strong>gsl_eigen_hermv_free</strong> <em>(gsl_eigen_hermv_workspace * <var>w</var>)</em></dt>
<dd><p>This function frees the memory associated with the workspace <var>w</var>.
</p></dd></dl>
<dl>
<dt><a name="index-gsl_005feigen_005fhermv"></a>Function: <em>int</em> <strong>gsl_eigen_hermv</strong> <em>(gsl_matrix_complex * <var>A</var>, gsl_vector * <var>eval</var>, gsl_matrix_complex * <var>evec</var>, gsl_eigen_hermv_workspace * <var>w</var>)</em></dt>
<dd><p>This function computes the eigenvalues and eigenvectors of the complex
hermitian matrix <var>A</var>. Additional workspace of the appropriate size
must be provided in <var>w</var>. The diagonal and lower triangular part of
<var>A</var> are destroyed during the computation, but the strict upper
triangular part is not referenced. The imaginary parts of the diagonal
are assumed to be zero and are not referenced. The eigenvalues are
stored in the vector <var>eval</var> and are unordered. The corresponding
complex eigenvectors are stored in the columns of the matrix <var>evec</var>.
For example, the eigenvector in the first column corresponds to the
first eigenvalue. The eigenvectors are guaranteed to be mutually
orthogonal and normalised to unit magnitude.
</p></dd></dl>
<hr>
<div class="header">
<p>
Next: <a href="Real-Nonsymmetric-Matrices.html#Real-Nonsymmetric-Matrices" accesskey="n" rel="next">Real Nonsymmetric Matrices</a>, Previous: <a href="Real-Symmetric-Matrices.html#Real-Symmetric-Matrices" accesskey="p" rel="previous">Real Symmetric Matrices</a>, Up: <a href="Eigensystems.html#Eigensystems" accesskey="u" rel="up">Eigensystems</a> [<a href="Function-Index.html#Function-Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|