[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: Functions on Matrices</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 | <!-- |
---|
| 10 | function 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 | } |
---|
| 22 | function 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 | } |
---|
| 46 | window.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 Page</span></a></li> |
---|
| 53 | <li><a href="pages.html"><span>Related 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><a href="files.html"><span>Files</span></a></li> |
---|
| 57 | </ul> |
---|
| 58 | </div> |
---|
| 59 | </div> |
---|
| 60 | <div class="contents"> |
---|
| 61 | <h1>Functions on Matrices<br> |
---|
| 62 | <small> |
---|
| 63 | [<a class="el" href="group__base.html">Base Module</a>]</small> |
---|
| 64 | </h1>Functions on vectors and matrices. |
---|
| 65 | <a href="#_details">More...</a> |
---|
| 66 | <p> |
---|
| 67 | <table border="0" cellpadding="0" cellspacing="0"> |
---|
| 68 | <tr><td></td></tr> |
---|
| 69 | <tr><td colspan="2"><br><h2>Functions</h2></td></tr> |
---|
| 70 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g97bb6b35d6d4c683c7558842e4500c2d"></a><!-- doxytag: member="matrix_functions::length" ref="g97bb6b35d6d4c683c7558842e4500c2d" args="(const Vec< T > &v)" --> |
---|
| 71 | template<class T > </td></tr> |
---|
| 72 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g97bb6b35d6d4c683c7558842e4500c2d">itpp::length</a> (const Vec< T > &v)</td></tr> |
---|
| 73 | |
---|
| 74 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Length of vector. <br></td></tr> |
---|
| 75 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g3c1a2b0972c6a8e1215eb3f76d7c7512"></a><!-- doxytag: member="matrix_functions::size" ref="g3c1a2b0972c6a8e1215eb3f76d7c7512" args="(const Vec< T > &v)" --> |
---|
| 76 | template<class T > </td></tr> |
---|
| 77 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g3c1a2b0972c6a8e1215eb3f76d7c7512">itpp::size</a> (const Vec< T > &v)</td></tr> |
---|
| 78 | |
---|
| 79 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Length of vector. <br></td></tr> |
---|
| 80 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g8b3dcc61484fce58ee4244d5731e18fa"></a><!-- doxytag: member="matrix_functions::sum" ref="g8b3dcc61484fce58ee4244d5731e18fa" args="(const Vec< T > &v)" --> |
---|
| 81 | template<class T > </td></tr> |
---|
| 82 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g8b3dcc61484fce58ee4244d5731e18fa">itpp::sum</a> (const Vec< T > &v)</td></tr> |
---|
| 83 | |
---|
| 84 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Sum of all elements in the vector. <br></td></tr> |
---|
| 85 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 86 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gfcf8f54c2f4fc257bbc3111700b08355">itpp::sum</a> (const Mat< T > &m, int dim=1)</td></tr> |
---|
| 87 | |
---|
| 88 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Sum of elements in the matrix <code>m</code>, either along columns or rows. <a href="#gfcf8f54c2f4fc257bbc3111700b08355"></a><br></td></tr> |
---|
| 89 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g81a7516f7fb453dcb623ad6d4c89a5b7"></a><!-- doxytag: member="matrix_functions::sumsum" ref="g81a7516f7fb453dcb623ad6d4c89a5b7" args="(const Mat< T > &X)" --> |
---|
| 90 | template<class T > </td></tr> |
---|
| 91 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g81a7516f7fb453dcb623ad6d4c89a5b7">itpp::sumsum</a> (const Mat< T > &X)</td></tr> |
---|
| 92 | |
---|
| 93 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Sum of all elements in the given matrix. Fast version of sum(sum(X)). <br></td></tr> |
---|
| 94 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gc6a1b0e0af40f95bc636ce039c8f1a0f"></a><!-- doxytag: member="matrix_functions::sum_sqr" ref="gc6a1b0e0af40f95bc636ce039c8f1a0f" args="(const Vec< T > &v)" --> |
---|
| 95 | template<class T > </td></tr> |
---|
| 96 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gc6a1b0e0af40f95bc636ce039c8f1a0f">itpp::sum_sqr</a> (const Vec< T > &v)</td></tr> |
---|
| 97 | |
---|
| 98 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Sum of square of the elements in a vector. <br></td></tr> |
---|
| 99 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 100 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g4c81137a6b9b989a0c5a36972885c1e6">itpp::sum_sqr</a> (const Mat< T > &m, int dim=1)</td></tr> |
---|
| 101 | |
---|
| 102 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Sum of the square of elements in the matrix <code>m</code>. <a href="#g4c81137a6b9b989a0c5a36972885c1e6"></a><br></td></tr> |
---|
| 103 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g1609c616b581628be87a4faca7778f54"></a><!-- doxytag: member="matrix_functions::cumsum" ref="g1609c616b581628be87a4faca7778f54" args="(const Vec< T > &v)" --> |
---|
| 104 | template<class T > </td></tr> |
---|
| 105 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g1609c616b581628be87a4faca7778f54">itpp::cumsum</a> (const Vec< T > &v)</td></tr> |
---|
| 106 | |
---|
| 107 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Cumulative sum of all elements in the vector. <br></td></tr> |
---|
| 108 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 109 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g6b5efcaa7c61e429326f4e6e56f11655">itpp::cumsum</a> (const Mat< T > &m, int dim=1)</td></tr> |
---|
| 110 | |
---|
| 111 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Cumulative sum of elements in the matrix <code>m</code>. <a href="#g6b5efcaa7c61e429326f4e6e56f11655"></a><br></td></tr> |
---|
| 112 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gff8a3812cb84a18f3b52c4bb116feb08"></a><!-- doxytag: member="matrix_functions::prod" ref="gff8a3812cb84a18f3b52c4bb116feb08" args="(const Vec< T > &v)" --> |
---|
| 113 | template<class T > </td></tr> |
---|
| 114 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gff8a3812cb84a18f3b52c4bb116feb08">itpp::prod</a> (const Vec< T > &v)</td></tr> |
---|
| 115 | |
---|
| 116 | <tr><td class="mdescLeft"> </td><td class="mdescRight">The product of all elements in the vector. <br></td></tr> |
---|
| 117 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 118 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g22fdeace9f20483008cf4dc6d471cbc2">itpp::prod</a> (const Mat< T > &m, int dim=1)</td></tr> |
---|
| 119 | |
---|
| 120 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Product of elements in the matrix <code>m</code>. <a href="#g22fdeace9f20483008cf4dc6d471cbc2"></a><br></td></tr> |
---|
| 121 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gc9576b3da83bec579bacbfd2cfd71b3e"></a><!-- doxytag: member="matrix_functions::cross" ref="gc9576b3da83bec579bacbfd2cfd71b3e" args="(const Vec< T > &v1, const Vec< T > &v2)" --> |
---|
| 122 | template<class T > </td></tr> |
---|
| 123 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gc9576b3da83bec579bacbfd2cfd71b3e">itpp::cross</a> (const Vec< T > &v1, const Vec< T > &v2)</td></tr> |
---|
| 124 | |
---|
| 125 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Vector cross product. Vectors need to be of size 3. <br></td></tr> |
---|
| 126 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="gb42e2269c4fb80730ac82ef7c85f9cd0"></a><!-- doxytag: member="matrix_functions::zero_pad" ref="gb42e2269c4fb80730ac82ef7c85f9cd0" args="(const Vec< T > &v, int n)" --> |
---|
| 127 | template<class T > </td></tr> |
---|
| 128 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gb42e2269c4fb80730ac82ef7c85f9cd0">itpp::zero_pad</a> (const Vec< T > &v, int n)</td></tr> |
---|
| 129 | |
---|
| 130 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero-pad a vector to size n. <br></td></tr> |
---|
| 131 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ga92be4bb938ac8c78f6313432210599c"></a><!-- doxytag: member="matrix_functions::zero_pad" ref="ga92be4bb938ac8c78f6313432210599c" args="(const Vec< T > &v)" --> |
---|
| 132 | template<class T > </td></tr> |
---|
| 133 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#ga92be4bb938ac8c78f6313432210599c">itpp::zero_pad</a> (const Vec< T > &v)</td></tr> |
---|
| 134 | |
---|
| 135 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero-pad a vector to the nearest greater power of two. <br></td></tr> |
---|
| 136 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g70bc01fbb0018476a9ba6a74ed75d4ea"></a><!-- doxytag: member="matrix_functions::zero_pad" ref="g70bc01fbb0018476a9ba6a74ed75d4ea" args="(const Mat< T > &m, int rows, int cols)" --> |
---|
| 137 | template<class T > </td></tr> |
---|
| 138 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g70bc01fbb0018476a9ba6a74ed75d4ea">itpp::zero_pad</a> (const Mat< T > &m, int rows, int cols)</td></tr> |
---|
| 139 | |
---|
| 140 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Zero-pad a matrix to size rows x cols. <br></td></tr> |
---|
| 141 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 142 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#gab6a4b173411de9290f0dc401c9dcec7">itpp::index_zero_pad</a> (const Vec< T > &v, const int index)</td></tr> |
---|
| 143 | |
---|
| 144 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g22c587fbc615e295f2b881c2e5025006"></a><!-- doxytag: member="matrix_functions::transpose" ref="g22c587fbc615e295f2b881c2e5025006" args="(const Mat< T > &m, Mat< T > &out)" --> |
---|
| 145 | template<class T > </td></tr> |
---|
| 146 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g22c587fbc615e295f2b881c2e5025006">itpp::transpose</a> (const Mat< T > &m, Mat< T > &out)</td></tr> |
---|
| 147 | |
---|
| 148 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Transposition of the matrix <code>m</code> returning the transposed matrix in <code>out</code>. <br></td></tr> |
---|
| 149 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g8c724070b69eb97eae2985e02088feca"></a><!-- doxytag: member="matrix_functions::transpose" ref="g8c724070b69eb97eae2985e02088feca" args="(const Mat< T > &m)" --> |
---|
| 150 | template<class T > </td></tr> |
---|
| 151 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g8c724070b69eb97eae2985e02088feca">itpp::transpose</a> (const Mat< T > &m)</td></tr> |
---|
| 152 | |
---|
| 153 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Transposition of the matrix <code>m</code>. <br></td></tr> |
---|
| 154 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 155 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#ge71aa93cc176699065fc0e740a50387e">itpp::hermitian_transpose</a> (const Mat< T > &m, Mat< T > &out)</td></tr> |
---|
| 156 | |
---|
| 157 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g123e8bb976c29bd43d993fcd6e3f3579"></a><!-- doxytag: member="matrix_functions::hermitian_transpose" ref="g123e8bb976c29bd43d993fcd6e3f3579" args="(const Mat< T > &m)" --> |
---|
| 158 | template<class T > </td></tr> |
---|
| 159 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g123e8bb976c29bd43d993fcd6e3f3579">itpp::hermitian_transpose</a> (const Mat< T > &m)</td></tr> |
---|
| 160 | |
---|
| 161 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Hermitian transpose (complex conjugate transpose) of the matrix <code>m</code>. <br></td></tr> |
---|
| 162 | <tr><td class="memTemplParams" nowrap colspan="2">template<class Num_T > </td></tr> |
---|
| 163 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g49691bf233320a2dd8ae9929988f8f91">itpp::is_hermitian</a> (const Mat< Num_T > &X)</td></tr> |
---|
| 164 | |
---|
| 165 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns true if matrix <code>X</code> is hermitian, false otherwise. <a href="#g49691bf233320a2dd8ae9929988f8f91"></a><br></td></tr> |
---|
| 166 | <tr><td class="memTemplParams" nowrap colspan="2">template<class Num_T > </td></tr> |
---|
| 167 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g0e711a4a8db7d9a2ed5515a33dd65d4c">itpp::is_unitary</a> (const Mat< Num_T > &X)</td></tr> |
---|
| 168 | |
---|
| 169 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns true if matrix <code>X</code> is unitary, false otherwise. <a href="#g0e711a4a8db7d9a2ed5515a33dd65d4c"></a><br></td></tr> |
---|
| 170 | <tr><td class="memTemplParams" nowrap colspan="2">template<class Num_T > </td></tr> |
---|
| 171 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat< Num_T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g3b60d55399d969b0194f80997d41ea86">itpp::kron</a> (const Mat< Num_T > &X, const Mat< Num_T > &Y)</td></tr> |
---|
| 172 | |
---|
| 173 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Computes the Kronecker product of two matrices. <a href="#g3b60d55399d969b0194f80997d41ea86"></a><br></td></tr> |
---|
| 174 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a> </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> &A)</td></tr> |
---|
| 175 | |
---|
| 176 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Square root of the complex square matrix <code>A</code>. <a href="#g27d79e239d0905bf6b720a1bb117f1de"></a><br></td></tr> |
---|
| 177 | <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a> </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> &A)</td></tr> |
---|
| 178 | |
---|
| 179 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Square root of the real square matrix <code>A</code>. <a href="#gbb4749a685e730a2dc0ff55313d13a22"></a><br></td></tr> |
---|
| 180 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 181 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g472a6d548c6d195bb349c812c8b2203c">itpp::rank</a> (const Mat< T > &m, double tol=-1.0)</td></tr> |
---|
| 182 | |
---|
| 183 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate the rank of matrix <code>m</code>. <a href="#g472a6d548c6d195bb349c812c8b2203c"></a><br></td></tr> |
---|
| 184 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g36e27d8fdd14e8d5b4a0653c101f1570"></a><!-- doxytag: member="matrix_functions::rank" ref="g36e27d8fdd14e8d5b4a0653c101f1570" args="(const imat &m, double tol)" --> |
---|
| 185 | template<> </td></tr> |
---|
| 186 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </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> &m, double tol)</td></tr> |
---|
| 187 | |
---|
| 188 | <tr><td class="mdescLeft"> </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> |
---|
| 189 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g82519e6233d0082856d4acbf84353160"></a><!-- doxytag: member="matrix_functions::rank" ref="g82519e6233d0082856d4acbf84353160" args="(const smat &m, double tol)" --> |
---|
| 190 | template<> </td></tr> |
---|
| 191 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </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> &m, double tol)</td></tr> |
---|
| 192 | |
---|
| 193 | <tr><td class="mdescLeft"> </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> |
---|
| 194 | <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="g6adab7c28deb3fec407684458f0b719d"></a><!-- doxytag: member="matrix_functions::rank" ref="g6adab7c28deb3fec407684458f0b719d" args="(const bmat &, double)" --> |
---|
| 195 | template<> </td></tr> |
---|
| 196 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </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> &, double)</td></tr> |
---|
| 197 | |
---|
| 198 | <tr><td class="mdescLeft"> </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">template<class T > </td></tr> |
---|
| 200 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Vec< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g53cd7ee1e173c8a2e56d0b4c77e49c20">itpp::Vec::repmat</a> (const Vec< T > &v, int n)</td></tr> |
---|
| 201 | |
---|
| 202 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a vector with <code>n</code> copies of the vector <code>v</code>. <a href="#g53cd7ee1e173c8a2e56d0b4c77e49c20"></a><br></td></tr> |
---|
| 203 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 204 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g608ecbac6ff6a1ce6d5e69c0dd789021">itpp::Mat::repmat</a> (const Mat< T > &data, int m, int n)</td></tr> |
---|
| 205 | |
---|
| 206 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a matrix with <code>m</code> by <code>n</code> copies of the matrix <code>data</code>. <a href="#g608ecbac6ff6a1ce6d5e69c0dd789021"></a><br></td></tr> |
---|
| 207 | <tr><td class="memTemplParams" nowrap colspan="2">template<class T > </td></tr> |
---|
| 208 | <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Mat< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__matrix__functions.html#g8d9541af4bd11193689d3f30b1cd5a74">itpp::Mat::repmat</a> (const Vec< T > &v, int m, int n, bool transpose=false)</td></tr> |
---|
| 209 | |
---|
| 210 | <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a matrix with <code>m</code> by <code>n</code> copies of the vector <code>data</code>. <a href="#g8d9541af4bd11193689d3f30b1cd5a74"></a><br></td></tr> |
---|
| 211 | </table> |
---|
| 212 | <hr><a name="_details"></a><h2>Detailed Description</h2> |
---|
| 213 | Functions on vectors and matrices. <hr><h2>Function Documentation</h2> |
---|
| 214 | <a class="anchor" name="g6b5efcaa7c61e429326f4e6e56f11655"></a><!-- doxytag: member="itpp::cumsum" ref="g6b5efcaa7c61e429326f4e6e56f11655" args="(const Mat< T > &m, int dim=1)" --> |
---|
| 215 | <div class="memitem"> |
---|
| 216 | <div class="memproto"> |
---|
| 217 | <div class="memtemplate"> |
---|
| 218 | template<class T > </div> |
---|
| 219 | <table class="memname"> |
---|
| 220 | <tr> |
---|
| 221 | <td class="memname">Mat<T> itpp::cumsum </td> |
---|
| 222 | <td>(</td> |
---|
| 223 | <td class="paramtype">const Mat< T > & </td> |
---|
| 224 | <td class="paramname"> <em>m</em>, </td> |
---|
| 225 | </tr> |
---|
| 226 | <tr> |
---|
| 227 | <td class="paramkey"></td> |
---|
| 228 | <td></td> |
---|
| 229 | <td class="paramtype">int </td> |
---|
| 230 | <td class="paramname"> <em>dim</em> = <code>1</code></td><td> </td> |
---|
| 231 | </tr> |
---|
| 232 | <tr> |
---|
| 233 | <td></td> |
---|
| 234 | <td>)</td> |
---|
| 235 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 236 | </tr> |
---|
| 237 | </table> |
---|
| 238 | </div> |
---|
| 239 | <div class="memdoc"> |
---|
| 240 | |
---|
| 241 | <p> |
---|
| 242 | Cumulative sum of elements in the matrix <code>m</code>. |
---|
| 243 | <p> |
---|
| 244 | <code>cumsum(m) = cumsum(m, 1)</code> returns a matrix where the elements are sums over each column, whereas <code>cumsum(m, 2)</code> returns a matrix where the elements are sums over each row |
---|
| 245 | <p>References <a class="el" href="mat_8h-source.html#l00241">itpp::Mat< Num_T >::cols()</a>, <a class="el" href="mat_8h-source.html#l00903">itpp::Mat< Num_T >::get_col()</a>, <a class="el" href="mat_8h-source.html#l00866">itpp::Mat< Num_T >::get_row()</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, and <a class="el" href="mat_8h-source.html#l00243">itpp::Mat< Num_T >::rows()</a>.</p> |
---|
| 246 | |
---|
| 247 | <p>Referenced by <a class="el" href="histogram_8h-source.html#l00210">itpp::Histogram< Num_T >::get_cdf()</a>, <a class="el" href="libEF_8cpp-source.html#l00216">bdm::eEmp::resample()</a>, <a class="el" href="emix_8cpp-source.html#l00072">bdm::egiwmix::sample()</a>, and <a class="el" href="emix_8cpp-source.html#l00024">bdm::emix::sample()</a>.</p> |
---|
| 248 | |
---|
| 249 | </div> |
---|
| 250 | </div><p> |
---|
| 251 | <a class="anchor" name="ge71aa93cc176699065fc0e740a50387e"></a><!-- doxytag: member="itpp::hermitian_transpose" ref="ge71aa93cc176699065fc0e740a50387e" args="(const Mat< T > &m, Mat< T > &out)" --> |
---|
| 252 | <div class="memitem"> |
---|
| 253 | <div class="memproto"> |
---|
| 254 | <div class="memtemplate"> |
---|
| 255 | template<class T > </div> |
---|
| 256 | <table class="memname"> |
---|
| 257 | <tr> |
---|
| 258 | <td class="memname">void itpp::hermitian_transpose </td> |
---|
| 259 | <td>(</td> |
---|
| 260 | <td class="paramtype">const Mat< T > & </td> |
---|
| 261 | <td class="paramname"> <em>m</em>, </td> |
---|
| 262 | </tr> |
---|
| 263 | <tr> |
---|
| 264 | <td class="paramkey"></td> |
---|
| 265 | <td></td> |
---|
| 266 | <td class="paramtype">Mat< T > & </td> |
---|
| 267 | <td class="paramname"> <em>out</em></td><td> </td> |
---|
| 268 | </tr> |
---|
| 269 | <tr> |
---|
| 270 | <td></td> |
---|
| 271 | <td>)</td> |
---|
| 272 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 273 | </tr> |
---|
| 274 | </table> |
---|
| 275 | </div> |
---|
| 276 | <div class="memdoc"> |
---|
| 277 | |
---|
| 278 | <p> |
---|
| 279 | Hermitian transpose (complex conjugate transpose) of the matrix <code>m</code> returning the transposed matrix in <code>out</code> |
---|
| 280 | <p>References <a class="el" href="mat_8h-source.html#l00347">itpp::Mat< Num_T >::H()</a>.</p> |
---|
| 281 | |
---|
| 282 | </div> |
---|
| 283 | </div><p> |
---|
| 284 | <a class="anchor" name="gab6a4b173411de9290f0dc401c9dcec7"></a><!-- doxytag: member="itpp::index_zero_pad" ref="gab6a4b173411de9290f0dc401c9dcec7" args="(const Vec< T > &v, const int index)" --> |
---|
| 285 | <div class="memitem"> |
---|
| 286 | <div class="memproto"> |
---|
| 287 | <div class="memtemplate"> |
---|
| 288 | template<class T > </div> |
---|
| 289 | <table class="memname"> |
---|
| 290 | <tr> |
---|
| 291 | <td class="memname">T itpp::index_zero_pad </td> |
---|
| 292 | <td>(</td> |
---|
| 293 | <td class="paramtype">const Vec< T > & </td> |
---|
| 294 | <td class="paramname"> <em>v</em>, </td> |
---|
| 295 | </tr> |
---|
| 296 | <tr> |
---|
| 297 | <td class="paramkey"></td> |
---|
| 298 | <td></td> |
---|
| 299 | <td class="paramtype">const int </td> |
---|
| 300 | <td class="paramname"> <em>index</em></td><td> </td> |
---|
| 301 | </tr> |
---|
| 302 | <tr> |
---|
| 303 | <td></td> |
---|
| 304 | <td>)</td> |
---|
| 305 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 306 | </tr> |
---|
| 307 | </table> |
---|
| 308 | </div> |
---|
| 309 | <div class="memdoc"> |
---|
| 310 | |
---|
| 311 | <p> |
---|
| 312 | Return zero if indexing outside the vector <code>v</code> otherwise return the element <code>index</code> |
---|
| 313 | <p>References <a class="el" href="vec_8h-source.html#l00277">itpp::Vec< Num_T >::size()</a>.</p> |
---|
| 314 | |
---|
| 315 | <p>Referenced by <a class="el" href="sigfun_8cpp-source.html#l00091">itpp::xcorr_old()</a>.</p> |
---|
| 316 | |
---|
| 317 | </div> |
---|
| 318 | </div><p> |
---|
| 319 | <a class="anchor" name="g49691bf233320a2dd8ae9929988f8f91"></a><!-- doxytag: member="itpp::is_hermitian" ref="g49691bf233320a2dd8ae9929988f8f91" args="(const Mat< Num_T > &X)" --> |
---|
| 320 | <div class="memitem"> |
---|
| 321 | <div class="memproto"> |
---|
| 322 | <div class="memtemplate"> |
---|
| 323 | template<class Num_T > </div> |
---|
| 324 | <table class="memname"> |
---|
| 325 | <tr> |
---|
| 326 | <td class="memname">bool itpp::is_hermitian </td> |
---|
| 327 | <td>(</td> |
---|
| 328 | <td class="paramtype">const Mat< Num_T > & </td> |
---|
| 329 | <td class="paramname"> <em>X</em> </td> |
---|
| 330 | <td> ) </td> |
---|
| 331 | <td><code> [inline]</code></td> |
---|
| 332 | </tr> |
---|
| 333 | </table> |
---|
| 334 | </div> |
---|
| 335 | <div class="memdoc"> |
---|
| 336 | |
---|
| 337 | <p> |
---|
| 338 | Returns true if matrix <code>X</code> is hermitian, false otherwise. |
---|
| 339 | <p> |
---|
| 340 | <dl class="author" compact><dt><b>Author:</b></dt><dd>M. Szalay</dd></dl> |
---|
| 341 | A square matrix <img class="formulaInl" alt="$\mathbf{X}$" src="form_125.png"> is hermitian if <p class="formulaDsp"> |
---|
| 342 | <img class="formulaDsp" alt="\[ \mathbf{X} = \mathbf{X}^H \]" src="form_177.png"> |
---|
| 343 | <p> |
---|
| 344 | |
---|
| 345 | <p>References <a class="el" href="mat_8h-source.html#l00347">itpp::Mat< Num_T >::H()</a>.</p> |
---|
| 346 | |
---|
| 347 | </div> |
---|
| 348 | </div><p> |
---|
| 349 | <a class="anchor" name="g0e711a4a8db7d9a2ed5515a33dd65d4c"></a><!-- doxytag: member="itpp::is_unitary" ref="g0e711a4a8db7d9a2ed5515a33dd65d4c" args="(const Mat< Num_T > &X)" --> |
---|
| 350 | <div class="memitem"> |
---|
| 351 | <div class="memproto"> |
---|
| 352 | <div class="memtemplate"> |
---|
| 353 | template<class Num_T > </div> |
---|
| 354 | <table class="memname"> |
---|
| 355 | <tr> |
---|
| 356 | <td class="memname">bool itpp::is_unitary </td> |
---|
| 357 | <td>(</td> |
---|
| 358 | <td class="paramtype">const Mat< Num_T > & </td> |
---|
| 359 | <td class="paramname"> <em>X</em> </td> |
---|
| 360 | <td> ) </td> |
---|
| 361 | <td><code> [inline]</code></td> |
---|
| 362 | </tr> |
---|
| 363 | </table> |
---|
| 364 | </div> |
---|
| 365 | <div class="memdoc"> |
---|
| 366 | |
---|
| 367 | <p> |
---|
| 368 | Returns true if matrix <code>X</code> is unitary, false otherwise. |
---|
| 369 | <p> |
---|
| 370 | <dl class="author" compact><dt><b>Author:</b></dt><dd>M. Szalay</dd></dl> |
---|
| 371 | A square matrix <img class="formulaInl" alt="$\mathbf{X}$" src="form_125.png"> is unitary if <p class="formulaDsp"> |
---|
| 372 | <img class="formulaDsp" alt="\[ \mathbf{X}^H = \mathbf{X}^{-1} \]" src="form_178.png"> |
---|
| 373 | <p> |
---|
| 374 | |
---|
| 375 | <p>References <a class="el" href="mat_8h-source.html#l00347">itpp::Mat< Num_T >::H()</a>, and <a class="el" href="inv_8cpp-source.html#l00109">itpp::inv()</a>.</p> |
---|
| 376 | |
---|
| 377 | </div> |
---|
| 378 | </div><p> |
---|
| 379 | <a class="anchor" name="g3b60d55399d969b0194f80997d41ea86"></a><!-- doxytag: member="itpp::kron" ref="g3b60d55399d969b0194f80997d41ea86" args="(const Mat< Num_T > &X, const Mat< Num_T > &Y)" --> |
---|
| 380 | <div class="memitem"> |
---|
| 381 | <div class="memproto"> |
---|
| 382 | <div class="memtemplate"> |
---|
| 383 | template<class Num_T > </div> |
---|
| 384 | <table class="memname"> |
---|
| 385 | <tr> |
---|
| 386 | <td class="memname">Mat<Num_T> itpp::kron </td> |
---|
| 387 | <td>(</td> |
---|
| 388 | <td class="paramtype">const Mat< Num_T > & </td> |
---|
| 389 | <td class="paramname"> <em>X</em>, </td> |
---|
| 390 | </tr> |
---|
| 391 | <tr> |
---|
| 392 | <td class="paramkey"></td> |
---|
| 393 | <td></td> |
---|
| 394 | <td class="paramtype">const Mat< Num_T > & </td> |
---|
| 395 | <td class="paramname"> <em>Y</em></td><td> </td> |
---|
| 396 | </tr> |
---|
| 397 | <tr> |
---|
| 398 | <td></td> |
---|
| 399 | <td>)</td> |
---|
| 400 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 401 | </tr> |
---|
| 402 | </table> |
---|
| 403 | </div> |
---|
| 404 | <div class="memdoc"> |
---|
| 405 | |
---|
| 406 | <p> |
---|
| 407 | Computes the Kronecker product of two matrices. |
---|
| 408 | <p> |
---|
| 409 | <code>K = kron(X, Y)</code> returns the Kronecker tensor product of <code>X</code> and <code>Y</code>. The result is a large array formed by taking all possible products between the elements of <code>X</code> and those of <code>Y</code>. If <code>X</code> is <code>(m x n)</code> and <code>Y</code> is <code>(p x q)</code>, then <code>kron(X, Y)</code> is <code>(m*p x n*q)</code>.<p> |
---|
| 410 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Adam Piatyszek </dd></dl> |
---|
| 411 | |
---|
| 412 | <p>References <a class="el" href="mat_8h-source.html#l00241">itpp::Mat< Num_T >::cols()</a>, and <a class="el" href="mat_8h-source.html#l00243">itpp::Mat< Num_T >::rows()</a>.</p> |
---|
| 413 | |
---|
| 414 | </div> |
---|
| 415 | </div><p> |
---|
| 416 | <a class="anchor" name="g22fdeace9f20483008cf4dc6d471cbc2"></a><!-- doxytag: member="itpp::prod" ref="g22fdeace9f20483008cf4dc6d471cbc2" args="(const Mat< T > &m, int dim=1)" --> |
---|
| 417 | <div class="memitem"> |
---|
| 418 | <div class="memproto"> |
---|
| 419 | <div class="memtemplate"> |
---|
| 420 | template<class T > </div> |
---|
| 421 | <table class="memname"> |
---|
| 422 | <tr> |
---|
| 423 | <td class="memname">Vec<T> itpp::prod </td> |
---|
| 424 | <td>(</td> |
---|
| 425 | <td class="paramtype">const Mat< T > & </td> |
---|
| 426 | <td class="paramname"> <em>m</em>, </td> |
---|
| 427 | </tr> |
---|
| 428 | <tr> |
---|
| 429 | <td class="paramkey"></td> |
---|
| 430 | <td></td> |
---|
| 431 | <td class="paramtype">int </td> |
---|
| 432 | <td class="paramname"> <em>dim</em> = <code>1</code></td><td> </td> |
---|
| 433 | </tr> |
---|
| 434 | <tr> |
---|
| 435 | <td></td> |
---|
| 436 | <td>)</td> |
---|
| 437 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 438 | </tr> |
---|
| 439 | </table> |
---|
| 440 | </div> |
---|
| 441 | <div class="memdoc"> |
---|
| 442 | |
---|
| 443 | <p> |
---|
| 444 | Product of elements in the matrix <code>m</code>. |
---|
| 445 | <p> |
---|
| 446 | <code>prod(m) = prod(m, 1)</code> returns a vector where the elements are products over each column, whereas <code>prod(m, 2)</code> returns a vector where the elements are products over each row |
---|
| 447 | <p>References <a class="el" href="mat_8h-source.html#l00241">itpp::Mat< Num_T >::cols()</a>, <a class="el" href="mat_8h-source.html#l00903">itpp::Mat< Num_T >::get_col()</a>, <a class="el" href="mat_8h-source.html#l00866">itpp::Mat< Num_T >::get_row()</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, and <a class="el" href="mat_8h-source.html#l00243">itpp::Mat< Num_T >::rows()</a>.</p> |
---|
| 448 | |
---|
| 449 | <p>Referenced by <a class="el" href="elem__math_8cpp-source.html#l00078">itpp::fact()</a>, and <a class="el" href="misc__stat_8h-source.html#l00138">itpp::geometric_mean()</a>.</p> |
---|
| 450 | |
---|
| 451 | </div> |
---|
| 452 | </div><p> |
---|
| 453 | <a class="anchor" name="g472a6d548c6d195bb349c812c8b2203c"></a><!-- doxytag: member="itpp::rank" ref="g472a6d548c6d195bb349c812c8b2203c" args="(const Mat< T > &m, double tol=-1.0)" --> |
---|
| 454 | <div class="memitem"> |
---|
| 455 | <div class="memproto"> |
---|
| 456 | <div class="memtemplate"> |
---|
| 457 | template<class T > </div> |
---|
| 458 | <table class="memname"> |
---|
| 459 | <tr> |
---|
| 460 | <td class="memname">int itpp::rank </td> |
---|
| 461 | <td>(</td> |
---|
| 462 | <td class="paramtype">const Mat< T > & </td> |
---|
| 463 | <td class="paramname"> <em>m</em>, </td> |
---|
| 464 | </tr> |
---|
| 465 | <tr> |
---|
| 466 | <td class="paramkey"></td> |
---|
| 467 | <td></td> |
---|
| 468 | <td class="paramtype">double </td> |
---|
| 469 | <td class="paramname"> <em>tol</em> = <code>-1.0</code></td><td> </td> |
---|
| 470 | </tr> |
---|
| 471 | <tr> |
---|
| 472 | <td></td> |
---|
| 473 | <td>)</td> |
---|
| 474 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 475 | </tr> |
---|
| 476 | </table> |
---|
| 477 | </div> |
---|
| 478 | <div class="memdoc"> |
---|
| 479 | |
---|
| 480 | <p> |
---|
| 481 | Calculate the rank of matrix <code>m</code>. |
---|
| 482 | <p> |
---|
| 483 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Martin Senst</dd></dl> |
---|
| 484 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
| 485 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
| 486 | <tr><td valign="top"></td><td valign="top"><em>m</em> </td><td>Input matrix </td></tr> |
---|
| 487 | <tr><td valign="top"></td><td valign="top"><em>tol</em> </td><td>Tolerance used for comparing the singular values with zero. If negative, it is automatically determined. </td></tr> |
---|
| 488 | </table> |
---|
| 489 | </dl> |
---|
| 490 | |
---|
| 491 | <p>References <a class="el" href="mat_8h-source.html#l00241">itpp::Mat< Num_T >::cols()</a>, <a class="el" href="mat_8h-source.html#l00243">itpp::Mat< Num_T >::rows()</a>, and <a class="el" href="svd_8cpp-source.html#l00218">itpp::svd()</a>.</p> |
---|
| 492 | |
---|
| 493 | </div> |
---|
| 494 | </div><p> |
---|
| 495 | <a class="anchor" name="g8d9541af4bd11193689d3f30b1cd5a74"></a><!-- doxytag: member="itpp::Mat::repmat" ref="g8d9541af4bd11193689d3f30b1cd5a74" args="(const Vec< T > &v, int m, int n, bool transpose=false)" --> |
---|
| 496 | <div class="memitem"> |
---|
| 497 | <div class="memproto"> |
---|
| 498 | <div class="memtemplate"> |
---|
| 499 | template<class T > </div> |
---|
| 500 | <table class="memname"> |
---|
| 501 | <tr> |
---|
| 502 | <td class="memname">Mat< T > repmat </td> |
---|
| 503 | <td>(</td> |
---|
| 504 | <td class="paramtype">const <a class="el" href="classitpp_1_1Vec.html">Vec</a>< T > & </td> |
---|
| 505 | <td class="paramname"> <em>v</em>, </td> |
---|
| 506 | </tr> |
---|
| 507 | <tr> |
---|
| 508 | <td class="paramkey"></td> |
---|
| 509 | <td></td> |
---|
| 510 | <td class="paramtype">int </td> |
---|
| 511 | <td class="paramname"> <em>m</em>, </td> |
---|
| 512 | </tr> |
---|
| 513 | <tr> |
---|
| 514 | <td class="paramkey"></td> |
---|
| 515 | <td></td> |
---|
| 516 | <td class="paramtype">int </td> |
---|
| 517 | <td class="paramname"> <em>n</em>, </td> |
---|
| 518 | </tr> |
---|
| 519 | <tr> |
---|
| 520 | <td class="paramkey"></td> |
---|
| 521 | <td></td> |
---|
| 522 | <td class="paramtype">bool </td> |
---|
| 523 | <td class="paramname"> <em>transpose</em> = <code>false</code></td><td> </td> |
---|
| 524 | </tr> |
---|
| 525 | <tr> |
---|
| 526 | <td></td> |
---|
| 527 | <td>)</td> |
---|
| 528 | <td></td><td></td><td><code> [related, inherited]</code></td> |
---|
| 529 | </tr> |
---|
| 530 | </table> |
---|
| 531 | </div> |
---|
| 532 | <div class="memdoc"> |
---|
| 533 | |
---|
| 534 | <p> |
---|
| 535 | Returns a matrix with <code>m</code> by <code>n</code> copies of the vector <code>data</code>. |
---|
| 536 | <p> |
---|
| 537 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Adam Piatyszek</dd></dl> |
---|
| 538 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
| 539 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
| 540 | <tr><td valign="top"></td><td valign="top"><em>v</em> </td><td>Vector to be repeated </td></tr> |
---|
| 541 | <tr><td valign="top"></td><td valign="top"><em>m</em> </td><td>Number of times to repeat data vertically </td></tr> |
---|
| 542 | <tr><td valign="top"></td><td valign="top"><em>n</em> </td><td>Number of times to repeat data horizontally </td></tr> |
---|
| 543 | <tr><td valign="top"></td><td valign="top"><em>transpose</em> </td><td>Specifies the input vector orientation (column vector by default) </td></tr> |
---|
| 544 | </table> |
---|
| 545 | </dl> |
---|
| 546 | |
---|
| 547 | <p>References <a class="el" href="vec_8h-source.html#l00324">itpp::Vec< Num_T >::T()</a>, and <a class="el" href="matfunc_8h-source.html#l00308">itpp::transpose()</a>.</p> |
---|
| 548 | |
---|
| 549 | </div> |
---|
| 550 | </div><p> |
---|
| 551 | <a class="anchor" name="g608ecbac6ff6a1ce6d5e69c0dd789021"></a><!-- doxytag: member="itpp::Mat::repmat" ref="g608ecbac6ff6a1ce6d5e69c0dd789021" args="(const Mat< T > &data, int m, int n)" --> |
---|
| 552 | <div class="memitem"> |
---|
| 553 | <div class="memproto"> |
---|
| 554 | <div class="memtemplate"> |
---|
| 555 | template<class T > </div> |
---|
| 556 | <table class="memname"> |
---|
| 557 | <tr> |
---|
| 558 | <td class="memname">Mat< T > repmat </td> |
---|
| 559 | <td>(</td> |
---|
| 560 | <td class="paramtype">const <a class="el" href="classitpp_1_1Mat.html">Mat</a>< T > & </td> |
---|
| 561 | <td class="paramname"> <em>data</em>, </td> |
---|
| 562 | </tr> |
---|
| 563 | <tr> |
---|
| 564 | <td class="paramkey"></td> |
---|
| 565 | <td></td> |
---|
| 566 | <td class="paramtype">int </td> |
---|
| 567 | <td class="paramname"> <em>m</em>, </td> |
---|
| 568 | </tr> |
---|
| 569 | <tr> |
---|
| 570 | <td class="paramkey"></td> |
---|
| 571 | <td></td> |
---|
| 572 | <td class="paramtype">int </td> |
---|
| 573 | <td class="paramname"> <em>n</em></td><td> </td> |
---|
| 574 | </tr> |
---|
| 575 | <tr> |
---|
| 576 | <td></td> |
---|
| 577 | <td>)</td> |
---|
| 578 | <td></td><td></td><td><code> [related, inherited]</code></td> |
---|
| 579 | </tr> |
---|
| 580 | </table> |
---|
| 581 | </div> |
---|
| 582 | <div class="memdoc"> |
---|
| 583 | |
---|
| 584 | <p> |
---|
| 585 | Creates a matrix with <code>m</code> by <code>n</code> copies of the matrix <code>data</code>. |
---|
| 586 | <p> |
---|
| 587 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Mark Dobossy</dd></dl> |
---|
| 588 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
| 589 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
| 590 | <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>Matrix to be repeated </td></tr> |
---|
| 591 | <tr><td valign="top"></td><td valign="top"><em>m</em> </td><td>Number of times to repeat data vertically </td></tr> |
---|
| 592 | <tr><td valign="top"></td><td valign="top"><em>n</em> </td><td>Number of times to repeat data horizontally </td></tr> |
---|
| 593 | </table> |
---|
| 594 | </dl> |
---|
| 595 | |
---|
| 596 | <p>References <a class="el" href="mat_8h-source.html#l00241">itpp::Mat< Num_T >::cols()</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mat_8h-source.html#l00243">itpp::Mat< Num_T >::rows()</a>, and <a class="el" href="mat_8h-source.html#l01033">itpp::Mat< Num_T >::set_submatrix()</a>.</p> |
---|
| 597 | |
---|
| 598 | </div> |
---|
| 599 | </div><p> |
---|
| 600 | <a class="anchor" name="g53cd7ee1e173c8a2e56d0b4c77e49c20"></a><!-- doxytag: member="itpp::Vec::repmat" ref="g53cd7ee1e173c8a2e56d0b4c77e49c20" args="(const Vec< T > &v, int n)" --> |
---|
| 601 | <div class="memitem"> |
---|
| 602 | <div class="memproto"> |
---|
| 603 | <div class="memtemplate"> |
---|
| 604 | template<class T > </div> |
---|
| 605 | <table class="memname"> |
---|
| 606 | <tr> |
---|
| 607 | <td class="memname">Vec< T > repmat </td> |
---|
| 608 | <td>(</td> |
---|
| 609 | <td class="paramtype">const <a class="el" href="classitpp_1_1Vec.html">Vec</a>< T > & </td> |
---|
| 610 | <td class="paramname"> <em>v</em>, </td> |
---|
| 611 | </tr> |
---|
| 612 | <tr> |
---|
| 613 | <td class="paramkey"></td> |
---|
| 614 | <td></td> |
---|
| 615 | <td class="paramtype">int </td> |
---|
| 616 | <td class="paramname"> <em>n</em></td><td> </td> |
---|
| 617 | </tr> |
---|
| 618 | <tr> |
---|
| 619 | <td></td> |
---|
| 620 | <td>)</td> |
---|
| 621 | <td></td><td></td><td><code> [related, inherited]</code></td> |
---|
| 622 | </tr> |
---|
| 623 | </table> |
---|
| 624 | </div> |
---|
| 625 | <div class="memdoc"> |
---|
| 626 | |
---|
| 627 | <p> |
---|
| 628 | Creates a vector with <code>n</code> copies of the vector <code>v</code>. |
---|
| 629 | <p> |
---|
| 630 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Martin Senst</dd></dl> |
---|
| 631 | <dl compact><dt><b>Parameters:</b></dt><dd> |
---|
| 632 | <table border="0" cellspacing="2" cellpadding="0"> |
---|
| 633 | <tr><td valign="top"></td><td valign="top"><em>v</em> </td><td>Vector to be repeated </td></tr> |
---|
| 634 | <tr><td valign="top"></td><td valign="top"><em>n</em> </td><td>Number of times to repeat <code>v</code> </td></tr> |
---|
| 635 | </table> |
---|
| 636 | </dl> |
---|
| 637 | |
---|
| 638 | <p>References <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="vec_8h-source.html#l00275">itpp::Vec< Num_T >::length()</a>, and <a class="el" href="vec_8h-source.html#l01495">itpp::Vec< Num_T >::set_subvector()</a>.</p> |
---|
| 639 | |
---|
| 640 | </div> |
---|
| 641 | </div><p> |
---|
| 642 | <a class="anchor" name="gbb4749a685e730a2dc0ff55313d13a22"></a><!-- doxytag: member="itpp::sqrtm" ref="gbb4749a685e730a2dc0ff55313d13a22" args="(const mat &A)" --> |
---|
| 643 | <div class="memitem"> |
---|
| 644 | <div class="memproto"> |
---|
| 645 | <table class="memname"> |
---|
| 646 | <tr> |
---|
| 647 | <td class="memname"><a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a> itpp::sqrtm </td> |
---|
| 648 | <td>(</td> |
---|
| 649 | <td class="paramtype">const <a class="el" href="classitpp_1_1Mat.html#6bba394f181c76fda12759568986c613">mat</a> & </td> |
---|
| 650 | <td class="paramname"> <em>A</em> </td> |
---|
| 651 | <td> ) </td> |
---|
| 652 | <td></td> |
---|
| 653 | </tr> |
---|
| 654 | </table> |
---|
| 655 | </div> |
---|
| 656 | <div class="memdoc"> |
---|
| 657 | |
---|
| 658 | <p> |
---|
| 659 | Square root of the real square matrix <code>A</code>. |
---|
| 660 | <p> |
---|
| 661 | This function computes the matrix square root of the real square matrix <code>A</code>. Please note that the returned matrix is complex. The implementation is based on the Matlab/Octave <code><a class="el" href="group__matrix__functions.html#g27d79e239d0905bf6b720a1bb117f1de" title="Square root of the complex square matrix A.">sqrtm()</a></code> function.<p> |
---|
| 662 | Ref: N. J. Higham, "Numerical Analysis Report No. 336", Manchester Centre for Computational Mathematics, Manchester, England, January 1999<p> |
---|
| 663 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Adam Piatyszek </dd></dl> |
---|
| 664 | |
---|
| 665 | </div> |
---|
| 666 | </div><p> |
---|
| 667 | <a class="anchor" name="g27d79e239d0905bf6b720a1bb117f1de"></a><!-- doxytag: member="itpp::sqrtm" ref="g27d79e239d0905bf6b720a1bb117f1de" args="(const cmat &A)" --> |
---|
| 668 | <div class="memitem"> |
---|
| 669 | <div class="memproto"> |
---|
| 670 | <table class="memname"> |
---|
| 671 | <tr> |
---|
| 672 | <td class="memname"><a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a> itpp::sqrtm </td> |
---|
| 673 | <td>(</td> |
---|
| 674 | <td class="paramtype">const <a class="el" href="classitpp_1_1Mat.html#6fbac4b7184807da188e5b85d42f038b">cmat</a> & </td> |
---|
| 675 | <td class="paramname"> <em>A</em> </td> |
---|
| 676 | <td> ) </td> |
---|
| 677 | <td></td> |
---|
| 678 | </tr> |
---|
| 679 | </table> |
---|
| 680 | </div> |
---|
| 681 | <div class="memdoc"> |
---|
| 682 | |
---|
| 683 | <p> |
---|
| 684 | Square root of the complex square matrix <code>A</code>. |
---|
| 685 | <p> |
---|
| 686 | This function computes the matrix square root of the complex square matrix <code>A</code>. The implementation is based on the Matlab/Octave <code><a class="el" href="group__matrix__functions.html#g27d79e239d0905bf6b720a1bb117f1de" title="Square root of the complex square matrix A.">sqrtm()</a></code> function.<p> |
---|
| 687 | Ref: N. J. Higham, "Numerical Analysis Report No. 336", Manchester Centre for Computational Mathematics, Manchester, England, January 1999<p> |
---|
| 688 | <dl class="author" compact><dt><b>Author:</b></dt><dd>Adam Piatyszek </dd></dl> |
---|
| 689 | |
---|
| 690 | </div> |
---|
| 691 | </div><p> |
---|
| 692 | <a class="anchor" name="gfcf8f54c2f4fc257bbc3111700b08355"></a><!-- doxytag: member="itpp::sum" ref="gfcf8f54c2f4fc257bbc3111700b08355" args="(const Mat< T > &m, int dim=1)" --> |
---|
| 693 | <div class="memitem"> |
---|
| 694 | <div class="memproto"> |
---|
| 695 | <div class="memtemplate"> |
---|
| 696 | template<class T > </div> |
---|
| 697 | <table class="memname"> |
---|
| 698 | <tr> |
---|
| 699 | <td class="memname">Vec<T> itpp::sum </td> |
---|
| 700 | <td>(</td> |
---|
| 701 | <td class="paramtype">const Mat< T > & </td> |
---|
| 702 | <td class="paramname"> <em>m</em>, </td> |
---|
| 703 | </tr> |
---|
| 704 | <tr> |
---|
| 705 | <td class="paramkey"></td> |
---|
| 706 | <td></td> |
---|
| 707 | <td class="paramtype">int </td> |
---|
| 708 | <td class="paramname"> <em>dim</em> = <code>1</code></td><td> </td> |
---|
| 709 | </tr> |
---|
| 710 | <tr> |
---|
| 711 | <td></td> |
---|
| 712 | <td>)</td> |
---|
| 713 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 714 | </tr> |
---|
| 715 | </table> |
---|
| 716 | </div> |
---|
| 717 | <div class="memdoc"> |
---|
| 718 | |
---|
| 719 | <p> |
---|
| 720 | Sum of elements in the matrix <code>m</code>, either along columns or rows. |
---|
| 721 | <p> |
---|
| 722 | <code>sum(m) = sum(m, 1)</code> returns a vector where the elements are sum over each column, whereas <code>sum(m, 2)</code> returns a vector where the elements are sum over each row. |
---|
| 723 | <p>References <a class="el" href="mat_8h-source.html#l00241">itpp::Mat< Num_T >::cols()</a>, <a class="el" href="mat_8h-source.html#l00903">itpp::Mat< Num_T >::get_col()</a>, <a class="el" href="mat_8h-source.html#l00866">itpp::Mat< Num_T >::get_row()</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mat_8h-source.html#l00243">itpp::Mat< Num_T >::rows()</a>, and <a class="el" href="vec_8h-source.html#l00676">itpp::Vec< Num_T >::set_size()</a>.</p> |
---|
| 724 | |
---|
| 725 | <p>Referenced by <a class="el" href="emix_8cpp-source.html#l00114">bdm::egiwmix::approx()</a>, <a class="el" href="libPF_8cpp-source.html#l00007">bdm::PF::bayes()</a>, <a class="el" href="libKF_8h-source.html#l00415">bdm::MultiModel::bayes()</a>, <a class="el" href="channel_8cpp-source.html#l00829">itpp::Channel_Specification::calc_mean_excess_delay()</a>, <a class="el" href="channel_8cpp-source.html#l00835">itpp::Channel_Specification::calc_rms_delay_spread()</a>, <a class="el" href="ldpc_8cpp-source.html#l00598">itpp::LDPC_Parity_Unstructured::compute_CR()</a>, <a class="el" href="modulator__nd_8cpp-source.html#l00370">itpp::Modulator_NCD::demodulate_soft_bits()</a>, <a class="el" href="modulator__nd_8cpp-source.html#l00150">itpp::Modulator_NRD::demodulate_soft_bits()</a>, <a class="el" href="ldpc_8cpp-source.html#l00109">itpp::LDPC_Parity::display_stats()</a>, <a class="el" href="error__counters_8cpp-source.html#l00076">itpp::BERC::estimate_delay()</a>, <a class="el" href="emix_8h-source.html#l00120">bdm::emix::evallog()</a>, <a class="el" href="filter_8cpp-source.html#l00243">itpp::fir1()</a>, <a class="el" href="libEF_8h-source.html#l00317">bdm::multiBM::flatten()</a>, <a class="el" href="ldpc_8cpp-source.html#l00667">itpp::LDPC_Parity_Regular::generate()</a>, <a class="el" href="channel_8cpp-source.html#l00290">itpp::Rice_Fading_Generator::generate()</a>, <a class="el" href="ldpc_8cpp-source.html#l00462">itpp::LDPC_Parity_Unstructured::generate_random_H()</a>, <a class="el" href="specmat_8cpp-source.html#l00261">itpp::house()</a>, <a class="el" href="libDC_8cpp-source.html#l00200">ldmat::ldform()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00596">itpp::MOG_generic::lhood_internal()</a>, <a class="el" href="mog__diag_8cpp-source.html#l00133">itpp::MOG_diag::lhood_internal()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00561">itpp::MOG_generic::log_lhood_internal()</a>, <a class="el" href="mog__diag_8cpp-source.html#l00080">itpp::MOG_diag::log_lhood_internal()</a>, <a class="el" href="libEF_8h-source.html#l00262">bdm::eDirich::lognc()</a>, <a class="el" href="libEF_8cpp-source.html#l00044">bdm::egiw::lognc()</a>, <a class="el" href="merger_8cpp-source.html#l00007">bdm::merger::lognorm_merge()</a>, <a class="el" href="misc__stat_8cpp-source.html#l00036">itpp::mean()</a>, <a class="el" href="libEF_8h-source.html#l00254">bdm::eDirich::mean()</a>, <a class="el" href="merger_8cpp-source.html#l00033">bdm::merger::merge()</a>, <a class="el" href="mog__diag__em_8cpp-source.html#l00084">itpp::MOG_diag_EM_sup::ml_update_params()</a>, <a class="el" href="modulator__nd_8cpp-source.html#l00347">itpp::Modulator_NCD::modulate_bits()</a>, <a class="el" href="modulator__nd_8cpp-source.html#l00127">itpp::Modulator_NRD::modulate_bits()</a>, <a class="el" href="misc__stat_8cpp-source.html#l00105">itpp::norm()</a>, <a class="el" href="libDC_8cpp-source.html#l00156">ldmat::qform()</a>, <a class="el" href="integration_8cpp-source.html#l00071">itpp::quad()</a>, <a class="el" href="emix_8cpp-source.html#l00053">bdm::egiwmix::set_parameters()</a>, <a class="el" href="emix_8cpp-source.html#l00005">bdm::emix::set_parameters()</a>, <a class="el" href="libEF_8cpp-source.html#l00313">bdm::eEmp::set_samples()</a>, <a class="el" href="libEF_8cpp-source.html#l00301">bdm::eEmp::set_statistics()</a>, <a class="el" href="mog__generic_8cpp-source.html#l00314">itpp::MOG_generic::setup_weights()</a>, <a class="el" href="modulator__nd_8cpp-source.html#l00709">itpp::ND_UPAM::sphere_decoding()</a>, <a class="el" href="svec_8h-source.html#l00823">itpp::Sparse_Vec< T >::sqr()</a>, <a class="el" href="libDC_8cpp-source.html#l00080">ldmat::to_mat()</a>, <a class="el" href="matfunc_8h-source.html#l00762">itpp::trace()</a>, <a class="el" href="misc__stat_8cpp-source.html#l00159">itpp::variance()</a>, <a class="el" href="libEF_8h-source.html#l00255">bdm::eDirich::variance()</a>, and <a class="el" href="sigfun_8cpp-source.html#l00157">itpp::xcorr()</a>.</p> |
---|
| 726 | |
---|
| 727 | </div> |
---|
| 728 | </div><p> |
---|
| 729 | <a class="anchor" name="g4c81137a6b9b989a0c5a36972885c1e6"></a><!-- doxytag: member="itpp::sum_sqr" ref="g4c81137a6b9b989a0c5a36972885c1e6" args="(const Mat< T > &m, int dim=1)" --> |
---|
| 730 | <div class="memitem"> |
---|
| 731 | <div class="memproto"> |
---|
| 732 | <div class="memtemplate"> |
---|
| 733 | template<class T > </div> |
---|
| 734 | <table class="memname"> |
---|
| 735 | <tr> |
---|
| 736 | <td class="memname">Vec<T> itpp::sum_sqr </td> |
---|
| 737 | <td>(</td> |
---|
| 738 | <td class="paramtype">const Mat< T > & </td> |
---|
| 739 | <td class="paramname"> <em>m</em>, </td> |
---|
| 740 | </tr> |
---|
| 741 | <tr> |
---|
| 742 | <td class="paramkey"></td> |
---|
| 743 | <td></td> |
---|
| 744 | <td class="paramtype">int </td> |
---|
| 745 | <td class="paramname"> <em>dim</em> = <code>1</code></td><td> </td> |
---|
| 746 | </tr> |
---|
| 747 | <tr> |
---|
| 748 | <td></td> |
---|
| 749 | <td>)</td> |
---|
| 750 | <td></td><td></td><td><code> [inline]</code></td> |
---|
| 751 | </tr> |
---|
| 752 | </table> |
---|
| 753 | </div> |
---|
| 754 | <div class="memdoc"> |
---|
| 755 | |
---|
| 756 | <p> |
---|
| 757 | Sum of the square of elements in the matrix <code>m</code>. |
---|
| 758 | <p> |
---|
| 759 | <code>sum(m) = sum(m, 1)</code> returns a vector where the elements are sum squared over each column, whereas <code>sum(m, 2)</code> returns a vector where the elements are sum squared over each row |
---|
| 760 | <p>References <a class="el" href="mat_8h-source.html#l00241">itpp::Mat< Num_T >::cols()</a>, <a class="el" href="mat_8h-source.html#l00903">itpp::Mat< Num_T >::get_col()</a>, <a class="el" href="mat_8h-source.html#l00866">itpp::Mat< Num_T >::get_row()</a>, <a class="el" href="itassert_8h-source.html#l00094">it_assert</a>, <a class="el" href="mat_8h-source.html#l00243">itpp::Mat< Num_T >::rows()</a>, and <a class="el" href="vec_8h-source.html#l00676">itpp::Vec< Num_T >::set_size()</a>.</p> |
---|
| 761 | |
---|
| 762 | <p>Referenced by <a class="el" href="channel_8cpp-source.html#l01156">itpp::TDL_Channel::calc_mean_excess_delay()</a>, <a class="el" href="channel_8cpp-source.html#l01161">itpp::TDL_Channel::calc_rms_delay_spread()</a>, and <a class="el" href="merger_8cpp-source.html#l00033">bdm::merger::merge()</a>.</p> |
---|
| 763 | |
---|
| 764 | </div> |
---|
| 765 | </div><p> |
---|
| 766 | </div> |
---|
| 767 | <hr size="1"><address style="text-align: right;"><small>Generated on Tue Jun 2 10:02:14 2009 for mixpp by |
---|
| 768 | <a href="http://www.doxygen.org/index.html"> |
---|
| 769 | <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address> |
---|
| 770 | </body> |
---|
| 771 | </html> |
---|