| arma_version.hpp | | arma_version.hpp | |
| | | | |
| skipping to change at line 18 | | skipping to change at line 18 | |
| // Lesser General Public License (LGPL) as published | | // Lesser General Public License (LGPL) as published | |
| // by the Free Software Foundation, either version 3 | | // by the Free Software Foundation, either version 3 | |
| // of the License or (at your option) any later version. | | // of the License or (at your option) any later version. | |
| // (see http://www.opensource.org/licenses for more info) | | // (see http://www.opensource.org/licenses for more info) | |
| | | | |
| //! \addtogroup arma_version | | //! \addtogroup arma_version | |
| //! @{ | | //! @{ | |
| | | | |
| #define ARMA_VERSION_MAJOR 3 | | #define ARMA_VERSION_MAJOR 3 | |
| #define ARMA_VERSION_MINOR 0 | | #define ARMA_VERSION_MINOR 0 | |
|
| #define ARMA_VERSION_PATCH 2 | | #define ARMA_VERSION_PATCH 3 | |
| #define ARMA_VERSION_NAME "Antarctic Chilli Ranch" | | #define ARMA_VERSION_NAME "Antarctic Chilli Ranch" | |
| | | | |
| struct arma_version | | struct arma_version | |
| { | | { | |
| static const unsigned int major = ARMA_VERSION_MAJOR; | | static const unsigned int major = ARMA_VERSION_MAJOR; | |
| static const unsigned int minor = ARMA_VERSION_MINOR; | | static const unsigned int minor = ARMA_VERSION_MINOR; | |
| static const unsigned int patch = ARMA_VERSION_PATCH; | | static const unsigned int patch = ARMA_VERSION_PATCH; | |
| | | | |
| static | | static | |
| inline | | inline | |
| | | | |
End of changes. 1 change blocks. |
| 1 lines changed or deleted | | 1 lines changed or added | |
|
| auxlib_meat.hpp | | auxlib_meat.hpp | |
| | | | |
| skipping to change at line 1392 | | skipping to change at line 1392 | |
| eigval.set_size(A_n_rows); | | eigval.set_size(A_n_rows); | |
| l_eigvec.set_size(A_n_rows, A_n_rows); | | l_eigvec.set_size(A_n_rows, A_n_rows); | |
| r_eigvec.set_size(A_n_rows, A_n_rows); | | r_eigvec.set_size(A_n_rows, A_n_rows); | |
| | | | |
| podarray<T> work( static_cast<uword>(lwork) ); | | podarray<T> work( static_cast<uword>(lwork) ); | |
| podarray<T> rwork( static_cast<uword>((std::max)(blas_int(1), 3*n_rows)
) ); | | podarray<T> rwork( static_cast<uword>((std::max)(blas_int(1), 3*n_rows)
) ); | |
| | | | |
| podarray<T> wr(A_n_rows); | | podarray<T> wr(A_n_rows); | |
| podarray<T> wi(A_n_rows); | | podarray<T> wi(A_n_rows); | |
| | | | |
|
| Mat<T> A_copy = A; | | | |
| blas_int info = 0; | | blas_int info = 0; | |
| | | | |
| arma_extra_debug_print("lapack::geev()"); | | arma_extra_debug_print("lapack::geev()"); | |
|
| lapack::geev(&jobvl, &jobvr, &n_rows, A_copy.memptr(), &lda, wr.memptr(
), wi.memptr(), l_eigvec.memptr(), &n_rows, r_eigvec.memptr(), &n_rows, wor
k.memptr(), &lwork, &info); | | lapack::geev(&jobvl, &jobvr, &n_rows, A.memptr(), &lda, wr.memptr(), wi
.memptr(), l_eigvec.memptr(), &n_rows, r_eigvec.memptr(), &n_rows, work.mem
ptr(), &lwork, &info); | |
| | | | |
| eigval.set_size(A_n_rows); | | eigval.set_size(A_n_rows); | |
| for(uword i=0; i<A_n_rows; ++i) | | for(uword i=0; i<A_n_rows; ++i) | |
| { | | { | |
| eigval[i] = std::complex<T>(wr[i], wi[i]); | | eigval[i] = std::complex<T>(wr[i], wi[i]); | |
| } | | } | |
| | | | |
| return (info == 0); | | return (info == 0); | |
| } | | } | |
| #else | | #else | |
| | | | |
End of changes. 2 change blocks. |
| 2 lines changed or deleted | | 1 lines changed or added | |
|
| fn_elem.hpp | | fn_elem.hpp | |
|
| // Copyright (C) 2008-2011 NICTA (www.nicta.com.au) | | // Copyright (C) 2008-2012 NICTA (www.nicta.com.au) | |
| // Copyright (C) 2008-2011 Conrad Sanderson | | // Copyright (C) 2008-2012 Conrad Sanderson | |
| // | | // | |
| // This file is part of the Armadillo C++ library. | | // This file is part of the Armadillo C++ library. | |
| // It is provided without any warranty of fitness | | // It is provided without any warranty of fitness | |
| // for any purpose. You can redistribute this file | | // for any purpose. You can redistribute this file | |
| // and/or modify it under the terms of the GNU | | // and/or modify it under the terms of the GNU | |
| // Lesser General Public License (LGPL) as published | | // Lesser General Public License (LGPL) as published | |
| // by the Free Software Foundation, either version 3 | | // by the Free Software Foundation, either version 3 | |
| // of the License or (at your option) any later version. | | // of the License or (at your option) any later version. | |
| // (see http://www.opensource.org/licenses for more info) | | // (see http://www.opensource.org/licenses for more info) | |
| | | | |
| | | | |
| skipping to change at line 87 | | skipping to change at line 87 | |
| arma_extra_debug_sigprint(); | | arma_extra_debug_sigprint(); | |
| | | | |
| return mtOpCube<typename T1::pod_type, T1, op_real>( X.get_ref() ); | | return mtOpCube<typename T1::pod_type, T1, op_real>( X.get_ref() ); | |
| } | | } | |
| | | | |
| // | | // | |
| // imag | | // imag | |
| | | | |
| template<typename T1> | | template<typename T1> | |
| inline | | inline | |
|
| const Gen<typename T1::pod_type, gen_zeros> | | const Gen< Mat<typename T1::pod_type>, gen_zeros > | |
| imag(const Base<typename T1::pod_type,T1>& X) | | imag(const Base<typename T1::pod_type,T1>& X) | |
| { | | { | |
| arma_extra_debug_sigprint(); | | arma_extra_debug_sigprint(); | |
| | | | |
| const Proxy<T1> A(X.get_ref()); | | const Proxy<T1> A(X.get_ref()); | |
| | | | |
|
| return Gen<typename T1::pod_type, gen_zeros>(A.get_n_rows(), A.get_n_cols
()); | | return Gen< Mat<typename T1::pod_type>, gen_zeros>(A.get_n_rows(), A.get_
n_cols()); | |
| } | | } | |
| | | | |
| template<typename T1> | | template<typename T1> | |
| inline | | inline | |
| const GenCube<typename T1::pod_type, gen_zeros> | | const GenCube<typename T1::pod_type, gen_zeros> | |
| imag(const BaseCube<typename T1::pod_type,T1>& X) | | imag(const BaseCube<typename T1::pod_type,T1>& X) | |
| { | | { | |
| arma_extra_debug_sigprint(); | | arma_extra_debug_sigprint(); | |
| | | | |
| const ProxyCube<T1> A(X.get_ref()); | | const ProxyCube<T1> A(X.get_ref()); | |
| | | | |
End of changes. 3 change blocks. |
| 4 lines changed or deleted | | 4 lines changed or added | |
|
| unwrap.hpp | | unwrap.hpp | |
| | | | |
| skipping to change at line 106 | | skipping to change at line 106 | |
| | | | |
| inline unwrap(const Col<eT>& A) | | inline unwrap(const Col<eT>& A) | |
| : M(A) | | : M(A) | |
| { | | { | |
| arma_extra_debug_sigprint(); | | arma_extra_debug_sigprint(); | |
| } | | } | |
| | | | |
| const Col<eT>& M; | | const Col<eT>& M; | |
| }; | | }; | |
| | | | |
|
| template<typename eT> | | | |
| class unwrap< subview_col<eT> > | | | |
| { | | | |
| public: | | | |
| | | | |
| inline unwrap(const subview_col<eT>& A) | | | |
| : M( const_cast<eT*>( A.colptr(0) ), A.n_rows, 1, false, false ) | | | |
| { | | | |
| arma_extra_debug_sigprint(); | | | |
| } | | | |
| | | | |
| const Mat<eT> M; | | | |
| }; | | | |
| | | | |
| template<typename out_eT, typename T1, typename T2, typename glue_type> | | template<typename out_eT, typename T1, typename T2, typename glue_type> | |
| class unwrap< mtGlue<out_eT, T1, T2, glue_type> > | | class unwrap< mtGlue<out_eT, T1, T2, glue_type> > | |
| { | | { | |
| public: | | public: | |
| | | | |
| inline unwrap(const mtGlue<out_eT, T1, T2, glue_type>& A) | | inline unwrap(const mtGlue<out_eT, T1, T2, glue_type>& A) | |
| : M(A) | | : M(A) | |
| { | | { | |
| arma_extra_debug_sigprint(); | | arma_extra_debug_sigprint(); | |
| } | | } | |
| | | | |
| skipping to change at line 248 | | skipping to change at line 234 | |
| | | | |
| if(M_local) { delete M_local; } | | if(M_local) { delete M_local; } | |
| } | | } | |
| | | | |
| // the order below is important | | // the order below is important | |
| const Col<eT>* M_local; | | const Col<eT>* M_local; | |
| const Col<eT>& M; | | const Col<eT>& M; | |
| | | | |
| }; | | }; | |
| | | | |
|
| template<typename eT> | | | |
| class unwrap_check< subview_col<eT> > | | | |
| { | | | |
| public: | | | |
| | | | |
| inline | | | |
| unwrap_check(const subview_col<eT>& A, const Mat<eT>& B) | | | |
| : M( const_cast<eT*>( A.colptr(0) ), A.n_rows, 1, (&(A.m) == &B), false | | | |
| ) | | | |
| { | | | |
| arma_extra_debug_sigprint(); | | | |
| } | | | |
| | | | |
| const Mat<eT> M; | | | |
| }; | | | |
| | | | |
| // | | // | |
| // | | // | |
| // | | // | |
| | | | |
| template<typename T1> | | template<typename T1> | |
| class unwrap_check_mixed | | class unwrap_check_mixed | |
| { | | { | |
| public: | | public: | |
| | | | |
| typedef typename T1::elem_type eT1; | | typedef typename T1::elem_type eT1; | |
| | | | |
End of changes. 2 change blocks. |
| 30 lines changed or deleted | | 0 lines changed or added | |
|