root/doc/html/matfunc_8h.html @ 353

Revision 353, 34.0 kB (checked in by smidl, 16 years ago)

doc

RevLine 
[353]1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3<title>mixpp: matfunc.h File Reference</title>
4<link href="tabs.css" rel="stylesheet" type="text/css">
5<link href="doxygen.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.5.8 -->
8<script type="text/javascript">
9<!--
10function changeDisplayState (e){
11  var num=this.id.replace(/[^[0-9]/g,'');
12  var button=this.firstChild;
13  var sectionDiv=document.getElementById('dynsection'+num);
14  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
15    sectionDiv.style.display='block';
16    button.src='open.gif';
17  }else{
18    sectionDiv.style.display='none';
19    button.src='closed.gif';
20  }
21}
22function initDynSections(){
23  var divs=document.getElementsByTagName('div');
24  var sectionCounter=1;
25  for(var i=0;i<divs.length-1;i++){
26    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
27      var header=divs[i];
28      var section=divs[i+1];
29      var button=header.firstChild;
30      if (button!='IMG'){
31        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
32        button=document.createElement('img');
33        divs[i].insertBefore(button,divs[i].firstChild);
34      }
35      header.style.cursor='pointer';
36      header.onclick=changeDisplayState;
37      header.id='dynheader'+sectionCounter;
38      button.src='closed.gif';
39      section.id='dynsection'+sectionCounter;
40      section.style.display='none';
41      section.style.marginLeft='14px';
42      sectionCounter++;
43    }
44  }
45}
46window.onload = initDynSections;
47-->
48</script>
49<div class="navigation" id="top">
50  <div class="tabs">
51    <ul>
52      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
53      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
54      <li><a href="modules.html"><span>Modules</span></a></li>
55      <li><a href="annotated.html"><span>Classes</span></a></li>
56      <li class="current"><a href="files.html"><span>Files</span></a></li>
57    </ul>
58  </div>
59  <div class="tabs">
60    <ul>
61      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
62      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
63    </ul>
64  </div>
65</div>
66<div class="contents">
67<h1>matfunc.h File Reference</h1>Various functions on vectors and matrices - header file. 
68<a href="#_details">More...</a>
69<p>
70<code>#include &lt;<a class="el" href="mat_8h-source.html">itpp/base/mat.h</a>&gt;</code><br>
71<code>#include &lt;<a class="el" href="log__exp_8h-source.html">itpp/base/math/log_exp.h</a>&gt;</code><br>
72<code>#include &lt;<a class="el" href="elem__math_8h-source.html">itpp/base/math/elem_math.h</a>&gt;</code><br>
73<code>#include &lt;<a class="el" href="inv_8h-source.html">itpp/base/algebra/inv.h</a>&gt;</code><br>
74<code>#include &lt;<a class="el" href="svd_8h-source.html">itpp/base/algebra/svd.h</a>&gt;</code><br>
75
76<p>
77<a href="matfunc_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
78<tr><td></td></tr>
79<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
80<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g97bb6b35d6d4c683c7558842e4500c2d"></a><!-- doxytag: member="matfunc.h::length" ref="g97bb6b35d6d4c683c7558842e4500c2d" args="(const Vec&lt; T &gt; &amp;v)" -->
81template&lt;class T &gt; </td></tr>
82<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g97bb6b35d6d4c683c7558842e4500c2d">itpp::length</a> (const Vec&lt; T &gt; &amp;v)</td></tr>
83
84<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Length of vector. <br></td></tr>
85<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g3c1a2b0972c6a8e1215eb3f76d7c7512"></a><!-- doxytag: member="matfunc.h::size" ref="g3c1a2b0972c6a8e1215eb3f76d7c7512" args="(const Vec&lt; T &gt; &amp;v)" -->
86template&lt;class T &gt; </td></tr>
87<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g3c1a2b0972c6a8e1215eb3f76d7c7512">itpp::size</a> (const Vec&lt; T &gt; &amp;v)</td></tr>
88
89<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Length of vector. <br></td></tr>
90<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g8b3dcc61484fce58ee4244d5731e18fa"></a><!-- doxytag: member="matfunc.h::sum" ref="g8b3dcc61484fce58ee4244d5731e18fa" args="(const Vec&lt; T &gt; &amp;v)" -->
91template&lt;class T &gt; </td></tr>
92<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g8b3dcc61484fce58ee4244d5731e18fa">itpp::sum</a> (const Vec&lt; T &gt; &amp;v)</td></tr>
93
94<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sum of all elements in the vector. <br></td></tr>
95<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
96<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gfcf8f54c2f4fc257bbc3111700b08355">itpp::sum</a> (const Mat&lt; T &gt; &amp;m, int dim=1)</td></tr>
97
98<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sum of elements in the matrix <code>m</code>, either along columns or rows.  <a href="group__matrix__functions.html#gfcf8f54c2f4fc257bbc3111700b08355"></a><br></td></tr>
99<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g81a7516f7fb453dcb623ad6d4c89a5b7"></a><!-- doxytag: member="matfunc.h::sumsum" ref="g81a7516f7fb453dcb623ad6d4c89a5b7" args="(const Mat&lt; T &gt; &amp;X)" -->
100template&lt;class T &gt; </td></tr>
101<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g81a7516f7fb453dcb623ad6d4c89a5b7">itpp::sumsum</a> (const Mat&lt; T &gt; &amp;X)</td></tr>
102
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sum of all elements in the given matrix. Fast version of sum(sum(X)). <br></td></tr>
104<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gc6a1b0e0af40f95bc636ce039c8f1a0f"></a><!-- doxytag: member="matfunc.h::sum_sqr" ref="gc6a1b0e0af40f95bc636ce039c8f1a0f" args="(const Vec&lt; T &gt; &amp;v)" -->
105template&lt;class T &gt; </td></tr>
106<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gc6a1b0e0af40f95bc636ce039c8f1a0f">itpp::sum_sqr</a> (const Vec&lt; T &gt; &amp;v)</td></tr>
107
108<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sum of square of the elements in a vector. <br></td></tr>
109<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
110<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g4c81137a6b9b989a0c5a36972885c1e6">itpp::sum_sqr</a> (const Mat&lt; T &gt; &amp;m, int dim=1)</td></tr>
111
112<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sum of the square of elements in the matrix <code>m</code><a href="group__matrix__functions.html#g4c81137a6b9b989a0c5a36972885c1e6"></a><br></td></tr>
113<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g1609c616b581628be87a4faca7778f54"></a><!-- doxytag: member="matfunc.h::cumsum" ref="g1609c616b581628be87a4faca7778f54" args="(const Vec&lt; T &gt; &amp;v)" -->
114template&lt;class T &gt; </td></tr>
115<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g1609c616b581628be87a4faca7778f54">itpp::cumsum</a> (const Vec&lt; T &gt; &amp;v)</td></tr>
116
117<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cumulative sum of all elements in the vector. <br></td></tr>
118<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
119<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g6b5efcaa7c61e429326f4e6e56f11655">itpp::cumsum</a> (const Mat&lt; T &gt; &amp;m, int dim=1)</td></tr>
120
121<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cumulative sum of elements in the matrix <code>m</code><a href="group__matrix__functions.html#g6b5efcaa7c61e429326f4e6e56f11655"></a><br></td></tr>
122<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gff8a3812cb84a18f3b52c4bb116feb08"></a><!-- doxytag: member="matfunc.h::prod" ref="gff8a3812cb84a18f3b52c4bb116feb08" args="(const Vec&lt; T &gt; &amp;v)" -->
123template&lt;class T &gt; </td></tr>
124<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gff8a3812cb84a18f3b52c4bb116feb08">itpp::prod</a> (const Vec&lt; T &gt; &amp;v)</td></tr>
125
126<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The product of all elements in the vector. <br></td></tr>
127<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
128<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g22fdeace9f20483008cf4dc6d471cbc2">itpp::prod</a> (const Mat&lt; T &gt; &amp;m, int dim=1)</td></tr>
129
130<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Product of elements in the matrix <code>m</code><a href="group__matrix__functions.html#g22fdeace9f20483008cf4dc6d471cbc2"></a><br></td></tr>
131<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gc9576b3da83bec579bacbfd2cfd71b3e"></a><!-- doxytag: member="matfunc.h::cross" ref="gc9576b3da83bec579bacbfd2cfd71b3e" args="(const Vec&lt; T &gt; &amp;v1, const Vec&lt; T &gt; &amp;v2)" -->
132template&lt;class T &gt; </td></tr>
133<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gc9576b3da83bec579bacbfd2cfd71b3e">itpp::cross</a> (const Vec&lt; T &gt; &amp;v1, const Vec&lt; T &gt; &amp;v2)</td></tr>
134
135<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector cross product. Vectors need to be of size 3. <br></td></tr>
136<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gb42e2269c4fb80730ac82ef7c85f9cd0"></a><!-- doxytag: member="matfunc.h::zero_pad" ref="gb42e2269c4fb80730ac82ef7c85f9cd0" args="(const Vec&lt; T &gt; &amp;v, int n)" -->
137template&lt;class T &gt; </td></tr>
138<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gb42e2269c4fb80730ac82ef7c85f9cd0">itpp::zero_pad</a> (const Vec&lt; T &gt; &amp;v, int n)</td></tr>
139
140<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Zero-pad a vector to size n. <br></td></tr>
141<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ga92be4bb938ac8c78f6313432210599c"></a><!-- doxytag: member="matfunc.h::zero_pad" ref="ga92be4bb938ac8c78f6313432210599c" args="(const Vec&lt; T &gt; &amp;v)" -->
142template&lt;class T &gt; </td></tr>
143<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#ga92be4bb938ac8c78f6313432210599c">itpp::zero_pad</a> (const Vec&lt; T &gt; &amp;v)</td></tr>
144
145<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Zero-pad a vector to the nearest greater power of two. <br></td></tr>
146<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g70bc01fbb0018476a9ba6a74ed75d4ea"></a><!-- doxytag: member="matfunc.h::zero_pad" ref="g70bc01fbb0018476a9ba6a74ed75d4ea" args="(const Mat&lt; T &gt; &amp;m, int rows, int cols)" -->
147template&lt;class T &gt; </td></tr>
148<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g70bc01fbb0018476a9ba6a74ed75d4ea">itpp::zero_pad</a> (const Mat&lt; T &gt; &amp;m, int rows, int cols)</td></tr>
149
150<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Zero-pad a matrix to size rows x cols. <br></td></tr>
151<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
152<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gab6a4b173411de9290f0dc401c9dcec7">itpp::index_zero_pad</a> (const Vec&lt; T &gt; &amp;v, const int index)</td></tr>
153
154<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g22c587fbc615e295f2b881c2e5025006"></a><!-- doxytag: member="matfunc.h::transpose" ref="g22c587fbc615e295f2b881c2e5025006" args="(const Mat&lt; T &gt; &amp;m, Mat&lt; T &gt; &amp;out)" -->
155template&lt;class T &gt; </td></tr>
156<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g22c587fbc615e295f2b881c2e5025006">itpp::transpose</a> (const Mat&lt; T &gt; &amp;m, Mat&lt; T &gt; &amp;out)</td></tr>
157
158<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transposition of the matrix <code>m</code> returning the transposed matrix in <code>out</code>. <br></td></tr>
159<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g8c724070b69eb97eae2985e02088feca"></a><!-- doxytag: member="matfunc.h::transpose" ref="g8c724070b69eb97eae2985e02088feca" args="(const Mat&lt; T &gt; &amp;m)" -->
160template&lt;class T &gt; </td></tr>
161<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g8c724070b69eb97eae2985e02088feca">itpp::transpose</a> (const Mat&lt; T &gt; &amp;m)</td></tr>
162
163<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transposition of the matrix <code>m</code>. <br></td></tr>
164<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
165<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#ge71aa93cc176699065fc0e740a50387e">itpp::hermitian_transpose</a> (const Mat&lt; T &gt; &amp;m, Mat&lt; T &gt; &amp;out)</td></tr>
166
167<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g123e8bb976c29bd43d993fcd6e3f3579"></a><!-- doxytag: member="matfunc.h::hermitian_transpose" ref="g123e8bb976c29bd43d993fcd6e3f3579" args="(const Mat&lt; T &gt; &amp;m)" -->
168template&lt;class T &gt; </td></tr>
169<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g123e8bb976c29bd43d993fcd6e3f3579">itpp::hermitian_transpose</a> (const Mat&lt; T &gt; &amp;m)</td></tr>
170
171<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hermitian transpose (complex conjugate transpose) of the matrix <code>m</code>. <br></td></tr>
172<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class Num_T &gt; </td></tr>
173<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g49691bf233320a2dd8ae9929988f8f91">itpp::is_hermitian</a> (const Mat&lt; Num_T &gt; &amp;X)</td></tr>
174
175<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if matrix <code>X</code> is hermitian, false otherwise.  <a href="group__matrix__functions.html#g49691bf233320a2dd8ae9929988f8f91"></a><br></td></tr>
176<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class Num_T &gt; </td></tr>
177<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g0e711a4a8db7d9a2ed5515a33dd65d4c">itpp::is_unitary</a> (const Mat&lt; Num_T &gt; &amp;X)</td></tr>
178
179<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns true if matrix <code>X</code> is unitary, false otherwise.  <a href="group__matrix__functions.html#g0e711a4a8db7d9a2ed5515a33dd65d4c"></a><br></td></tr>
180<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class Num_T &gt; </td></tr>
181<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; Num_T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g3b60d55399d969b0194f80997d41ea86">itpp::kron</a> (const Mat&lt; Num_T &gt; &amp;X, const Mat&lt; Num_T &gt; &amp;Y)</td></tr>
182
183<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the Kronecker product of two matrices.  <a href="group__matrix__functions.html#g3b60d55399d969b0194f80997d41ea86"></a><br></td></tr>
184<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g27d79e239d0905bf6b720a1bb117f1de">itpp::sqrtm</a> (const <a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a> &amp;A)</td></tr>
185
186<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Square root of the complex square matrix <code>A</code><a href="group__matrix__functions.html#g27d79e239d0905bf6b720a1bb117f1de"></a><br></td></tr>
187<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gbb4749a685e730a2dc0ff55313d13a22">itpp::sqrtm</a> (const <a class="el" href="classitpp_1_1Mat.html#6bba394f181c76fda12759568986c613">mat</a> &amp;A)</td></tr>
188
189<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Square root of the real square matrix <code>A</code><a href="group__matrix__functions.html#gbb4749a685e730a2dc0ff55313d13a22"></a><br></td></tr>
190<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
191<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g472a6d548c6d195bb349c812c8b2203c">itpp::rank</a> (const Mat&lt; T &gt; &amp;m, double tol=-1.0)</td></tr>
192
193<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate the rank of matrix <code>m</code><a href="group__matrix__functions.html#g472a6d548c6d195bb349c812c8b2203c"></a><br></td></tr>
194<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g36e27d8fdd14e8d5b4a0653c101f1570"></a><!-- doxytag: member="matfunc.h::rank" ref="g36e27d8fdd14e8d5b4a0653c101f1570" args="(const imat &amp;m, double tol)" -->
195template&lt;&gt; </td></tr>
196<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g36e27d8fdd14e8d5b4a0653c101f1570">itpp::rank</a> (const <a class="el" href="classitpp_1_1Mat.html#9e0dd2f635e4bd0b28c09685d9c4f3bb">imat</a> &amp;m, double tol)</td></tr>
197
198<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="group__matrix__functions.html#g472a6d548c6d195bb349c812c8b2203c" title="Calculate the rank of matrix m.">rank()</a> function. <br></td></tr>
199<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g82519e6233d0082856d4acbf84353160"></a><!-- doxytag: member="matfunc.h::rank" ref="g82519e6233d0082856d4acbf84353160" args="(const smat &amp;m, double tol)" -->
200template&lt;&gt; </td></tr>
201<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g82519e6233d0082856d4acbf84353160">itpp::rank</a> (const <a class="el" href="classitpp_1_1Mat.html#debd320317a18c022d3ca856af6d3687">smat</a> &amp;m, double tol)</td></tr>
202
203<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="group__matrix__functions.html#g472a6d548c6d195bb349c812c8b2203c" title="Calculate the rank of matrix m.">rank()</a> function. <br></td></tr>
204<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g6adab7c28deb3fec407684458f0b719d"></a><!-- doxytag: member="matfunc.h::rank" ref="g6adab7c28deb3fec407684458f0b719d" args="(const bmat &amp;, double)" -->
205template&lt;&gt; </td></tr>
206<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g6adab7c28deb3fec407684458f0b719d">itpp::rank</a> (const <a class="el" href="mat_8h.html#f90acd1af41bf2d1d8a4bb23662fff69">bmat</a> &amp;, double)</td></tr>
207
208<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="group__matrix__functions.html#g472a6d548c6d195bb349c812c8b2203c" title="Calculate the rank of matrix m.">rank()</a> function. <br></td></tr>
209<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
210<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#g1a5019e9703cd9f87c3914ab298714ff">itpp::diag</a> (const Vec&lt; T &gt; &amp;v, const int K=0)</td></tr>
211
212<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a diagonal matrix using vector <code>v</code> as its diagonal.  <a href="group__diag.html#g1a5019e9703cd9f87c3914ab298714ff"></a><br></td></tr>
213<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
214<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#g853c555c28b2c812f39962d272ae33ac">itpp::diag</a> (const Vec&lt; T &gt; &amp;v, Mat&lt; T &gt; &amp;m)</td></tr>
215
216<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a diagonal matrix using vector <code>v</code> as its diagonal.  <a href="group__diag.html#g853c555c28b2c812f39962d272ae33ac"></a><br></td></tr>
217<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
218<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#gb0938c932c1cbc19b2ce6c5ac1007553">itpp::diag</a> (const Mat&lt; T &gt; &amp;m)</td></tr>
219
220<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the diagonal elements of the input matrix <code>m</code><a href="group__diag.html#gb0938c932c1cbc19b2ce6c5ac1007553"></a><br></td></tr>
221<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
222<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#g9f2b6719c7de2f116bc794e406c952cc">itpp::bidiag</a> (const Vec&lt; T &gt; &amp;main, const Vec&lt; T &gt; &amp;sup)</td></tr>
223
224<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a matrix with the elements of the input vector <code>main</code> on the diagonal and the elements of the input vector <code>sup</code> on the diagonal row above.  <a href="group__diag.html#g9f2b6719c7de2f116bc794e406c952cc"></a><br></td></tr>
225<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
226<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#g2d7f36dc45fb3098131111d172f5b08d">itpp::bidiag</a> (const Vec&lt; T &gt; &amp;main, const Vec&lt; T &gt; &amp;sup, Mat&lt; T &gt; &amp;m)</td></tr>
227
228<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns in the output variable <code>m</code> a matrix with the elements of the input vector <code>main</code> on the diagonal and the elements of the input vector <code>sup</code> on the diagonal row above.  <a href="group__diag.html#g2d7f36dc45fb3098131111d172f5b08d"></a><br></td></tr>
229<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
230<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#g6b51bb44b5a610731b34f7f0ed2f4748">itpp::bidiag</a> (const Mat&lt; T &gt; &amp;m, Vec&lt; T &gt; &amp;main, Vec&lt; T &gt; &amp;sup)</td></tr>
231
232<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the main diagonal and the diagonal row above in the two output vectors <code>main</code> and <code>sup</code><a href="group__diag.html#g6b51bb44b5a610731b34f7f0ed2f4748"></a><br></td></tr>
233<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
234<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#g0ff63d5f0db74b830fa918a1866c440b">itpp::tridiag</a> (const Vec&lt; T &gt; &amp;main, const Vec&lt; T &gt; &amp;sup, const Vec&lt; T &gt; &amp;sub)</td></tr>
235
236<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a matrix with the elements of <code>main</code> on the diagonal, the elements of <code>sup</code> on the diagonal row above, and the elements of <code>sub</code> on the diagonal row below.  <a href="group__diag.html#g0ff63d5f0db74b830fa918a1866c440b"></a><br></td></tr>
237<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
238<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#geb2b140f8d64b19d7a4462464c59cdca">itpp::tridiag</a> (const Vec&lt; T &gt; &amp;main, const Vec&lt; T &gt; &amp;sup, const Vec&lt; T &gt; &amp;sub, Mat&lt; T &gt; &amp;m)</td></tr>
239
240<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns in the output matrix <code>m</code> a matrix with the elements of <code>main</code> on the diagonal, the elements of <code>sup</code> on the diagonal row above, and the elements of <code>sub</code> on the diagonal row below.  <a href="group__diag.html#geb2b140f8d64b19d7a4462464c59cdca"></a><br></td></tr>
241<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
242<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#g16dfe03af37710450c28943a3fc4433e">itpp::tridiag</a> (const Mat&lt; T &gt; &amp;m, Vec&lt; T &gt; &amp;main, Vec&lt; T &gt; &amp;sup, Vec&lt; T &gt; &amp;sub)</td></tr>
243
244<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the main diagonal, the diagonal row above, and the diagonal row below int the output vectors <code>main</code>, <code>sup</code>, and <code>sub</code><a href="group__diag.html#g16dfe03af37710450c28943a3fc4433e"></a><br></td></tr>
245<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gd10b393e16f1a426b6daed5b9b78c3fb"></a><!-- doxytag: member="matfunc.h::trace" ref="gd10b393e16f1a426b6daed5b9b78c3fb" args="(const Mat&lt; T &gt; &amp;m)" -->
246template&lt;class T &gt; </td></tr>
247<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__diag.html#gd10b393e16f1a426b6daed5b9b78c3fb">itpp::trace</a> (const Mat&lt; T &gt; &amp;m)</td></tr>
248
249<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The trace of the matrix <code>m</code>, i.e. the sum of the diagonal elements. <br></td></tr>
250<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ge53eb5ba319eb6a25649576deeb9bca8"></a><!-- doxytag: member="matfunc.h::reverse" ref="ge53eb5ba319eb6a25649576deeb9bca8" args="(const Vec&lt; T &gt; &amp;in)" -->
251template&lt;class T &gt; </td></tr>
252<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__reshaping.html#ge53eb5ba319eb6a25649576deeb9bca8">itpp::reverse</a> (const Vec&lt; T &gt; &amp;in)</td></tr>
253
254<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reverse the input vector. <br></td></tr>
255<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g67069e107b618a919a243f0f21fa8793"></a><!-- doxytag: member="matfunc.h::rvectorize" ref="g67069e107b618a919a243f0f21fa8793" args="(const Mat&lt; T &gt; &amp;m)" -->
256template&lt;class T &gt; </td></tr>
257<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__reshaping.html#g67069e107b618a919a243f0f21fa8793">itpp::rvectorize</a> (const Mat&lt; T &gt; &amp;m)</td></tr>
258
259<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Row vectorize the matrix [(0,0) (0,1) ... (N-1,N-2) (N-1,N-1)]. <br></td></tr>
260<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g7796ab7ca5b96ce924c4e3f798f3fbe0"></a><!-- doxytag: member="matfunc.h::cvectorize" ref="g7796ab7ca5b96ce924c4e3f798f3fbe0" args="(const Mat&lt; T &gt; &amp;m)" -->
261template&lt;class T &gt; </td></tr>
262<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__reshaping.html#g7796ab7ca5b96ce924c4e3f798f3fbe0">itpp::cvectorize</a> (const Mat&lt; T &gt; &amp;m)</td></tr>
263
264<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Column vectorize the matrix [(0,0) (1,0) ... (N-2,N-1) (N-1,N-1)]. <br></td></tr>
265<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
266<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__reshaping.html#gcf8bc686cea4d9b8d2ddd853ee0e3bc2">itpp::reshape</a> (const Mat&lt; T &gt; &amp;m, int rows, int cols)</td></tr>
267
268<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reshape the matrix into an rows*cols matrix.  <a href="group__reshaping.html#gcf8bc686cea4d9b8d2ddd853ee0e3bc2"></a><br></td></tr>
269<tr><td class="memTemplParams" nowrap colspan="2">template&lt;class T &gt; </td></tr>
270<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat&lt; T &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__reshaping.html#gcaa0a45900248d17792ec91b2ab94dfb">itpp::reshape</a> (const Vec&lt; T &gt; &amp;v, int rows, int cols)</td></tr>
271
272<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reshape the vector into an rows*cols matrix.  <a href="group__reshaping.html#gcaa0a45900248d17792ec91b2ab94dfb"></a><br></td></tr>
273<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f8943303111340f2be687512ff112501"></a><!-- doxytag: member="matfunc.h::all" ref="f8943303111340f2be687512ff112501" args="(const bvec &amp;testvec)" -->
274bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceitpp.html#f8943303111340f2be687512ff112501">itpp::all</a> (const <a class="el" href="classitpp_1_1Vec.html#e10151f44bbabf17b670a9493d8088cf">bvec</a> &amp;testvec)</td></tr>
275
276<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <em>true</em> if all elements are ones and <em>false</em> otherwise. <br></td></tr>
277<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1dfa5ed00676e7f2b1a27b039cb4cf16"></a><!-- doxytag: member="matfunc.h::any" ref="1dfa5ed00676e7f2b1a27b039cb4cf16" args="(const bvec &amp;testvec)" -->
278bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceitpp.html#1dfa5ed00676e7f2b1a27b039cb4cf16">itpp::any</a> (const <a class="el" href="classitpp_1_1Vec.html#e10151f44bbabf17b670a9493d8088cf">bvec</a> &amp;testvec)</td></tr>
279
280<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <em>true</em> if any element is one and <em>false</em> otherwise. <br></td></tr>
281</table>
282<hr><a name="_details"></a><h2>Detailed Description</h2>
283Various functions on vectors and matrices - header file.
284<p>
285<dl class="author" compact><dt><b>Author:</b></dt><dd>Tony Ottosson, Adam Piatyszek, Conrad Sanderson, Mark Dobossy and Martin Senst</dd></dl>
286-------------------------------------------------------------------------<p>
287Copyright (C) 1995-2008 (see AUTHORS file for a list of contributors)<p>
288This file is part of IT++ - a C++ library of mathematical, signal processing, speech processing, and communications classes and functions.<p>
289IT++ is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.<p>
290IT++ is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.<p>
291You should have received a copy of the GNU General Public License along with IT++. If not, see &lt;<a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>&gt;.<p>
292------------------------------------------------------------------------- </div>
293<hr size="1"><address style="text-align: right;"><small>Generated on Tue Jun 2 10:02:14 2009 for mixpp by&nbsp;
294<a href="http://www.doxygen.org/index.html">
295<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
296</body>
297</html>
Note: See TracBrowser for help on using the browser.