Mercurial > hg > segmenter-vamp-plugin
annotate armadillo-3.900.4/include/armadillo_bits/fn_speye.hpp @ 49:1ec0e2823891
Switch to using subrepo copies of qm-dsp, nnls-chroma, vamp-plugin-sdk; update Armadillo version; assume build without external BLAS/LAPACK
author | Chris Cannam |
---|---|
date | Thu, 13 Jun 2013 10:25:24 +0100 |
parents | |
children |
rev | line source |
---|---|
Chris@49 | 1 // Copyright (C) 2012 Conrad Sanderson |
Chris@49 | 2 // Copyright (C) 2012 Ryan Curtin |
Chris@49 | 3 // |
Chris@49 | 4 // This Source Code Form is subject to the terms of the Mozilla Public |
Chris@49 | 5 // License, v. 2.0. If a copy of the MPL was not distributed with this |
Chris@49 | 6 // file, You can obtain one at http://mozilla.org/MPL/2.0/. |
Chris@49 | 7 |
Chris@49 | 8 |
Chris@49 | 9 //! \addtogroup fn_speye |
Chris@49 | 10 //! @{ |
Chris@49 | 11 |
Chris@49 | 12 |
Chris@49 | 13 |
Chris@49 | 14 //! Generate a sparse matrix with the values along the main diagonal set to one |
Chris@49 | 15 template<typename obj_type> |
Chris@49 | 16 inline |
Chris@49 | 17 obj_type |
Chris@49 | 18 speye(const uword n_rows, const uword n_cols, const typename arma_SpMat_SpCol_SpRow_only<obj_type>::result* junk = NULL) |
Chris@49 | 19 { |
Chris@49 | 20 arma_extra_debug_sigprint(); |
Chris@49 | 21 arma_ignore(junk); |
Chris@49 | 22 |
Chris@49 | 23 obj_type out; |
Chris@49 | 24 |
Chris@49 | 25 out.eye(n_rows, n_cols); |
Chris@49 | 26 |
Chris@49 | 27 return out; |
Chris@49 | 28 } |
Chris@49 | 29 |
Chris@49 | 30 |
Chris@49 | 31 |
Chris@49 | 32 // Convenience shortcut method (no template parameter necessary) |
Chris@49 | 33 inline |
Chris@49 | 34 sp_mat |
Chris@49 | 35 speye(const uword n_rows, const uword n_cols) |
Chris@49 | 36 { |
Chris@49 | 37 arma_extra_debug_sigprint(); |
Chris@49 | 38 |
Chris@49 | 39 sp_mat out; |
Chris@49 | 40 |
Chris@49 | 41 out.eye(n_rows, n_cols); |
Chris@49 | 42 |
Chris@49 | 43 return out; |
Chris@49 | 44 } |
Chris@49 | 45 |
Chris@49 | 46 |
Chris@49 | 47 |
Chris@49 | 48 //! @} |